Ir para conteúdo
  • 0

Action que grava a life


IvanAppel

Pergunta

Bom galera antes de tudo olá, eu entreinomodogambiarra peguei um action na pasta e modifiquei e ficou assim :

 

function onUse(cid, item, frompos, item2, topos)

queststatus = getPlayerStorageValue(cid,38347)
if queststatus == -1 then
hp = getPlayerHealth(cid)
doPlayerSendTextMessage(cid,18,"Actived.")
setPlayerStorageValue(cid,38347,1)
doSendMagicEffect(frompos,11)
else
setPlayerStorageValue(cid,38347,-1)
doPlayerAddHealth(cid,hp)
doSendMagicEffect(frompos,11)
doSendAnimatedText(getPlayerPosition(cid), "!!!", 71)
setPlayerStorageValue(cid,38347,-1)
doPlayerSendTextMessage(cid,18,"Used.")
end
end

Bom eu quero que o script grave minha life ou seja, digamos que meu total de life é 2500, e eu esteja apenas com 2000, dou use no item ele grava o numero 2000 ai se alguém me dar um hit e exemplo eu ficar com 500 de life quero que quando eu de use de novo no item a minha life volte pra 2000, só que não achei o erro porque ao em vez de "setar" a vida para 2000 ele adiciona 2000 de vida assim vai para 2500.Lembrando que esta versão é 7.81.

 

Se alguém puder me ajudar eu agradeço, obrigado ;)

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Tenta assim.

 

 

 

function onUse(cid, item, frompos, item2, topos)

local quest_status = getPlayerStorageValue(cid, 38347)

if quest_status <= 0 then
local life = getPlayerHealth(cid)
doPlayerSendTextMessage(cid, 27, "Ativado. Heal: "..life..".")
setPlayerStorageValue(cid, quest_status, 1)
doItemSetAttribute(item.uid, "Life", life)
doItemSetAttribute
(item.uid, "description", "HP: "..life..".")
doSendMagicEffect(frompos, 11)
else
local hp = getItemAttribute(item.uid, "Life") or 0
doSendAnimatedText(getPlayerPosition(cid), "!!!", 71)
doPlayerSendTextMessage(cid, 27, "Sua vida subiu para "..hp..".")
setPlayerStorageValue(cid, quest_status, -1)
doPlayerAddHealth(cid, -(getPlayerHealth(cid) - 1))
doPlayerAddHealth(cid, hp 1)
doSendMagicEffect(frompos, 11)
end
return true
end

 

Ajudei? REP+

Link para o comentário
Compartilhar em outros sites

  • 0

Tenta assim.

 

 

 

function onUse(cid, item, frompos, item2, topos)

 

local quest_status = getPlayerStorageValue(cid, 38347)

 

if quest_status <= 0 then

local life = getPlayerHealth(cid)

doPlayerSendTextMessage(cid, 27, "Ativado. Heal: "..life..".")

setPlayerStorageValue(cid, quest_status, 1)

doItemSetAttribute(item.uid, "Life", life)

doItemSetAttribute(item.uid, "description", "HP: "..life..".")

doSendMagicEffect(frompos, 11)

else

local hp = getItemAttribute(item.uid, "Life") or 0

doSendAnimatedText(getPlayerPosition(cid), "!!!", 71)

doPlayerSendTextMessage(cid, 27, "Sua vida subiu para "..hp..".")

setPlayerStorageValue(cid, quest_status, -1)

doPlayerAddHealth(cid, -(getPlayerHealth(cid) - 1))

doPlayerAddHealth(cid, hp 1)

doSendMagicEffect(frompos, 11)

end

return true

end

 

Ajudei? REP+

Ha Ha Ha ta igual o do zipter só tem uns traços menos ¬¬

Link para o comentário
Compartilhar em outros sites

  • 0

Ops, fail ._.

 

function onUse(cid, item, frompos, item2, topos)
 
local quest_status = getPlayerStorageValue(cid, 38347)
 
    if quest_status <= 0 then
        local life = getPlayerHealth(cid)
        doPlayerSendTextMessage(cid, 27, "Ativado. Heal: "..life..".")
        setPlayerStorageValue(cid, 38347, 1)
        doItemSetAttribute(item.uid, "vida", life) 
        doItemSetAttribute(item.uid, "description", "HP: "..life..".")
        doSendMagicEffect(frompos, 11)
    else
        local hp = getItemAttribute(item.uid, "vida") or 0
        doSendAnimatedText(getPlayerPosition(cid), "!!!", 71)
        doPlayerSendTextMessage(cid, 27, "Usado. Sua vida agora é "..hp..".")
        setPlayerStorageValue(cid, 38347, -1)
        doPlayerAddHealth(cid, -(getPlayerHealth(cid) - 1))
        doPlayerAddHealth(cid, hp - 1)
        doSendMagicEffect(frompos, 11)
    end
    return true
end
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...