Hello i have a problem. I have a wave and wanna use it after lets say 2s and cast in on player look direction. On tfs 0.4.3 is work good but here when i using and moving is getting first look position no after some time. here is a code. Maybe someone too can give me a tip how use less code? And is possible to use onGetFormulaValues one in like here 12 combats?
Lua:
local P1 = Combat()
P1:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
P1:setParameter(COMBAT_PARAM_EFFECT, 490)
P1:setArea(createCombatArea(FALA_P)) --PRAWO POCZATEK
local P2xS = Combat()
P2xS:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
P2xS:setParameter(COMBAT_PARAM_EFFECT, 491)
P2xS:setArea(createCombatArea(FALA_S2)) --PRAWO 2X SRODEK
local PK3 = Combat()
PK3:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
PK3:setParameter(COMBAT_PARAM_EFFECT, 484)
PK3:setArea(createCombatArea(FALA_K)) --PRAWO KONIEC
local L1 = Combat()
L1:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
L1:setParameter(COMBAT_PARAM_EFFECT, 484)
L1:setArea(createCombatArea(FALA_P)) --Lewo POCZATEK
local L2xS = Combat()
L2xS:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
L2xS:setParameter(COMBAT_PARAM_EFFECT, 491)
L2xS:setArea(createCombatArea(FALA_S2)) --Lewo 2X SRODEK
local LK3 = Combat()
LK3:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
LK3:setParameter(COMBAT_PARAM_EFFECT, 490)
LK3:setArea(createCombatArea(FALA_K)) --Lewo KONIEC
local G1 = Combat()
G1:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
G1:setParameter(COMBAT_PARAM_EFFECT, 487)
G1:setArea(createCombatArea(FALA_P)) --Góra POCZATEK
local G2xS = Combat()
G2xS:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
G2xS:setParameter(COMBAT_PARAM_EFFECT, 486)
G2xS:setArea(createCombatArea(FALA_S2)) --Góra 2X SRODEK
local GK3 = Combat()
GK3:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
GK3:setParameter(COMBAT_PARAM_EFFECT, 485)
GK3:setArea(createCombatArea(FALA_K)) --Góra KONIEC
local D1 = Combat()
D1:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
D1:setParameter(COMBAT_PARAM_EFFECT, 485)
D1:setArea(createCombatArea(FALA_P)) --Dół POCZATEK
local D2xS = Combat()
D2xS:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
D2xS:setParameter(COMBAT_PARAM_EFFECT, 486)
D2xS:setArea(createCombatArea(FALA_S2)) --Dół 2X SRODEK
local DK3 = Combat()
DK3:setParameter(COMBAT_PARAM_TYPE, COMBAT_LIFEDRAIN)
DK3:setParameter(COMBAT_PARAM_EFFECT, 487)
DK3:setArea(createCombatArea(FALA_K)) --Doł KONIEC
function onGetFormulaValues1(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 4.5) + 20
local max = (level / 5) + (magicLevel * 7.6) + 48
return -min, -max
end
function onGetFormulaValues2(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues3(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues4(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 4.5) + 20
local max = (level / 5) + (magicLevel * 7.6) + 48
return -min, -max
end
function onGetFormulaValues5(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues6(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues7(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 4.5) + 20
local max = (level / 5) + (magicLevel * 7.6) + 48
return -min, -max
end
function onGetFormulaValues8(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues9(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues10(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 4.5) + 20
local max = (level / 5) + (magicLevel * 7.6) + 48
return -min, -max
end
function onGetFormulaValues11(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
function onGetFormulaValues12(player, level, magicLevel)
local min = (level / 5) + (magicLevel * 1.8) + 11
local max = (level / 5) + (magicLevel * 3) + 19
return -min, -max
end
P1:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues1")
P2xS:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues2")
PK3:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues3")
L1:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues4")
L2xS:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues5")
LK3:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues6")
G1:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues7")
G2xS:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues8")
GK3:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues9")
D1:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues10")
D2xS:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues11")
DK3:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues12")
function sup(creature)
doCreatureSay(creature, 'Super...!', TALKTYPE_ORANGE_1)
addEvent(ska,550,creature)
end
function ska(creature)
doCreatureSay(creature, 'Ka...!', TALKTYPE_ORANGE_1)
addEvent(sma,550,creature)
end
function sma(creature)
doCreatureSay(creature, 'Me...!', TALKTYPE_ORANGE_1)
addEvent(sha2,550,creature)
end
function sha2(creature)
doCreatureSay(creature, 'Ha...!', TALKTYPE_ORANGE_1)
addEvent(sma2,550,creature)
end
function sma2(creature)
doCreatureSay(creature, 'Me...!', TALKTYPE_ORANGE_1)
addEvent(sma3,800,creature)
end
function sma3(creature)
doCreatureSay(creature, 'Haaaa!', TALKTYPE_ORANGE_1)
end
function executeWave(creature,var)
if(getPlayerLookDir(creature)==0) then
G1:execute(creature, var)
G2xS:execute(creature, var)
GK3:execute(creature, var)
end
if(getPlayerLookDir(creature)==1) then
P1:execute(creature, var)
P2xS:execute(creature, var)
PK3:execute(creature, var)
end
if(getPlayerLookDir(creature)==2) then
D1:execute(creature, var)
D2xS:execute(creature, var)
DK3:execute(creature, var)
end
if(getPlayerLookDir(creature)==3) then
L1:execute(creature, var)
L2xS:execute(creature, var )
LK3:execute(creature, var)
end
return true
end
function onCastSpell(creature,variant)
addEvent(sup,1,creature)
addEvent(executeWave,3000,creature,variant)
return false
end