First commit
This commit is contained in:
		
							
								
								
									
										230
									
								
								app/SabrehavenServer/data/spells/lib/spells.lua
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										230
									
								
								app/SabrehavenServer/data/spells/lib/spells.lua
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,230 @@
 | 
			
		||||
function healingFormula(level, maglevel, base, variation, value_min, value_max)
 | 
			
		||||
	local value = 3 * maglevel + (2 * level)
 | 
			
		||||
	
 | 
			
		||||
	if value_min ~= nil and value <= value_min then
 | 
			
		||||
		value = value_min
 | 
			
		||||
	end
 | 
			
		||||
	
 | 
			
		||||
	if value_max ~= nil and value >= value_max then
 | 
			
		||||
		value = value_max
 | 
			
		||||
	end
 | 
			
		||||
	
 | 
			
		||||
	local min = value * (base - variation) / 100
 | 
			
		||||
	local max = value * (base + variation) / 100
 | 
			
		||||
	return min, max
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function damageFormula(level, maglevel, base, variation)
 | 
			
		||||
	local value = 3 * maglevel + (2 * level)
 | 
			
		||||
 | 
			
		||||
	local min = value * (base - variation) / 100
 | 
			
		||||
	local max = value * (base + variation) / 100
 | 
			
		||||
	return min, max
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
function computeFormula(level, maglevel, base, variation)
 | 
			
		||||
	local damage = base
 | 
			
		||||
	if variation > 0 then
 | 
			
		||||
		damage = math.random(-variation, variation) + damage
 | 
			
		||||
	end
 | 
			
		||||
	
 | 
			
		||||
	local level_formula = 2 * level
 | 
			
		||||
	local magic_formula = 3 * maglevel + level_formula 
 | 
			
		||||
 | 
			
		||||
	return magic_formula * damage / 100
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
---------------------------------------------------------------------------------------
 | 
			
		||||
 | 
			
		||||
AREA_WAVE3 = {
 | 
			
		||||
{1, 1, 1},
 | 
			
		||||
{1, 1, 1},
 | 
			
		||||
{0, 3, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_WAVE4 = {
 | 
			
		||||
{1, 1, 1, 1, 1},
 | 
			
		||||
{0, 1, 1, 1, 0},
 | 
			
		||||
{0, 1, 1, 1, 0},
 | 
			
		||||
{0, 0, 3, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_WAVE6 = {
 | 
			
		||||
{0, 0, 0, 0, 0},
 | 
			
		||||
{0, 1, 3, 1, 0},
 | 
			
		||||
{0, 0, 0, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_SQUAREWAVE5 = {
 | 
			
		||||
{1, 1, 1},
 | 
			
		||||
{1, 1, 1},
 | 
			
		||||
{1, 1, 1},
 | 
			
		||||
{0, 1, 0},
 | 
			
		||||
{0, 3, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_SQUAREWAVE6 = {
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_SQUAREWAVE7 = {
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
--Diagonal waves
 | 
			
		||||
AREADIAGONAL_WAVE4 = {
 | 
			
		||||
{0, 0, 0, 0, 1, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 0},
 | 
			
		||||
{1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREADIAGONAL_SQUAREWAVE5 = {
 | 
			
		||||
{1, 1, 1, 0, 0},
 | 
			
		||||
{1, 1, 1, 0, 0},
 | 
			
		||||
{1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 0},
 | 
			
		||||
{0, 0, 0, 0, 3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREADIAGONAL_WAVE6 = {
 | 
			
		||||
{0, 0, 1},
 | 
			
		||||
{0, 3, 0},
 | 
			
		||||
{1, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
--Beams
 | 
			
		||||
AREA_BEAM1 = {
 | 
			
		||||
{3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_BEAM5 = {
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_BEAM7 = {
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_BEAM8 = {
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{1},
 | 
			
		||||
{3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
--Diagonal Beams
 | 
			
		||||
AREADIAGONAL_BEAM5 = {
 | 
			
		||||
{1, 0, 0, 0, 0},
 | 
			
		||||
{0, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 1, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 0},
 | 
			
		||||
{0, 0, 0, 0, 3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREADIAGONAL_BEAM7 = {
 | 
			
		||||
{1, 0, 0, 0, 0, 0, 0},
 | 
			
		||||
{0, 1, 0, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 1, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 1, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 1, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 0, 3}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
--Circles
 | 
			
		||||
AREA_CIRCLE2X2 = {
 | 
			
		||||
{0, 1, 1, 1, 0},
 | 
			
		||||
{1, 1, 1, 1, 1},
 | 
			
		||||
{1, 1, 3, 1, 1},
 | 
			
		||||
{1, 1, 1, 1, 1},
 | 
			
		||||
{0, 1, 1, 1, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_CIRCLE3X3 = {
 | 
			
		||||
{0, 0, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{1, 1, 1, 1, 1, 1, 1},
 | 
			
		||||
{1, 1, 1, 3, 1, 1, 1},
 | 
			
		||||
{1, 1, 1, 1, 1, 1, 1},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
-- Crosses
 | 
			
		||||
AREA_CROSS1X1 = {
 | 
			
		||||
{0, 1, 0},
 | 
			
		||||
{1, 3, 1},
 | 
			
		||||
{0, 1, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREA_CIRCLE5X5 = {
 | 
			
		||||
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
 | 
			
		||||
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
 | 
			
		||||
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
 | 
			
		||||
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
--Squares
 | 
			
		||||
AREA_SQUARE1X1 = {
 | 
			
		||||
{1, 1, 1},
 | 
			
		||||
{1, 3, 1},
 | 
			
		||||
{1, 1, 1}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
-- Walls
 | 
			
		||||
AREA_WALLFIELD = {
 | 
			
		||||
{1, 1, 3, 1, 1}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
AREADIAGONAL_WALLFIELD = {
 | 
			
		||||
{0, 0, 0, 0, 1},
 | 
			
		||||
{0, 0, 0, 1, 1},
 | 
			
		||||
{0, 1, 3, 1, 0},
 | 
			
		||||
{1, 1, 0, 0, 0},
 | 
			
		||||
{1, 0, 0, 0, 0},
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user