Witam,
mam problem z techniką która leczy [lel].
Cały problem polega na tym, że gdy ktoś stoi na tym samym sqm co gracz używający ów techniki, także dostaje hp.
Spell jest odwzorowany na tych z TFSa, więc nie mam gdzie szukać pomocy.
Myślałem nad zmianą `sposobu`, by spell nie leczył na kratce, lecz dosłownie samego gracza, lecz nie znam się na tym, dla tego kieruję sprawę do Was.
oto spell:
mam problem z techniką która leczy [lel].
Cały problem polega na tym, że gdy ktoś stoi na tym samym sqm co gracz używający ów techniki, także dostaje hp.
Spell jest odwzorowany na tych z TFSa, więc nie mam gdzie szukać pomocy.
Myślałem nad zmianą `sposobu`, by spell nie leczył na kratce, lecz dosłownie samego gracza, lecz nie znam się na tym, dla tego kieruję sprawę do Was.
oto spell:
Lua:
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 96)
setCombatParam(combat1, COMBAT_PARAM_AGGRESSIVE, FALSE)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, 1.50, 0, 1.50, 0)
local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_NODAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 64)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -1.5, 0, -1.6, 0)
arr1 = {
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 3, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0}
}
arr2 = {
{0, 0, 0, 0, 0},
{0, 1, 0, 0, 0},
{0, 0, 2, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0}
}
local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)
setCombatArea(combat1, area1)
setCombatArea(combat2, area2)
local function onCastSpell1(parameters)
doCombat(parameters.cid, combat1, parameters.var)
end
local function onCastSpell2(parameters)
doCombat(parameters.cid, combat2, parameters.var)
end
function onCastSpell(cid, var)
setPlayerStorageValue(cid, 85020, getPlayerStorageValue(cid, 85020) + 1)
if getPlayerStorageValue(cid, 85020) == 249 then
doPlayerAddAchievement(cid, 53)
end
if getPlayerStorageValue(cid, 85020) == 4999 then
doPlayerAddAchievement(cid, 54)
end
if getPlayerStorageValue(cid, 85020) == 24999 then
doPlayerAddAchievement(cid, 55)
end
local parameters = { cid = cid, var = var}
if (getPlayerStorageValue(cid, 14) == 1) then
doPlayerSendCancel(cid, "You cannot use heal.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
else
addEvent(onCastSpell1, 0, parameters)
addEvent(onCastSpell2, 0, parameters)
end
return TRUE
end