20 lines
968 B
Lua
20 lines
968 B
Lua
|
Disease = {}
|
||
|
|
||
|
--- Disease class
|
||
|
---@param side name string? the name of the disease (string)
|
||
|
---@param side symbtoms_by_stages list? a list of list of symbtom, a list of symbtoms by stage (Symbtom)
|
||
|
---@param side contaminations_methods list? a list of contamination method (string)
|
||
|
---@param side transmissions_zone_by_stage list? a list of transmissions zone (int), one number by stage
|
||
|
---@param side stages_durations list? a list of stage duration (int), one number by stage
|
||
|
function Disease:new(name, symbtoms_by_stages, contaminations_methods, transmissions_zone_by_stages, stages_durations)
|
||
|
local instance = {}
|
||
|
setmetatable(instance, {__index = Disease})
|
||
|
instance.name = name
|
||
|
instance.symbtoms_by_stages = symbtoms_by_stages
|
||
|
instance.contaminations_methods = contaminations_methods
|
||
|
instance.transmissions_zone_by_stages = transmissions_zone_by_stages
|
||
|
instance.stages_durations = stages_durations
|
||
|
return instance
|
||
|
end
|
||
|
|
||
|
return Disease
|