-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.
-
Conteúdo Similar
-
script alguém pode me ajudar nessa spells aqui, queira que colocassem pro meu personagem ficar inatingível por 6 segundos e podendo atacar livremente
Por lazaroszz,
- 0 respostas
- 508 visualizações
-
- 0 respostas
- 1977 visualizações
-
- 1 resposta
- 2308 visualizações
-
- 0 respostas
- 1082 visualizações
-
- 1 resposta
- 1243 visualizações
-
Pergunta
dragaofr 0
Tou colocando algumas magias no server novas, mas o server quando usa a magia cai, na primera vez tava com erro de nao ter exausted na magia e nao tirava mana, dai fui e botei o return true no fim do script antes do end, mas depois que botei esse return o server cai quando usa a magia .
As magias normais do server vem assim
------------------------------------------------------------------------
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.0, 0, -1.6, 0)
local area = createCombatArea(AREA_CROSS5X5)
setCombatArea(combat, area)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
-------------------------------------------------------------------------
Aque to botando no principio ela funcionava mas de uns tempos para ca ta derubando o server assim como qualquer magia custom que eu adiciono ao server como esta.
local config = {
efeitoTele = 10, -- efeito q ira aparacer a cada teleport.
efeitoDamage = 1, -- efeito q ira aparecer ao hitar no alvo
hits = 6, -- quantos hits vai dar
delay = 650, -- intervalo de tempo a cada hit
min = 90, -- dano minimo
max = 140, -- dano maximo
damage = COMBAT_PHYSICALDAMAGE -- tipo do dano
}
function isWalkable(pos, creature, pz, proj) -- nord
if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
if getTopCreature(pos).uid > 0 and creature then return false end
if getTileInfo(pos).protection and not pz then return false end
local n = not proj and 3 or 2
for i = 0, 255 do
pos.stackpos = i
local tile = getTileThingByPos(pos)
if tile.itemid ~= 0 and not isCreature(tile.uid) then
if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
return false
end
end
end
return true
end
function getPosDirs(p, dir) -- mkalo
return dir == 1 and {x=p.x-1, y=p.y, z=p.z} or dir == 2 and {x=p.x-1, y=p.y+1, z=p.z} or dir == 3 and {x=p.x, y=p.y+1, z=p.z} or dir == 4 and {x=p.x+1, y=p.y+1, z=p.z} or dir == 5 and {x=p.x+1, y=p.y, z=p.z} or dir == 6 and {x=p.x+1, y=p.y-1, z=p.z} or dir == 7 and {x=p.x, y=p.y-1, z=p.z} or dir == 8 and {x=p.x-1, y=p.y-1, z=p.z}
end
function validPos(pos)
tb = {}
for i = 1, 8 do
newpos = getPosDirs(pos, i)
if isWalkable(newpos) then
table.insert(tb, newpos)
end
end
table.insert(tb, pos)
return tb
end
spell = {
start = function (cid, target, markpos, hits)
if not isCreature(cid) then return true end
if not isCreature(target) or hits < 1 then
doTeleportThing(cid, markpos)
doSendMagicEffect(getThingPos(cid), config.efeitoTele)
return true
end
posAv = validPos(getThingPos(target))
rand = #posAv == 1 and 1 or #posAv - 1
doSendMagicEffect(getThingPos(cid), config.efeitoTele)
doTeleportThing(cid, posAv[math.random(1, rand)])
doAreaCombatHealth(cid, config.damage, getThingPos(target), 0, -config.min, -config.max, config.efeitoDamage)
addEvent(spell.start, config.delay, cid, target, markpos, hits - 1)
end
}
function onCastSpell(cid)
target = getCreatureTarget(cid)
if target then
spell.start(cid, target, getThingPos(cid), config.hits)
end
return true
end
----------------------------------------------------------------------
O meu server é o baiak extreme mas ja mexi tanto e mudei quase tudo .pode ser por isso que surgio o bug da spell.
No inicio esse script funcionava mesmo com os returns mas agora nenhuma magia custom ta pegando.
Alquem pode ajudar dou reps.Agradeço desde ja
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados