leonvenigor 0 Postado Abril 15, 2012 Share Postado Abril 15, 2012 queria q essas spells tivessem um exausted de 1 minuto: 1- kawarimi function onCastSpell(cid, var) local jogadorpos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local monsterpos = getCreaturePosition(target) if target == isMonster or isCreature then doTeleportThing(cid,monsterpos) doSendMagicEffect(jogadorpos, 125) else doPlayerSendTextMessage(cid,20,'You can only use it on creatures') end end 2-freeze local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1) setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, 32) function onGetFormulaValues(cid, level, skill, attack, factor) local skillTotal, levelTotal = skill + attack ,level/5 return -(skillTotal * 1.0 + levelTotal), -(skillTotal * 2.0 + levelTotal) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") local condition = createConditionObject(CONDITION_MUTED) setConditionParam(condition, CONDITION_PARAM_TICKS, 5000) setConditionFormula(condition, -3.0, 0, -3.0, 0) setCombatCondition(combat, condition) function onCastSpell(cid, var) return doCombat(cid, combat, var) end function onCastSpell(cid, var) local jogadorpos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local monsterpos = getCreaturePosition(target) if target == isMonster or isCreature then doTeleportThing(cid,monsterpos) doTeleportThing(target,jogadorpos) doSendMagicEffect(jogadorpos, 3) doSendMagicEffect(monsterpos, 3) else doPlayerSendTextMessage(cid,20,'You can only use it on creatures') end end Obrigado e desculpa qualquer coisa Link para o comentário Compartilhar em outros sites More sharing options...
0 Zmovir 41 Postado Abril 15, 2012 Share Postado Abril 15, 2012 é so você usar isso no script if exhaustion.get(cid, storage) == FALSE then exhaustion.set(cid, storage, waittime) embaixo de Function onCastSpell local waittime = 2 -- em segundos local storage = 5560 -- nem mecha aki Link para o comentário Compartilhar em outros sites More sharing options...
0 leonvenigor 0 Postado Abril 15, 2012 Autor Share Postado Abril 15, 2012 nao deu Link para o comentário Compartilhar em outros sites More sharing options...
0 StyflerDrunou 0 Postado Abril 16, 2012 Share Postado Abril 16, 2012 Leon, faça assim, utilize o script normal, antes de colocar aquilo que o @Zmovir falou... E depois vá em spells.xml e proucure a sua spell. Por exemplo, vai estar assim: <instant name="Flame Strike" words="exori flam" lvl="12" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/flame strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> Onde tiver o exhaustion="2000 você modifica para quanto você quiser ;D Te ajudei mano? DA MEU REP+ AI TIO! Link para o comentário Compartilhar em outros sites More sharing options...
0 leonvenigor 0 Postado Abril 16, 2012 Autor Share Postado Abril 16, 2012 ja tentei fazer isso mais o exausted nao muda Link para o comentário Compartilhar em outros sites More sharing options...
0 StyflerDrunou 0 Postado Abril 16, 2012 Share Postado Abril 16, 2012 que doidera... como voce quer que seja? Por acaso, na date do seu ot, tem uma pasta lib, que contem esse doucumento? 034-exhaustion se não tiver, crie e cole isso dentro... exhaustion = { check = function (cid, storage) if(getPlayerStorageValue(cid, storage) >= os.time(t)) then return TRUE end return FALSE end, get = function (cid, storage) local exhaust = getPlayerStorageValue(cid, storage) if(exhaust > 0) then local left = exhaust - os.time(t) if(left >= 0) then return left end end return FALSE end, set = function (cid, storage, time) setPlayerStorageValue(cid, storage, os.time(t) + time) end, make = function (cid, storage, time) local exhaust = exhaustion.get(cid, storage) if(not exhaust) then exhaustion.set(cid, storage, time) return TRUE end return FALSE end } Mais mano, todas as magias, o exaust fica no xml... Estranhoo.. Apareçe algum erro no distro? especifique. Link para o comentário Compartilhar em outros sites More sharing options...
0 Vodkart 1515 Postado Abril 16, 2012 Share Postado Abril 16, 2012 é só colocar um return TRUE antes dos últimos end e pronto Link para o comentário Compartilhar em outros sites More sharing options...
0 Subwat 405 Postado Abril 16, 2012 Share Postado Abril 16, 2012 function onCastSpell(cid, var) local jogadorpos = getCreaturePosition(cid) local target = getCreatureTarget(cid) local monsterpos = getCreaturePosition(target) if target == isMonster or isCreature then doTeleportThing(cid,monsterpos) doTeleportThing(target,jogadorpos) doSendMagicEffect(jogadorpos, 3) doSendMagicEffect(monsterpos, 3) else doPlayerSendTextMessage(cid,20,'You can only use it on creatures') end return true end Link para o comentário Compartilhar em outros sites More sharing options...
0 leonvenigor 0 Postado Abril 16, 2012 Autor Share Postado Abril 16, 2012 valeu galera ja resolvi aki Link para o comentário Compartilhar em outros sites More sharing options...
0 Vilden 137 Postado Abril 16, 2012 Share Postado Abril 16, 2012 Tópico resolvido, quando isso acontece reportem o tópico para que ele seja fechado, assim evitando floods Reportado! Fechar Link para o comentário Compartilhar em outros sites More sharing options...
0 Gabriel Couto 293 Postado Abril 17, 2012 Share Postado Abril 17, 2012 Tópico resolvido. Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
leonvenigor 0
queria q essas spells tivessem um exausted de 1 minuto:
1- kawarimi
function onCastSpell(cid, var)
local jogadorpos = getCreaturePosition(cid)
local target = getCreatureTarget(cid)
local monsterpos = getCreaturePosition(target)
if target == isMonster or isCreature then
doTeleportThing(cid,monsterpos)
doSendMagicEffect(jogadorpos, 125)
else
doPlayerSendTextMessage(cid,20,'You can only use it on creatures')
end
end
2-freeze
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_BLOCKSHIELD, 1)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 32)
function onGetFormulaValues(cid, level, skill, attack, factor)
local skillTotal, levelTotal = skill + attack ,level/5
return -(skillTotal * 1.0 + levelTotal), -(skillTotal * 2.0 + levelTotal)
end
setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
local condition = createConditionObject(CONDITION_MUTED)
setConditionParam(condition, CONDITION_PARAM_TICKS, 5000)
setConditionFormula(condition, -3.0, 0, -3.0, 0)
setCombatCondition(combat, condition)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end
function onCastSpell(cid, var)
local jogadorpos = getCreaturePosition(cid)
local target = getCreatureTarget(cid)
local monsterpos = getCreaturePosition(target)
if target == isMonster or isCreature then
doTeleportThing(cid,monsterpos)
doTeleportThing(target,jogadorpos)
doSendMagicEffect(jogadorpos, 3)
doSendMagicEffect(monsterpos, 3)
else
doPlayerSendTextMessage(cid,20,'You can only use it on creatures')
end
end
Obrigado e desculpa qualquer coisa
Link para o comentário
Compartilhar em outros sites
10 respostass a esta questão
Posts Recomendados