KE
pedido

tempo para usar magia diferente

Por KennyConrad, 27 de abr. de 2013 em Scripts

6
907
KennyConradK
27 de abril de 2013 às 20:41

queria colocar um tipo de cowndown diferente nas minhas magias pro meu ot 8.60

 

exemplo vejam essa runa

 

function onUse(cid, item, frompos, item2, topos) --teleporte Rune By snokiuthu
local storage = 11548 -- n mexa
local exhausted = 250 -- tempo em segundos

if (getPlayerStorageValue(cid, storage) >= os.time()) then
return doPlayerSendCancel(cid, "Você tem que esperar " .. getPlayerStorageValue(cid, storage) - os.time() .. " segundos para usar novamente.")
end

local effect = 10
local message = "You were teleported to "..getTownName(getPlayerTown(cid)).." town."
local errormessage = "Sorry, you cannot use this scroll in a battle."
local town = getTownTemplePosition(getPlayerTown(cid))
---
if getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then
return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, errormessage)
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, message)
doTeleportThing(cid,town)
doSendMagicEffect(town,effect)
setPlayerStorageValue(cid,storage,os.time()+exhausted)
return
end

 

ai queria colocar pra essa magia abaixo so poder usar de 10 em 10 segundos

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1.4, 0, 1.6, 2)



function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

se alguem puder me ajudar agradeço e dou REP +

Editado Abril 27 por KennyxD

RoksasR
27 de abril de 2013 às 20:44

Ficaria assim:

 

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1.4, 0, 1.6, 2)



function onCastSpell(cid, var)

if getPlayerStorageValue(cid, 20429) > os.time() then
doPlayerSendTextMessage(cid, 20, "Wait "..getPlayerStorageValue(cid, 20429) - os.time().." seconds to use again!") return false end

return doCombat(cid, combat, var) and setPlayerStorageValue(cid, 20429, os.time() + 10)
end

 

 

Mas, para que isso? É só por na tag do spells.xml, aonde tem "exhaustion"

Alterar o valor para 10000

Editado Abril 27 por Roksas

KennyConradK
27 de abril de 2013 às 20:51

nao meu fi se eu por na tag exhasuted vai dar exhausted nas outras magias tbm e eu n quero isso entende ? quero essa magia como se fosse um cowndow pra combar as magia

 

@edit n fico como queria =( queria igual no exemplo da magia que dei

 

return doPlayerSendCancel(cid, "Você tem que esperar " .. getPlayerStorageValue(cid, storage) - os.time() .. " segundos para usar novamente.")

 

assim ao player usar mostra o tempo que falta 10,9,8,7,6,5,4,3,2,1.

Editado Abril 27 por KennyxD

RoksasR
27 de abril de 2013 às 20:58

Post editado lá em cima, tenta agora.

KennyConradK
27 de abril de 2013 às 21:13

vlw mano dei uma editadinha aki e fico do geito que eu queria vlw msm REP +

 

fico assim dps que editei 1 poquinho

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, TRUE)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ETHEREALSPEAR)
setCombatFormula(combat, COMBAT_FORMULA_SKILL, 1.4, 0, 1.6, 2)



function onCastSpell(cid, var)

if getPlayerStorageValue(cid, 20429) > os.time() then
doPlayerSendCancel(cid,  "Você tem que esperar "..getPlayerStorageValue(cid, 20429) - os.time().." segundos para usar a magia novamente.") return false end

return doCombat(cid, combat, var) and setPlayerStorageValue(cid, 20429, os.time() + 10)
end

RoksasR
27 de abril de 2013 às 21:19

Boa rsrs. Espero que faça bom uso e boa sorte :)

Tópico movido.