Postado Dezembro 21, 2018 6 anos Autor Em 19/12/2018 em 21:05, Roy disse: Você pode optar pelo Script do Yan Liima também para quando o player relogar/logar ser teleportado para o templo. E esse para checar o player dentro do jogo. Em Creaturescripts.xml adicione: <event type="think" name="CheckPrem" event="script" value="CheckPrem.lua"/> em login.lua registe. registerCreatureEvent(cid, "CheckPrem") Agora crie um arquivo com nome CheckPrem.lua e adicione. Mostrar conteúdo oculto function onThink(cid, interval) if last_interval == nil then last_interval= os.clock() end if (os.clock() - last_interval) > 10*60 then --- Em quantos minutos irá checar - 10 minutos if isPremium(cid) == TRUE then -- se o Player for premium account setPlayerStorageValue(cid, 1000, 1) elseif isPremium(cid) == FALSE then -- se o Player não for premium account setPlayerStorageValue(cid, 1000, -1) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doSendMagicEffect(getTownTemplePosition(getPlayerTown(cid)), 10) doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.") end last_interval= os.clock() return true end return false end Esse script também, fica jogando todos os jogadores para o templo e fala que a premium expirou, sem mesmo tendo que acabado a premium, alias a conta nunca foi premium account. Também se não fosse por isso acho que funcionaria 100% Meu Curso sobre Programação para OTServer Programando OTServer Peça o seu script! Entre agora mesmo no grupo Developing Conteúdos: Spoiler • Cidade [8.60] • Cave de Boss • Widget Gesior • Autoloot 100% • [Old Client] Como Hookar Dll • Configurando VPS Windowns • [Solução] Código Caracteres Especiais Discord: Belmont#7352 Não esqueça do REP+
Postado Dezembro 22, 2018 6 anos Autor 20 horas atrás, Yan Liima disse: O primeiro que te mandei com certeza irá dar certo. Da até pra fazer por outro script, mas não será necessario. Teste que irá dar certo. function onLogin(cid) local pos = {x = 153, y = 52, z = 7} if isPremium(cid) then setPlayerStorageValue(cid, 6787656, 1) elseif getPlayerStorageValue(cid, 6787656) == 1 and not isPremium(cid) then doTeleportThing(cid, pos) doPlayerSetTown(cid,1) doSendMagicEffect(getPlayerPosition(cid), 240) setPlayerStorageValue(cid, 6787656, -1) setPlayerStorageValue(cid, 6787657, 1) doRemoveCreature(cid) end return TRUE end function onLogin(cid) if getPlayerStorageValue(cid, 6787657) == 1 then doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.") setPlayerStorageValue(cid, 6787657, -1) end return TRUE end Poderia verificar a linha que fala que a Premium Expirou por favor? Por que ela não estar aparecendo mais não Meu Curso sobre Programação para OTServer Programando OTServer Peça o seu script! Entre agora mesmo no grupo Developing Conteúdos: Spoiler • Cidade [8.60] • Cave de Boss • Widget Gesior • Autoloot 100% • [Old Client] Como Hookar Dll • Configurando VPS Windowns • [Solução] Código Caracteres Especiais Discord: Belmont#7352 Não esqueça do REP+
Postado Dezembro 22, 2018 6 anos @Phineasz Faz assim, vai na script que adiciona os dias de VIP e acrescente a linha; local storage = 342555 -- Tem que ser a mesma na script que mandará ao DP quando a vip acabar setPlayerStorageValue(cid, storage, 1) E depois usa essa para mandar o player ao DP quando a vip acabar; local pos = {x = 153, y = 52, z = 7} -- Posição que será teleportado ao acabar a vip local storage = 342555 -- Storage adicionada no item que da premium function onLogin(cid) if getCreatureStorage(cid, storage) == 1 and not isPremium(cid) then doTeleportThing(cid, pos) doSendMagicEffect(getPlayerPosition(cid), 3) setPlayerStorageValue(cid, storage, -1) doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.") return true end return true end
Postado Dezembro 22, 2018 6 anos Autor @Storm Vou testar aqui, amanhã eu posso te marcar aqui para te dizer o resultado? OBS: Não sei se isso faz muita diferença, mais vou dizer mesmo assim por que se fizer talvez possa ajudar. Assim que é criado uma nova conta é adicionado 1 Dia De Premium Account, caso você queria virar Premium Account de novo é preciso comprar o item no Shop do servidor, o script desse item é este aqui function onUse(cid, item, frompos, item2, topos) local storage = 342555 -- Tem que ser a mesma na script que mandará ao DP quando a vip acabar setPlayerStorageValue(cid, storage, 1) local config={ dias="15" } doPlayerAddPremiumDays(cid, config.dias) doPlayerSendTextMessage(cid,22,"Voce ganhou 15 dias de premium account.") doRemoveItem(item.uid,1) return TRUE end O um dia de premium account que é ganho quando cria uma conta nova é do próprio site, configurado no config.php Meu Curso sobre Programação para OTServer Programando OTServer Peça o seu script! Entre agora mesmo no grupo Developing Conteúdos: Spoiler • Cidade [8.60] • Cave de Boss • Widget Gesior • Autoloot 100% • [Old Client] Como Hookar Dll • Configurando VPS Windowns • [Solução] Código Caracteres Especiais Discord: Belmont#7352 Não esqueça do REP+
Postado Dezembro 23, 2018 6 anos Autor @Storm Não funcionou ele nem jogou o jogador para o templo como também não apareceu a mensagem O script que eu postei no tópico ele funciona 90% sabe? O que eu estou pedindo é uma forma que o script cheque assim que a premium account acabar o jogador ir direto para o templo mesmo ele estando logado, sem precisar relogar ou o SS, o único defeito desse script é que você pode ficar premium account pra sempre se não relogar. Alguma forma de quicar o jogador, não sei, mais o script logo abaixo ele funciona. function onLogin(cid) local pos = {x = 153, y = 52, z = 7} if isPremium(cid) then setPlayerStorageValue(cid, 6787656, 1) elseif getPlayerStorageValue(cid, 6787656) == 1 and not isPremium(cid) then doTeleportThing(cid, pos) doPlayerSetTown(cid,1) doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.") doSendMagicEffect(getPlayerPosition(cid), 240) setPlayerStorageValue(cid, 6787656, -1) end return TRUE end @Roy @Storm @Yan Liima Meu Curso sobre Programação para OTServer Programando OTServer Peça o seu script! Entre agora mesmo no grupo Developing Conteúdos: Spoiler • Cidade [8.60] • Cave de Boss • Widget Gesior • Autoloot 100% • [Old Client] Como Hookar Dll • Configurando VPS Windowns • [Solução] Código Caracteres Especiais Discord: Belmont#7352 Não esqueça do REP+
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.