Tìm hiểu các mã lệnh cơ bản trong Flash 8
Tìm hiểu các mã lệnh cơ bản trong Flash 8
Mã lệnh ActionScript (code AS) là một dạng ngôn ngữ lập trình được xây dựng trong
Flash. bạn cũng có thể hiểu AS như các câu lệnh đơn giản bằng tiếng Anh.
Đối với AS thì đã được phát triển rất nhiều trong vài năm trở lại đây với việc ra dời
của AS3 dùng trong Flash CS, nhưng trong bài này tôi chỉ xin giới thiệu một vài nét
cơ bản về code AS2 được sử dụng trong Flash8 mà thôi.
Thứ nhất, ta cần biết là AS sẽ được viết ở đâu? Có 3 nơi chúng ta có thể viết
AS, là:
-Trên TimeLine, ở bất kỳ Frame nào, sau khi viết Frame sẽ có dạng .
-Trên nút (button), có AS thì nút mới có ý nghĩa trong tương tác, nút chỉ hoạt động
khi có chuột hoặc bàn phím tác động lên nó mà thôi.
-Trên đoạn phim (MovieClip), hoạt động của MC sẽ rất đa dạng nếu được kèm
theo AS, có thể xem đây là đối tượng chính mà ta thường xuyên viết AS.
Thứ hai, ta cần biết là viết AS như thế nào? Để viết AS thì rất đơn giản, bạn
chọn nơi mà mình dự định sẽ viết AS (có thể là một Frame trên TimeLine, một nút
hay một MC). Tiếp đó, bạn mở bảng Actions (mặc định nằm trên bảng Properties,
phím tắt F9) rồi viết AS vào vùng trắng bên phải.
Bên trái là các mã lệnh có sẵn của Flash 8, bạn có thể tham khảo nếu quên mã lệnh.
Thứ ba, ta sẽ tìm hiểu một vài AS cơ bản.
- Cấu trúc cú pháp của một câu lệnh nói chung thì gồm 3 phần chính :
Key Word ( Event ) { Actions } ;
Tạm dịch là : Từ khóa ( Sự kiện ) { Hành động } ;
Một câu lệnh thường kết thúc bằng dấu (;). Nếu bạn thấy một câu nào đó nằm sau
dấu // thì nó được xem như lời chú thích cho phần code AS mà tác giả vừa viết
nhằm giúp cho người đọc dễ hiểu, nó không được máy tính xem như mã lệnh và sẽ
không thực hiện.
- Đối với AS trên TimeLine thì bạn sẽ ra lệnh trực tiếp cho TimeLine thực hiện một
hành động nào đó tại một Frame mà bạn mong muốn, không cần thông qua từ khóa
hay sự kiện nào cả. Một số code thường dùng hành động trên TimeLine như :
gotoAndPlay (n) ; // khi tới frame này thì sẽ nhảy đến tự động chạy từ frame thứ n.
gotoAndStop (m,n) ; // nhảy đến và dừng tại frame thứ n của phân cảnh thứ m.
// đây chỉ là 2 cách nhảy frame, mỗi câu lệnh đều có thể dùng 1 trong 2 cách nhảy
như trên.
play (); // chạy frame này.
stop (); // dừng tại frame này.
nextFrame (); // tiến tới frame tiếp theo.
prevFrame (); // lùi lại frame trước đó.
nextScene (); // tiến tới phân cảnh tiếp theo.
prevScene (); // lùi lại phân cảnh trước đó.
stopAllSounds (); // dừng chơi mọi âm thanh tại frame này.
- Đối với AS trên nút thì ta thường có câu lệnh dạng: on (sự kiện) { hành động } ;
tức là sau sự kiện nào đó thì hành động trong {} sẽ được thực hiện. Một số code
dùng trên nút là:
on (press) { hành động giống trên TimeLine }; // press là sự kiện nhấn chuột lên nút.
on (release) { hành động giống trên TimeLine }; // release là sự kiện nhấn chuột lên
nút và sau khi thả chuột thì hành động sẽ được thực hiện.
- Đối với AS trên MC thì ta thường có câu lệnh dạng: onClipEvent (sự kiện) {hành
động};
Một số sự kiện dùng trên MC là: load (khi MC chạy), enterFrame (khi đoạn phim
Flash bắt đầu chạy), mouseDown (nhấn chuột lên MC), mouseMove (di chuyển
chuột), mouseUp (để chuột trên MC)…
Một số hành động trên MC như: starDrag (bắt đầu có thể nhấn và kéo MC), stopDrag
(dừng nhấn và kéo MC), this._x (cho biết tọa độ x của MC), this._y (cho biết tọa độ y
của MC), this._rotation = r (hành động quay MC một góc r nào đó), this._rotation +=
V (quay MC theo một tốc độ V nào đó), this._alpha = a (thể hiện độ mờ của MC theo
tỉ lệ a% với 0< a <100), this._visible = v (thể hiện độ trong suốt của MC theo tì lệ v
nào đó, với 0<v<1).
Kết hợp sự kiện và hành động vào cú pháp ở trên ta sẽ có những đoạn code trên
MC như ý.
Ngoài ra bạn cũng có thể điều khiển MC hay nút bằng cách viết mã lệnh trên
TimeLine.
-Một số lệnh khác như: lệnh If (điều kiện ràng buộc) {hành động} , lệnh
_root._xmouse hay _root._ymouse để lấy tọa độ chuột, một số phép toán …
Để kết thúc bài viết, tôi và các bạn hãy cùng làm một số thí dụ đơn giản để
làm sáng tỏ hơn phần lí thuyết đã nói ở trên nhé.
B1: Tạo MC là một hình tròn. Tạo cho nó một chuyển động khoảng 2s, đi từ mép trái
(frame 1) vào giữa (frame 13) và từ giữa ra mép phải (frame 25).
B2: Chọn frame đầu rồi nhấn F9 để mở bảng Actions, đánh lệnh dừng ở frame 1:
stop () ;
B3: Chọn frame cuối, đánh lệnh ở frame 25: gotoAndPlay (13) ;
B4: Tạo 3 nút màu đỏ, vàng, xanh và viết các mã lệnh:
// nút xanh
on (release) {
play () ;
}
// nút đỏ
on (release) {
prevFrame () ;
}
// nút vàng
on (release) {
nextFrame () ;
}
Bây giờ bạn nhấn Ctrl + enter để chạy thử và tương tác xem sao. Rất mong được sự
góp ý của các bạn. Chúc thành công và vui vẻ trong công việc.