additional comments in effect.lua
This commit is contained in:
parent
5c464bc9ee
commit
ec18710047
@ -1,12 +1,20 @@
|
|||||||
local utils = require "lib.utils.utils"
|
local utils = require "lib.utils.utils"
|
||||||
local taskUtils = require "lib.utils.task"
|
local taskUtils = require "lib.utils.task"
|
||||||
|
|
||||||
|
--- Некоторое свойство, что можно наложить на персонажа. Позволяет реализовать такие вещи как DOT'ы
|
||||||
|
--- и вообще, что душа поживает.
|
||||||
|
---
|
||||||
|
--- У каждого эффекта есть тэг (необязательно должен быть уникален, в этом случае эффекты будут приниматься за один
|
||||||
|
--- в случае суммирования) и функции триггеры (например, `beforeTurn`, что срабатывает перед началом хода персонажа и так далее).
|
||||||
|
--- Каждая функция триггер делится на два типа, `before...` и `after...`. Каждая из них возвращает `task`, для того чтобы
|
||||||
|
--- проиграть анимацию, например. Функции типа `before...` также возвращают по мимо таска некоторое значение, зависящее от
|
||||||
|
--- конкретной функции.
|
||||||
--- @class Effect
|
--- @class Effect
|
||||||
--- @field tag string
|
--- @field tag string
|
||||||
local effect = {}
|
local effect = {}
|
||||||
effect.__index = effect
|
effect.__index = effect
|
||||||
|
|
||||||
--- Предполагается, что в каждую функцию будет передаваться `Character` и параметр `intensity`, который отвечает за силу спелла
|
--- Предполагается, что в каждую функцию будет передаваться `Character` (владелец эффекта) и параметр `intensity`, который отвечает за силу спелла
|
||||||
--- @alias EffectFunc fun(owner: Character, intensity: integer): Task<nil>, nil -- бред конечно, но иначе всё в жёлтом
|
--- @alias EffectFunc fun(owner: Character, intensity: integer): Task<nil>, nil -- бред конечно, но иначе всё в жёлтом
|
||||||
--- @alias EffectStatementFunc fun(owner: Character, intensity: integer): Task<nil>, boolean
|
--- @alias EffectStatementFunc fun(owner: Character, intensity: integer): Task<nil>, boolean
|
||||||
--- @alias EffectDamageFunc fun(owner: Character, intensity: integer, damage: integer): Task<nil>, integer
|
--- @alias EffectDamageFunc fun(owner: Character, intensity: integer, damage: integer): Task<nil>, integer
|
||||||
@ -114,10 +122,6 @@ function effect:beforeRegeneration(owner, intensity, amountHp) return taskUtils.
|
|||||||
--- @return Task<nil>
|
--- @return Task<nil>
|
||||||
function effect:afterRegeneration(owner, intensity) return taskUtils.wait {} end
|
function effect:afterRegeneration(owner, intensity) return taskUtils.wait {} end
|
||||||
|
|
||||||
-- --- @param other Effect
|
|
||||||
-- --- @return function
|
|
||||||
-- function effect:sum(other) return function() end end
|
|
||||||
|
|
||||||
function effect:update(dt) end
|
function effect:update(dt) end
|
||||||
|
|
||||||
function effect:draw() end
|
function effect:draw() end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user