[Hướng Dẫn] Các event của object

Focker_cFocker_c Posts: 1,577Registered
edited July 2019 in Game Maker: Studio
Các event của object
Mình xin giới thiệu qua các event của 1 object trong GME.
Các bạn đơn giản hiểu rằng, event là 1 sự kiện sẽ xảy ra trong game. Và ta phải tùy theo tình huống event để đặt ra các action cụ thể.
Create
Xảy ra khi object được tạo ra.
Thường được sử dụng để thiết lập biến cho object.
Ví dụ : Khi muốn xài cái var "lượng đạn". Thì ở event create ta phải thiết lập var này trước đã.
luong_dan=10 chẳng hạn
Destroy
Xảy ra khi object này bị phá hủy.
Ví dụ : Nhiệm vụ là kill con boss Dang_Khoa.
Vì thế, khi object Dang_Khoa bị chết (destroy) thì hoàn thành nhiệm vụ. Thay đổi biến với script :
hoan_thanh_nvu=true
Alarm
Đồng hồ hẹn giờ. Bạn chỉ được sử dụng 10 alarm trong 1 obj
Khi ở 1 event khác, bạn có cài 1 alarm với 1 thời gian nhất định.
Đến khi chạy được đủ thời gian đó, các action cho event alarm đó sẽ xảy ra.
Ví dụ : Trong obj_meodenluoi , tại event create , ta đặt alarm 1 với thời gian 30 giây.
alarm[1] = 30
Và trong event alarm 1 , ta đặt script :
instance_destroy()
có tác dụng phá hủy object này..
Như vậy, sau 30 giây được tạo ra, Mèo Đen Lười sẽ bị destroy và biến mất ^^
Collision
Event này xảy ra khi obj này va chạm vật lý với 1 obj khác.
Các bạn click vào và chọn đối tượng va chạm cho phù hợp.
Ví dụ : Trong event va chạm giữa 2 object Dang_Khoa và Sanggameboy. Ta cho cả 2 obj này đều bị destroy.
Như vậy , nếu obj Dang_Khoa mà va vào obj Sanggameboy (hoặc ngược lại) thì cả 2 obj này đều bị phá hủy và biến mất. ^^
Draw
Event này luôn xảy ra và được sử dụng để vẽ.
Chủ tại event này, chúng ta sử dụng các script bằng đầu bằng draw_... . Như :
draw_sprite(...)
draw_text(...)
draw_background(...)
Ví dụ : Mình đặt script này vào trong event draw:
draw_text(20,40,'Mình biết thừa [where?] là đứa nào')
Thì ở tọa độ (20,40) trong room sẽ hiện dòng chữ : Mình biết thừa [where?] là đứa nào .
Keyboard - Mouse
Event xảy ra khi người chơi sử dụng đến 1 phím nào đó hoặc 1 click chuột. Chúng ta cũng ấn vào và chọn phím-chuột cho phù hợp.
Một điều mà có thể bạn chưa biết là có event xảy ra khi bạn ko ấn phím nào , không click chuột nào.
Ví dụ : Mình đặt script này vào event [No key] của object Netro :
hspeed=0
vspeed=0
Như vậy, khi chúng ta ko ấn nút nào trên bàn phím, obj Netro sẽ đứng in và đờ mặt ra như vừa bị thông xong. ^^
Step
Event có lẽ được dùng nhiều nhất nếu bạn chuộng script.
Với event này, bạn hầu như còn có thể thay thế được những event khác.
Đơn giản bạn hiểu là event Step là event xảy ra mỗi "bước đi" của game. Nó sẽ liên tục xảy ra.
Ví dụ : Tại event step của obj AT_David_DF , mình đặt script :
vspeed -= 2
Như thế, vspeed cứ giảm dần , giảm dần, dẫn đến việc obj AT_David_DF sẽ bay thẳng lên giời để hỏi : Lấy tiền cho gái có đòi đc ko . ^^
Other
Những event khác đều đc tổng hợp tại đây. Mà cơ bản hay được xài chính là :
-Outside room : Khi obj ra khỏi map (ra khỏi rồi thì cho nó destroy chẳng hạn)
-Game start : Khi bắt đầu game (thiết lập những var mà xài nhiều lần chẳng hạn)
-Room start/end : Khi bắt đầu vào hoặc rời khỏi room.
-Animation end : Khi đã chạy hết các hình trong sprite. (Thường được dùng khi bạn có 1 cái object là sprite effect nổ. Khi hiện hết sprite, tức là nổ xong, thì cho destroy effect này luôn)
«1

Comments

Sign In or Register to comment.