28 lines
702 B
Lua
28 lines
702 B
Lua
--- @alias Class "dev_warrior"|"dev_mage"
|
|
|
|
--- @class StatsBehavior : Behavior
|
|
--- @field hp integer
|
|
--- @field mana integer
|
|
--- @field initiative integer
|
|
--- @field isInTurnOrder boolean
|
|
local behavior = {}
|
|
behavior.__index = behavior
|
|
behavior.id = "stats"
|
|
|
|
--- @param hp? integer
|
|
--- @param mana? integer
|
|
--- @param initiative? integer
|
|
--- @param class? Class
|
|
--- @param isInTurnOrder? boolean
|
|
function behavior.new(hp, mana, initiative, class, isInTurnOrder)
|
|
return setmetatable({
|
|
hp = hp or 20,
|
|
mana = mana or 10,
|
|
initiative = initiative or 10,
|
|
class = class or "dev_warrior",
|
|
isInTurnOrder = isInTurnOrder or true,
|
|
}, behavior)
|
|
end
|
|
|
|
return behavior
|