Trong trò chơi “bắt sao biển” đang thực hiện, mỗi khi cá bắt kịp con trỏ chuột, cá yêu cầu sao biển cho điểm của người chơi trở về trị số 0. Tuy nhiên, vào lúc ấy người chơi không kịp chú ý rằng mình đã đạt được bao nhiêu điểm. Đối với người chơi, điều quan trọng là ghi nhớ điểm cao nhất mà họ đạt được sau nhiều lần chơi. Do vậy, bên trong sao biển, ta nên tạo thêm một biến để ghi nhớ điểm cao nhất đạt được.
Cụ thể, bạn bấm vào sao biển trên sân khấu, mở bảng Actions và viết thêm vào chương trình của sao biển như sau:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | onClipEvent(load) { score = 0 ; highscore = 0 ; } onClipEvent(mouseDown) { if (hitTest(_root._xmouse, _root._ymouse, true )) { _x = _root.getRandomX(); _y = _root.getRandomY(); score++; if (score > highscore) highscore = score; trace( "Điểm: " + score); _root.fish.step++; } } |
Trong hàm onClipEvent(load), ta tạo ra biến mới highscore với trị ban đầu là 0. Sau mỗi lần tăng điểm cho người chơi, ta đều xét xem điểm mới có cao hơn trị số của biến highscore hay không. Nếu cao hơn, ta gán điểm mới cho biến highscore. Khi biến score trở về trị số 0, biến highscore vẫn lưu giữ điểm cao nhất của người chơi.
Bạn hãy đóng bảng Actions. Việc cần làm tiếp theo là hiển thị điểm cao nhất của người chơi. Với công cụ chọn trong tay, bạn căng khung chọn bao quanh hai khung chữ hiện có (một khung chữ tĩnh có dòng chữ SCORE và một khung chữ động hiển thị trị số của biến score) và ấn Ctrl+C để sao chép. Bạn ấn Ctrl+V để dán bản sao vào sân khấu, bấm kép vào khung chữ SCORE, sửa nội dung thành HIGHSCORE. Bấm vào khung chữ động kế bên, mở bảng Properties, bạn sửa nội dung trong ô Var thành _root.star.highscore và gõ Enter (hình 1). Nhờ vậy, khung chữ động mới sẽ hiển thị trị số của biến highscore.
Bạn nên chạy chương trình ngay để biết chắc khung chữ động mới hoạt động tốt như mong muốn. Bạn có thể rủ rê người khác tranh tài cùng bạn, xem ai đạt điểm highscore cao hơn trong năm phút chẳng hạn.
Khi trò chơi đã chạy tốt, bạn có thể bước qua giai đoạn chăm chút “ngoại hình”. Ta bắt đầu với việc “tút lại vẻ đẹp giai” của sao biển. Bạn bấm kép vào sao biển để chuyển qua chế độ chỉnh sửa nhân vật sao biển. Muốn lấy tầm nhìn gần cho tiện việc “tân trang”, bạn chọn công cụ Zoom Tool (hoặc gõ phím Z) và bấm vào sao biển vài lần. Nếu lỡ nhìn quá gần, bạn chọn Reduce ở hộp công cụ và bấm vào sao biển để “lui ra xa”.
Bạn “cầm lấy” công cụ chọn , bấm vào đâu đó bên ngoài sao biển để “thôi chọn” sao biển. Đưa con trỏ chuột vào một cạnh của sao biển, bạn thấy con trỏ chuột đổi dạng , tỏ ý sẵn sàng giúp bạn chỉnh sửa đường nét của sao biển. Bạn nắm kéo cạnh sao biển để uốn cong tùy ý (hình 2). Thật tuyệt! Cứ thế, bạn uốn cong mọi cạnh của hình sao khô cứng ban đầu để có được đường nét mềm mại.
Khi đã hài lòng về hình dạng sao biển, bạn bấm kép vào dòng chữ Layer 1 ở bảng Timeline , gõ tên Thân . Thao tác đổi tên lớp như vậy giúp bạn nhớ rằng lớp đang xét chứa thân của sao biển. Bạn bấm vào dấu chấm bên dưới hình ổ khóa để lớp Thân được “khóa cứng”, không thể chỉnh sửa.
Bạn tạo lớp mới Layer 2 bằng cách bấm vào biểu tượng Insert Layer , rồi đổi tên Layer 2 thành Mắt, ngụ ý rằng lớp mới sẽ được dùng để chứa… mắt của sao biển.
Vẽ mắt rất dễ, bạn chọn công cụ Oval Tool , bấm vào ô Fill Color , chọn màu tô là màu đen và vẽ ra một hình tròn nhỏ. Bạn bấm vào công cụ chọn , căng khung chọn bao quanh hình tròn đen vừa vẽ, ấn Ctrl+C để sao chép, rồi ấn Ctrl+V để dán bản sao vào lớp Mắt. Bạn lần lượt kéo hai hình tròn đen vào giữa sao biển, tạo nên cặp mắt.
Bạn khóa lớp Mắt, tạo lớp mới mang tên Miệng. Bạn vẽ một hình ô-van dẹt bên dưới cặp mắt của sao biển, dùng công cụ chọn để chỉnh dạng ô-van, tạo nên “miệng cười xinh” (hình 2).
Xong xuôi, bạn bấm vào mục Scene 1 để thoát khỏi chế độ chỉnh sửa nhân vật sao biển, trở về với sân khấu. Bạn đừng quên ấn Ctrl+S để lưu lại “thành quả” của mình.
Theo echip.com
Đọc thêm : Tổng hợp 31 bài tự học lập trình Flash
0 nhận xét:
Đăng nhận xét