======Kịch bản Cơ chế nhảy hai lần======
====Chức năng====
* Script này giúp quản lý cơ chế nhảy của người chơi trong game. Nó theo dõi trạng thái chuyển động của người chơi để quyết định khi nào họ có thể nhảy thêm một lượt trên không trung và thực hiện thao tác nhảy khi nhấn phím.
====Ứng dụng====
* Tạo cơ chế đặc biệt trong bản đồ.
* Gameplay nâng cao: Kết hợp với các sự kiện và hành động khác để thiết kế bản đồ và chức năng tùy chỉnh.
----
====Quản lý trạng thái nhảy của người chơi====
local playerCanJump = {}
* Biến playerCanJump là một bảng (table) dùng để lưu trạng thái nhảy của từng người chơi, được xác định bằng uid người chơi đó.
----
====Xử lý thay đổi trạng thái chuyển động của người chơi====
local function onPlayerMotionChange(event)
if event.playermotion == 4 then
playerCanJump[event.eventobjid] = true
elseif event.playermotion == 32 then
playerCanJump[event.eventobjid] = false
end
end
ScriptSupportEvent:registerEvent("Player.MotionStateChange", onPlayerMotionChange)
**Hàm onPlayerMotionChange theo dõi sự kiện thay đổi trạng thái chuyển động của người chơi:**\\
* Khi trạng thái playermotion là 4 (người chơi nhảy lên), người chơi có thể thực hiện thêm hành động nhảy (true).
* Khi trạng thái playermotion là 32 (người chơi tiếp đất), người chơi không thể thực hiện thêm hành động nhảy (false).
----
====Xử lý khi người chơi nhấn phím====
local function onPlayerKeyDown(event)
local uid = event.eventobjid
if event.vkey == "SPACE" and playerCanJump[uid] then
Actor:appendSpeed(uid, 0, 0.8, 0)
playerCanJump[uid] = false
end
end
ScriptSupportEvent:registerEvent("Player.InputKeyDown", onPlayerKeyDown)
**Hàm onPlayerKeyDown xử lý sự kiện khi người chơi nhấn phím:**\\
* Nếu phím được nhấn là SPACE và người chơi đang trong trạng thái có thể nhảy, thì nhân vật sẽ được tăng tốc theo trục Y (0.8 đơn vị – có thể tùy chỉnh).
* Sau khi nhảy, trạng thái nhảy của người chơi sẽ được đặt thành false để tránh nhảy liên tục trên không.
--- //Cre:**[[https://www.facebook.com/fb.ngkhanh.mc|Nguyễn Khánh]]** 2025/02/28 10:09//
----
Nếu bạn có bất kỳ câu hỏi nào về Chế Độ DEV Nâng Cao, vui lòng tham gia\\
**[[https://www.facebook.com/groups/miniworldvn.developer|Mini World Developer Việt Nam]]** chính thức của chúng tôi