Premium Acc - Dúvida

Renato Ribeiro
em Lixeira Pública

Renato Ribeiro

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 06/09/08Posts: 544Gênero: MasculinoChar no Tibia: Hallsiny

Boa Noite amigos scripters (;

 

Bom, eu to começando com scripter, apocarai me deu umas ajudas também (valeu mano) e eu fiz meu primeiro script, porém, não sei se está correta.

Ele funciona assim, quando você clica na estátua, você ganha 10 dias de premium.

Mas quando você clica de novo, a base do storage, não dá mais e aparece uma mensagem "você já pegou sua premium account"

Veja mpra min se está correto, já que, não posso testar inGame no momento.

 

function onUse(cid, item, fromPosition)
if item.actionid == 1585 then 
if getPlayerStorageValue(cid, 1585) <= 0 then 
doPlayerAddPremiumDays(cid, 10) 
setPlayerStorageValue(cid, 1585, 1) 
else 
doPlayerSendCancel(cid, "Sorry, not possible.")
end 
else 
doPlayerSendCancel(cid, "Você já pegou seus 10 dias de premium.")
end 
return TRUE 
end

Minha dúvida é: está correto?

Caso estiver errado, onde está?

Abraços.

locosporot

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/05/10Posts: 30Char no Tibia: [GOD] Caio Felipe

doPlayerSendCancel(cid, "Você já pegou seus 10 dias de premium.")

end acho que tem de tirar issu

locosporot.servegame.com entra ae

 

 

 

http://img12.imageshack.us/i/10178942.png/]10178942.png

 

10178941.png

 

10178944.png

 

10178945.png

 

10178943.png

 

10178946.png

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

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

if item.uid == 1585 and item.itemid == 1466 then

storage = getPlayerStorageValue(cid,1585)

if storage == -1 then

doPlayerAddPremiumDays(cid, 10)

doPlayerSendTextMessage(cid,22,"você ganhou 10 dias depremium account!")

setPlayerStorageValue(cid,1585,1)

else

doPlayerSendTextMessage(cid,22,"Você já pegou seus 10 dias de premium.")

end

end

end

 

Vermelho: ID do statua

 

caso queira sem dar a mensagem dizendo que ganhou a premium retira a linha

 

doPlayerSendTextMessage(cid,22,"você ganhou 10 dias depremium account!")

 

<action uniqueid="1585" script="nomescript.lua"/>

 

ai na propriedade da sua estatua poe

 

UniqueID = 1585

bossisg.png

Renato Ribeiro

avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 06/09/08Posts: 544Gênero: MasculinoChar no Tibia: Hallsiny

Vod, eu só queria saber se está correto do jeito que eu fiz, pois estou aprendendo.

Não estava pedindo um scipt, até porque aqui é dúvida de scripts.

Eu nem vou usar, este script é apenas para praticar.

 

Bom, o apocarai me disse que está correto..

Tá, ou não tá? Apenas isto que quero saber.

 

De qualquer forma, muito obrigado vod.

 

Abraços.

Vodkart

Sumus Validus
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 21/05/10Posts: 3406Gênero: Masculino

não está correto

 

ele acusa que o jogador já tem a storage ou seja dizendo que ja recebeu os dias de premium account

 

e vc tbm uso 2 else

 

sendo que voce soh pode usar um "else" quando abre um "if"

 

exemplo:

 

if doPlayerAddPremiumDays(cid, 10) 
else
doPlayerSendTextMessage(cid,22,"lalala.")
end

 

e não

 

if doPlayerAddPremiumDays(cid, 10)
else
doPlayerSendTextMessage(cid,22,"lalala.")
else
doPlayerSendTextMessage(cid,22,"lelele.")
end

 

sendo que ele só vai executa a primeira funçao que no caso foi "lalala" e nunca vai executa o "lelele"

bossisg.png

locosporot

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/05/10Posts: 30Char no Tibia: [GOD] Caio Felipe

cara vai em scripts e olha la vc aprende rapido

locosporot.servegame.com entra ae

 

 

 

http://img12.imageshack.us/i/10178942.png/]10178942.png

 

10178941.png

 

10178944.png

 

10178945.png

 

10178943.png

 

10178946.png