wip: rework battler
This commit is contained in:
parent
b413946368
commit
d0d0b0d985
9 changed files with 70 additions and 0 deletions
|
@ -8,6 +8,8 @@ function Battler:new(world, x, y, z)
|
||||||
self.speed = 3
|
self.speed = 3
|
||||||
self.isActive = false
|
self.isActive = false
|
||||||
self.debugActiveTimer = 0
|
self.debugActiveTimer = 0
|
||||||
|
|
||||||
|
self.side = ""
|
||||||
end
|
end
|
||||||
|
|
||||||
function Battler:destroy()
|
function Battler:destroy()
|
||||||
|
|
|
@ -15,6 +15,7 @@ function Ennemy:new(world, x, y, id, number)
|
||||||
self.pp = self.data.stats.ppmax
|
self.pp = self.data.stats.ppmax
|
||||||
|
|
||||||
self.shownHP = self.hp
|
self.shownHP = self.hp
|
||||||
|
self.side = "ennemy"
|
||||||
end
|
end
|
||||||
|
|
||||||
function Ennemy:draw()
|
function Ennemy:draw()
|
||||||
|
|
|
@ -25,6 +25,7 @@ function Hero:new(world, x, y, charid, charnumber)
|
||||||
self.statusbar = StatusBar(self)
|
self.statusbar = StatusBar(self)
|
||||||
|
|
||||||
self.side = "heroes"
|
self.side = "heroes"
|
||||||
|
self.doing = "nothing";
|
||||||
end
|
end
|
||||||
|
|
||||||
-- CHARACTER FUNCTIONS
|
-- CHARACTER FUNCTIONS
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
local Player = Object:extend()
|
||||||
|
|
||||||
|
function Player:init()
|
||||||
|
self.activeActor = nil
|
||||||
|
self.currentScreen = ""
|
||||||
|
end
|
||||||
|
|
||||||
|
function Player:beginTurn(activeActor)
|
||||||
|
self.activeActor = activeActor
|
||||||
|
self.startx, self.starty = self.activeActor.x, self.activeActor.y
|
||||||
|
self.currentScreen = MoveScreen(self)
|
||||||
|
core.debug:print("cbs/hero", "hero " .. self.activeActor.charid .. " is now active")
|
||||||
|
self.characterData = game.characters.list[self.activeActor.charid]
|
||||||
|
|
||||||
|
self:initializeCursor()
|
||||||
|
end
|
||||||
|
|
||||||
|
function Player:initializeCursor()
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
return Player
|
|
@ -0,0 +1,40 @@
|
||||||
|
local MoveSubController = Object:extend()
|
||||||
|
|
||||||
|
function MoveSubController:new(player)
|
||||||
|
self.player = player
|
||||||
|
self.actor = player.activeActor
|
||||||
|
self.characterData = game.characters.list[self.actor.charid]
|
||||||
|
end
|
||||||
|
|
||||||
|
function MoveSubController:initAction()
|
||||||
|
local x, y = utils.math.round(self.actor.x), utils.math.round(self.actor.y)
|
||||||
|
local gridSize = self:getGridSize()
|
||||||
|
|
||||||
|
self.world.cursor:setGrid(x, y, "circle", gridsize, 1, self)
|
||||||
|
self.world.cursor:set(self.startx, self.starty)
|
||||||
|
end
|
||||||
|
|
||||||
|
function MoveSubController:getGridSize()
|
||||||
|
local gridsize = self.characterData.move
|
||||||
|
if (gridsize == nil) then
|
||||||
|
gridsize = 3
|
||||||
|
core.debug:warning("cbs/move", "move value is nil")
|
||||||
|
end
|
||||||
|
return gridsize
|
||||||
|
end
|
||||||
|
|
||||||
|
function MoveSubController:receiveCursorSignal(x, y, cancel)
|
||||||
|
-- Comme ceci est la PREMIERE action du personnage, il n'y a pas de cancel
|
||||||
|
-- possible, puisque rien n'a été fait.
|
||||||
|
|
||||||
|
self.actor:changeAnimation("walk", true)
|
||||||
|
self.actor:goTo(x, y, 'cursorMove', 1)
|
||||||
|
self.actor.assets.sfx["woosh"]:play()
|
||||||
|
self.actor:blockTurnSystem()
|
||||||
|
end
|
||||||
|
|
||||||
|
function MoveSubController:moveComplete()
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
return MoveSubController
|
0
sonic-radiance.love/scenes/overworld/actors/player.lua
Normal file
0
sonic-radiance.love/scenes/overworld/actors/player.lua
Normal file
|
@ -1,11 +1,15 @@
|
||||||
local Scene = require "core.modules.scenes"
|
local Scene = require "core.modules.scenes"
|
||||||
local OverWorld = Scene:extend()
|
local OverWorld = Scene:extend()
|
||||||
|
|
||||||
|
local World = require "core.modules.world.world2D"
|
||||||
|
|
||||||
function OverWorld:new()
|
function OverWorld:new()
|
||||||
OverWorld.super.new(self)
|
OverWorld.super.new(self)
|
||||||
|
World(self, actorlist, mapfile, maptype)
|
||||||
end
|
end
|
||||||
|
|
||||||
function OverWorld:update(dt)
|
function OverWorld:update(dt)
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function OverWorld:draw()
|
function OverWorld:draw()
|
||||||
|
|
Loading…
Reference in a new issue