PE

Poção Que Regenera O Soul Points

Por pedrizito15, 10 de mai. de 2012 em Scripts

/\poção/\
19
3.2k
saulosS
19 de maio de 2012 às 21:34

Eu tentei edita um health potion eu sou inisiante na area de script mas ve se vai funcioanr e os scripters ai se tiver errado me fala como consertar pois eu amo fazer script ^^ rsrs

 

Vai na pasta do ot\actions\scripts\liquids e crie uma pasta com o seguinte nome : soul_potione coloca la dentro o seguinte

 

local MIN = 150 ---minimo de soul que pode recuperar se quiser aumente ou diminua

local MAX = 300 ---maximo de soul que pode recuperar se quiser aumente ou diminua

 

local exhaust = createConditionObject(CONDITION_EXHAUST)

setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100))

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

if isPlayer(itemEx.uid) == FALSE then

return FALSE

end

 

if hasCondition(cid, CONDITION_EXHAUST_HEAL) == TRUE then

doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)

return TRUE

end

 

if doCreatureAddSoul(itemEx.uid, math.random(MIN, MAX)) == LUA_ERROR then -----aki tava doCreatureAddHealth e eu mudei para Soul

return FALSE

end

 

doAddCondition(cid, exhaust)

doSendMagicEffect(getThingPos(itemEx.uid), CONST_ME_MAGIC_BLUE)

doCreatureSay(itemEx.uid, "Aaaah...", TALKTYPE_ORANGE_1)

doRemoveItem(item.uid) ----- aki e e se vc quiser que nao seja infinita se quiser que seja so tirar eu axo ne :/

return TRUE

end

 

 

Testa ai se nao der desculpe mais nao sei como eu disse sou novato

Editado Maio 19 por Lordfire

pedrizito15P
20 de maio de 2012 às 10:05

saulins o seu não funfo

jhon992J
20 de maio de 2012 às 10:30

Oque o @saulins tava tentando fazer era colocar exausted. Então achei lgl por exausted e te passar pq pode ser útil:

local classeSoul = {
   [1] = 200, -- coloque o id da classe entre os COLCHETES e a quantidade de soul do lado.
   [2] = 300,
   [3] = 250,
   [4] = 100
}

local porcentMax = 20 -- o potion vai encher no maximo 20% de soul, ou seja, se o player tiver no maximo 100 de soul o potion vai encher de 1 á 20 de soul.
local exausted = 3 -- aqui você poem o tempo em segundos que o exausted vai durar.

function onUse(cid, item, frompos, itemEx, topos)
if getPlayerStorageValue(cid, 43216) > os.time() then
   doPlayerSendCancel(cid, "You are exausted, wait "..(getPlayerStorageValue(cid, 43216) - os.time()).." seconds.")
return true
end
   if getPlayerSoul(cid) < classeSoul[getPlayerVocation(cid)] then
       doPlayerAddSoul(cid,math.random(1,classeSoul[getPlayerVocation(cid)]*(porcentMax/100)))
       doSendMagicEffect(getCreaturePosition(cid), 13)
       setPlayerStorageValue(cid, 43216, os.time()+exausted)
       doRemoveItem(item.uid)
   else
       doPlayerSendCancel(cid, "Sorry, you are max soul.")
       doSendMagicEffect(getCreaturePosition(cid), 2)
   end
return true
end

saulosS
25 de maio de 2012 às 20:12

jhon992 se poderia me adicionar no msn para me ensinar coisas basicas?