mirror of
https://github.com/enduro2d/enduro2d.git
synced 2025-12-14 16:09:06 +07:00
1.9 KiB
1.9 KiB
Spine Player
Properties
spine: spine_asset, RW
Functions
skin(name: string) -> voidattachment(slot: string, name: string) -> voidhas_skin(name: string) -> booleanhas_animation(name: string) -> booleanadd_command(command: commands) -> void
Commands
-
clear_track_cmd(track: number)track: number, RO
-
set_anim_cmd(track: number, name: string)track: number, ROname: string, ROloop: boolean, RWend_message: string, RWcomplete_messsage: string, RW
-
add_anim_cmd(track: number, name: string)track: number, ROname: string, ROloop: boolean, RWdelay: secf, RWend_message: string, RWcomplete_messsage: string, RW
-
set_empty_anim_cmd(track: number)track: number, ROmix_duration: secf, RWend_message: string, RWcomplete_messsage: string, RW
-
add_empty_anim_cmd(track: number)track: number, ROdelay: secf, RWmix_duration: secf, RWend_message: string, RWcomplete_messsage: string, RW
Events
-
custom_evt(name: str_hash)name: str_hash, ROint_value: number, RWfloat_value: number, RWstring_value: string, RW
-
end_evt(message: string)message: string, RO
-
complete_evt(message: string)message: string, RO
Example
local M = {}
local keyboard = e2d.input.keyboard
local roar_key = e2d.keyboard_key.r
function M:on_update(go)
local roar = keyboard:is_key_just_pressed(roar_key)
if roar then
local cmd = e2d.spine_player.set_anim_cmd.new(0, "roar")
cmd.complete_message = "to_walk"
go.spine_player:add_command(cmd)
end
end
function M:on_event(go, type, event)
local to_walk =
type == "spine_player.complete_evt" and
event.message == "to_walk"
if to_walk then
local cmd = e2d.spine_player.add_anim_cmd.new(0, "walk")
cmd.loop = true
go.spine_player:add_command(cmd)
end
end
return M