feat(events): add direction option to teleporting
This commit is contained in:
parent
e50c9f6e54
commit
d7b47933b3
4 changed files with 10 additions and 4 deletions
|
@ -6,7 +6,7 @@ return {
|
|||
["playSFX"] = {"sfx"},
|
||||
["getRings"] = {"number"},
|
||||
["getItems"] = {"type", "item", "number"},
|
||||
["teleport"] = {"area", "x", "y"}
|
||||
["teleport"] = {"area", "x", "y", "charDir"}
|
||||
--[name] = {args...},
|
||||
}
|
||||
|
||||
|
|
|
@ -7,8 +7,12 @@ function SimpleMessageStep:new(controller, args)
|
|||
end
|
||||
|
||||
function SimpleMessageStep:start()
|
||||
local charDir = self.arguments.charDir
|
||||
if (charDir == "default") then
|
||||
charDir = self.events.scene.world.players[1].actor.charDir or "down"
|
||||
end
|
||||
core.screen:startTransition(defTransitions.default, defTransitions.default,
|
||||
function() self.events.scene.world:teleport(self.arguments.area, self.arguments.x, self.arguments.y) end,
|
||||
function() self.events.scene.world:teleport(self.arguments.area, self.arguments.x, self.arguments.y, charDir) end,
|
||||
0, 0)
|
||||
end
|
||||
|
||||
|
|
|
@ -8,8 +8,9 @@ end
|
|||
|
||||
function Teleporter:applyProperties()
|
||||
Teleporter.super.applyProperties(self)
|
||||
local charDir = self.properties.charDir or "default"
|
||||
self.event = {
|
||||
{"teleport", "", self.properties.area, self.properties.x, self.properties.y},
|
||||
{"teleport", "", self.properties.area, self.properties.x, self.properties.y, charDir},
|
||||
}
|
||||
end
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ function RPGWorld:savePosition()
|
|||
game.position.area = self.area
|
||||
end
|
||||
|
||||
function RPGWorld:teleport(area, x, y)
|
||||
function RPGWorld:teleport(area, x, y, charDir)
|
||||
if (area == self.area) then
|
||||
self.players[1].actor.x = x * 16
|
||||
self.players[1].actor.y = y * 16
|
||||
|
@ -31,6 +31,7 @@ function RPGWorld:teleport(area, x, y)
|
|||
self.playery = y
|
||||
self:reset()
|
||||
collectgarbage()
|
||||
self.players[1].actor.charDir = charDir
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue