IV
erro

Action que grava a life

Por IvanAppel, 17 de dez. de 2013 em Scripts

resolvido
script
24
2.4k
17 de dezembro de 2013 às 18:33

 

Não sei entendi direito o pedido, veja se é isso mesmo que eu fiz: uma pessoa usa o item, é armazenado neste o valor da vida atual do jogador. Na próxima vez que o item for usado, a vida do jogador será alterada para este valor. Aí, na próxima vez, será armazenado outro valor, com a vida no jogador no momento. E assim vai. É isso mesmo?

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, "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, quest_status, -1)
        doPlayerAddHealth(cid, -(getPlayerHealth(cid) - 1))
        doPlayerAddHealth(cid, hp - 1)
        doSendMagicEffect(frompos, 11)
    end
    return true
end

 

Não testei seu script ainda ja edito o post dizendo se funcionou ou não, eu quero que ele faça assim, eu dei use e tou com 1312 de vida, quando eu der use denovo volte pra 1312 só isso (:

 

@OriGM

Não deu pra dar use no item com a script que tu mandou

 

@edit

Quando tentei dar use no item eu levei debug zipter =/

Editado Dezembro 17 por eryrrel

zipter98Z
17 de dezembro de 2013 às 23:03

Talvez a causa do debug seja a cor da mensagem que coloquei (27). Editei meu código acima, se puder testar novamente.

18 de dezembro de 2013 às 10:26

Não passou do else =x

FabianoxtzF
18 de dezembro de 2013 às 14:02

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+

18 de dezembro de 2013 às 17:31

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 ¬¬

zipter98Z
18 de dezembro de 2013 às 18:35

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
18 de dezembro de 2013 às 20:25

Já consegui peço que fechem o tópico e obrigado a todos que tentaram me ajudar ;)

zipter98Z
18 de dezembro de 2013 às 20:31

Tópico movido para a seção de dúvidas e pedidos resolvidos.

4 meses depois...
WiihtopW
02 de abril de 2014 às 01:22

podia postar ne ?