46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| --- @class Stats
 | |
| --- @field level integer
 | |
| --- @field initiative integer
 | |
| --- @field hp integer
 | |
| --- @field damage integer
 | |
| --- @field defence integer
 | |
| local stats = {}
 | |
| 
 | |
| --- @param level? integer
 | |
| local function new(level)
 | |
| 
 | |
| end
 | |
| 
 | |
| --- creates stats from character template (like warrior etc etc)
 | |
| ---
 | |
| --- TODO: написать скалирование по уровню
 | |
| --- @param template ClassTemplate
 | |
| --- @param level? integer
 | |
| local function fromTemplate(template, level)
 | |
|     local tempStats = {}
 | |
|     if template == "warrior" then
 | |
|         tempStats = {
 | |
|             hp = 30,
 | |
|             initiative = 10,
 | |
|             damage = 5,
 | |
|             defence = 10,
 | |
|         }
 | |
|     elseif template == "mage" then
 | |
|         tempStats = {
 | |
|             hp = 15,
 | |
|             initiative = 8,
 | |
|             damage = 8,
 | |
|             defence = 0,
 | |
|         }
 | |
|     elseif template == "archer" then
 | |
|         tempStats = {
 | |
|             hp = 20,
 | |
|             initiative = 12,
 | |
|             damage = 5,
 | |
|             defence = 5,
 | |
|         }
 | |
|     end
 | |
| end
 | |
| 
 | |
| return { new = new, fromTemplate = fromTemplate }
 |