Ir para conteúdo
  • Cadastre-se

Normal Como usar um item e virar Premium Account?


Posts Recomendados

Oi tibianos, tudo certo?

Bom, comecei a scriptar recentemente (ontem), e gostaria de saber como eu faço para adquirir uma certa quantia de premium account por x dias, por exemplo, por 1 dia. 

Eu modifiquei o norseman doll, pra ser nomeado de 1 dia VIP. E peguei um sistema que já postaram aqui há anos:

 

Spoiler

function onUse(cid, item, fromPosition, itemEx, toPosition)
local config={
removeOnUse = "yes"
}
local days = 1 -- coloque os dias que serão a VIP!

local daysvalue = days * 24 * 60 * 60

local storageplayer = getPlayerStorageValue(cid, 13500)

local timenow = os.time()

if getPlayerStorageValue(cid, 13500) - os.time() <= 0 then

time = timenow + daysvalue

else

time = storageplayer + daysvalue

end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!")


setPlayerStorageValue(cid, 13500, time)

local quantity = math.floor((getPlayerStorageValue(cid, 13500) - timenow)/(24 * 60 * 60))

doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. quantity .." dias de VIP restantes.")

if (config.removeOnUse == "yes") then

doRemoveItem(item.uid, 1)

end

return TRUE

end

 

Mas o que acontece, é que eu gostaria de adicionar account premium na conta do cara. Pore xemplo, depois do "doPlayerSendTextMessage" colocar algo que possa adicionar premium account para uma pessoa. 

Ou se preferirem, mandar um sistema parecido, só que adicione premium account. 

 

Muito obrigado :D 

Link para o post
Compartilhar em outros sites
1 hora atrás, Scrowzer Dark disse:

Oi tibianos, tudo certo?

Bom, comecei a scriptar recentemente (ontem), e gostaria de saber como eu faço para adquirir uma certa quantia de premium account por x dias, por exemplo, por 1 dia. 

Eu modifiquei o norseman doll, pra ser nomeado de 1 dia VIP. E peguei um sistema que já postaram aqui há anos:

 

  Ocultar conteúdo

function onUse(cid, item, fromPosition, itemEx, toPosition)
local config={
removeOnUse = "yes"
}
local days = 1 -- coloque os dias que serão a VIP!

local daysvalue = days * 24 * 60 * 60

local storageplayer = getPlayerStorageValue(cid, 13500)

local timenow = os.time()

if getPlayerStorageValue(cid, 13500) - os.time() <= 0 then

time = timenow + daysvalue

else

time = storageplayer + daysvalue

end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!")


setPlayerStorageValue(cid, 13500, time)

local quantity = math.floor((getPlayerStorageValue(cid, 13500) - timenow)/(24 * 60 * 60))

doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. quantity .." dias de VIP restantes.")

if (config.removeOnUse == "yes") then

doRemoveItem(item.uid, 1)

end

return TRUE

end

 

Mas o que acontece, é que eu gostaria de adicionar account premium na conta do cara. Pore xemplo, depois do "doPlayerSendTextMessage" colocar algo que possa adicionar premium account para uma pessoa. 

Ou se preferirem, mandar um sistema parecido, só que adicione premium account. 

 

Muito obrigado :D 

 

doPlayerAddPremiumDays(cid, days)

 

Esta é a função que você quer, apenas bote a quantia de dias no lugar de days.

 

--EDIT cara esse script ai vai te dar storage, troque por esse:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if doRemoveItem(item.uid, 1) then
local days = 1 -- coloque os dias que serão a VIP!
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!")
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. getPlayerPremiumDays(cid) + days .." dias de VIP restantes.")
doPlayerAddPremiumDays(cid, days)
return true
end
end

em local days = 1

Mude 1 pela quantia de dias que o player vai ganhar.

Editado por luangop
tutorial (veja o histórico de edições)

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites

Muito obrigado, @luangop! Problema resolvido, mas não fechem o tópico por agora, porque se não for pedir muito, gostaria que me ensinasse como se faz pra somar os dias na mensagem.

 

Por exemplo, se eu tenho 1 dia VIP, e comprei outro dia VIP e usei, aparece que "Agora você possui VIP por" dias somados (que seria 2 no caso) "dias restantes"

Ps: Ainda vou testar o Script

PS2:Agora que testei, vi que o proprio SCRIPT já tem isso.

 

E se não for pedir muito novamente, gostaria de perguntar uma coisa: Pra adicionar itens de 7, 30 e 60 dias, eu preciso criar outras classes .lua? Obrigado! :D

Editado por Scrowzer Dark (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
7 horas atrás, Scrowzer Dark disse:

Muito obrigado, @luangop! Problema resolvido, mas não fechem o tópico por agora, porque se não for pedir muito, gostaria que me ensinasse como se faz pra somar os dias na mensagem.

 

Por exemplo, se eu tenho 1 dia VIP, e comprei outro dia VIP e usei, aparece que "Agora você possui VIP por" dias somados (que seria 2 no caso) "dias restantes"

Ps: Ainda vou testar o Script

PS2:Agora que testei, vi que o proprio SCRIPT já tem isso.

 

E se não for pedir muito novamente, gostaria de perguntar uma coisa: Pra adicionar itens de 7, 30 e 60 dias, eu preciso criar outras classes .lua? Obrigado! :D

 

Eu ja tinha botado a função de somar os dias..

Citar

getPlayerPremiumDays(cid) + days

 

Sobre 7, 30 e 60 dias, substitua seu script por esse:

function onUse(cid, item, fromPosition, itemEx, toPosition)
if doRemoveItem(item.uid, 1) then
if item.itemid == XXXX then
days = 7
elseif item.itemid == XXXX then
days = 30
elseif item.itemid == XXXX then
days = 60
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Algo deu errado....")
return true
end
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens! Agora voce possui VIP por ".. days .." dias restantes! Acesso a areas exclusivas e compra de outros items foram concedidas a voce!")
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce tem ".. getPlayerPremiumDays(cid) + days .." dias de VIP restantes.")
doPlayerAddPremiumDays(cid, days)
return true
end
end

Explicando:

if item.itemid == XXXX then
days = 7
elseif item.itemid == XXXX then
days = 30
elseif item.itemid == XXXX then
days = 60

 

Onde ta XXXX coloca o ID do item de 7 dias

Onde ta XXXX coloca o ID do item de 30 dias

Onde ta XXXX coloca o ID do item de 60 dias

 

Na tag do actions.xml, adicione o ID dos 3 items. Dessa forma:

action itemid="XXXX;XXXX ;XXXX "

 

 

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
33 minutos atrás, luangop disse:

Poderia ter dado REP+ e melhor resposta né :'(

 

Ops, kkkkkkkkkkkkk. Eu esqueci, desculpa kkk

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por Vitor Bicaleto
      Galera to com o script do addon doll aqui, quando eu digito apenas "!addon" ele aparece assim: Digite novamente, algo está errado!"
      quando digito por exemplo: "!addon citizen" ele não funciona e não da nenhum erro
       
      mesma coisa acontece com o mount doll.. 
    • Por Ayron5
      Substitui uma stone no serve, deu tudo certo fora  esse  erro ajudem  Valendo  Rep+  Grato  

      Erro: data/actions/scripts/boost.lua:557: table index is nil
       [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua)

      Script:
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo