Support proper actuator animation
This commit is contained in:
@@ -132,7 +132,7 @@ function Quest(name, book)
|
||||
this.story:begin()
|
||||
this:_narration()
|
||||
end,
|
||||
event = function(this, event)
|
||||
event = function(this, event, event_data)
|
||||
if not this.active then
|
||||
return
|
||||
end
|
||||
@@ -250,11 +250,14 @@ function StartGameQuest()
|
||||
end
|
||||
quests = {}
|
||||
-- ecs_set_debug_drawing(true)
|
||||
setup_handler(function(event, entity)
|
||||
setup_handler(function(event, trigger_entity, what_entity)
|
||||
print(event)
|
||||
for k, v in pairs(quests) do
|
||||
if v.active then
|
||||
v:event(event)
|
||||
local event_data = {}
|
||||
event_data.trigger_entity = trigger_entity
|
||||
event_data.object_entity = what_entity
|
||||
v:event(event, event_data)
|
||||
end
|
||||
end
|
||||
if event == "startup" then
|
||||
@@ -263,7 +266,6 @@ setup_handler(function(event, entity)
|
||||
print("narration progress!")
|
||||
elseif event == "narration_answered" then
|
||||
local answer = narration_get_answer()
|
||||
-- story:choose(answer)
|
||||
print("answered:", answer)
|
||||
elseif event == "new_game" then
|
||||
ecs_character_params_set("player", "gravity", true)
|
||||
@@ -274,5 +276,19 @@ setup_handler(function(event, entity)
|
||||
print(k, v.active)
|
||||
end
|
||||
quest:activate()
|
||||
elseif event == "actuator_enter" then
|
||||
ecs_character_physics_control(what_entity, false)
|
||||
ecs_character_set_actuator(what_entity, "swimming-hold-edge")
|
||||
ecs_trigger_set_position(trigger_entity, what_entity)
|
||||
local ent = ecs_get_entity(what_entity)
|
||||
if (ent.is_character()) then
|
||||
print("character")
|
||||
end
|
||||
if (ent.is_player()) then
|
||||
print("player")
|
||||
end
|
||||
-- crash()
|
||||
elseif event == "actuator_exit" then
|
||||
crash()
|
||||
end
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user