Postado Julho 26, 2018 6 anos base: 1.2 Boa noite TK! Então eu estou com um script de adicionar X dias de premium quando o player alcançar Y nível, mas tem um problema grave! Toda vez que o servidor reiniciar (mesmo dando save) se o player upar ele ganha mais X dias de premium.arquivo.lua: Spoiler local config = { level = 30, days = 7 } function onAdvance(player, oldlevel, newlevel) if getPlayerLevel(player) >= config.level and getGlobalStorageValue(player:getAccountId(player)+321) <= 0 then doPlayerAddPremiumDays(player, config.days) setGlobalStorageValue(player:getAccountId(player)+321, 1) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você ganhou "..config.days.." dias de premium por alcançar level "..config.level.." em pelo menos um char de sua account. Você não irá ganhar de novo caso upe level "..config.level.." em outro char para pegar sua premium basta relogar.") end return true end Creaturescripts.xml: Spoiler <event type="advance" name="gainpalvl" script="gainpalvl.lua"/> login.lua Spoiler player:registerEvent("gainpalvl")
Postado Julho 26, 2018 6 anos local config = { level = 30, days = 7 } function onAdvance(player, oldlevel, newlevel) if player:getLevel() >= config.level and player:getStorageValue(player:getAccountId(player)+321) <= 0 then doPlayerAddPremiumDays(player, config.days) player:setStorageValue(player:getAccountId(player)+321, 1) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você ganhou "..config.days.." dias de premium por alcançar level "..config.level.." em pelo menos um char de sua account. Você não irá ganhar de novo caso upe level "..config.level.." em outro char para pegar sua premium basta relogar.") end return true end Testa ai, não fiz o teste ! Meus trabalhos: [Movements] TFS 1.1+ Area Hardcore [Movements] TFS 1.1+ Tile Party [Action] TFS 1.1+ Bau diário [Action] TFS 1.1+ Guild Dungeon Lever [Talkactions] TFS 0.3.6 / 0.4 Quest Hunt por Tempo Contato: Discord: Tataboy67#4934
Postado Julho 26, 2018 6 anos Autor 14 minutos atrás, tataboy67 disse: local config = { level = 30, days = 7 } function onAdvance(player, oldlevel, newlevel) if player:getLevel() >= config.level and player:getStorageValue(player:getAccountId(player)+321) <= 0 then doPlayerAddPremiumDays(player, config.days) player:setStorageValue(player:getAccountId(player)+321, 1) doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você ganhou "..config.days.." dias de premium por alcançar level "..config.level.." em pelo menos um char de sua account. Você não irá ganhar de novo caso upe level "..config.level.." em outro char para pegar sua premium basta relogar.") end return true end Testa ai, não fiz o teste ! tudo bem tataboy? Então meu amigo o script funcionou parcialmente, quando o player tem mais de um char na conta todos que uparem o x level irão ganhar mais y dias de premium, entretanto o erro que estava dando antes quando o servidor reiniciava o player podia upar mais 1 level que ganhava o bônus de premium novamente foi resolvido, agora quando o servidor da o save e reinicia o player não ganha mais os dias de premium.
Postado Julho 26, 2018 6 anos 9 minutos atrás, Navegante disse: tudo bem tataboy? Então meu amigo o script funcionou parcialmente, quando o player tem mais de um char na conta todos que uparem o x level irão ganhar mais y dias de premium, entretanto o erro que estava dando antes quando o servidor reiniciava o player podia upar mais 1 level que ganhava o bônus de premium novamente foi resolvido, agora quando o servidor da o save e reinicia o player não ganha mais os dias de premium. Pera, eu não entendi muito bem... Essa parte de adicionar o premium, você deve limitar para que o sistema de VIP só funcione em characters e não em accounts, sacou? Vamos supor que um jogador faça uma Quest e pegue um item de VIP Days, ele usa e ganha 3 dias de vip em todos os Character's... Porem você tem de alterar o script de VIP, para que quando adicionar o VIP, ele adicione apenas em 1 char e não em toda a conta, entendeu? Meus trabalhos: [Movements] TFS 1.1+ Area Hardcore [Movements] TFS 1.1+ Tile Party [Action] TFS 1.1+ Bau diário [Action] TFS 1.1+ Guild Dungeon Lever [Talkactions] TFS 0.3.6 / 0.4 Quest Hunt por Tempo Contato: Discord: Tataboy67#4934
Postado Julho 26, 2018 6 anos Autor 26 minutos atrás, tataboy67 disse: Pera, eu não entendi muito bem... Essa parte de adicionar o premium, você deve limitar para que o sistema de VIP só funcione em characters e não em accounts, sacou? Vamos supor que um jogador faça uma Quest e pegue um item de VIP Days, ele usa e ganha 3 dias de vip em todos os Character's... Porem você tem de alterar o script de VIP, para que quando adicionar o VIP, ele adicione apenas em 1 char e não em toda a conta, entendeu? vamos la! O script foi criado pra funcioanar da seguinte formar. quando o player alcançar nível 30 ele vai ganhar automaticamente 7 dias de Premium account, mas caso ele upei em outros chares e alcance o nivel 30 novamente ele nao irá ganhar os dias premium. Não seria possível colocar uma storage na account do player, fazendo com que ele não ganhe novamente os dias de premium, nem upando outro char e nem quando servidor reiniciar?
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.