Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado

@Phineasz Uma gambiarra que posso te sugerir é sempre dar um dia de vip a mais e botar a script para verificar isso.

Por exemplo, o player compra 30 dias e ganhar 31, assim quando chegar no ultima dia ( que vai ser o 31), botar a script pra remover a premium e teleportar o player.

  • Respostas 20
  • Visualizações 1.6k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • 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 doT

  • Verifique se está funcionando da seguinte forma. 1º Quando o player Free account nunca estiver colocado PA logar Ele não irá ser teleportado e nem irá surgir mensagem. 2º Após ele comprar PA

  • 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}

Posted Images

Postado

Faz assim então irmão. Use essa script:

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

Depois crie outro arquivo e coleque o nome para notpremium.lua e coloque isto nele:

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

Em xml:

<event type="login" name="NotPremium" event="script" value="notpremium.lua"/>

login.lua:

registerCreatureEvent(cid, "NotPremium")

 

Editado por Yan Liima (veja o histórico de edições)

════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═══╗

Te Ajudei? Rep + e ficamos Quits

166420979_logoyanliimaornight.png.33f822b8970081a5b3646e85dbfd5934.png

Precisando de ajuda?

discord.png.1ecd188791d0141f74d99db371a2e0a4.png.890d5a38d7bcde75543c72b624a65de1.pngDiscord: Yan Liima #3702

Programador Júnior de LUA, PHP e JavaScript

Juntos somos lendas, separados somos Mitos!

╚══════════════════════════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═════════════════════════════╝

Postado
  • Autor

@Storm Funcionária até mesmo com o player online?

@Yan Liima Eu deixei assim. Tudo certo?

 

Vipkick

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

notpremium

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

login

registerCreatureEvent(cid, "Vipkick")
registerCreatureEvent(cid, "NotPremium")

xml

<event type="login" name="Vipkick" event="script" value="vipkick.lua"/>
<event type="login" name="NotPremium" event="script" value="notpremium.lua"/>

 

Meu Curso sobre Programação para OTServer

Programando OTServer

 

Peça o seu script! Entre agora mesmo no grupo

Developing

 

Conteúdos:

 

Discord: Belmont#7352

Não esqueça do REP+ :)     

Postado
28 minutos atrás, Phineasz disse:

@Storm Funcionária até mesmo com o player online?

@Yan Liima Eu deixei assim. Tudo certo?

 

Vipkick


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

notpremium


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

login


registerCreatureEvent(cid, "Vipkick")
registerCreatureEvent(cid, "NotPremium")

xml


<event type="login" name="Vipkick" event="script" value="vipkick.lua"/>
<event type="login" name="NotPremium" event="script" value="notpremium.lua"/>

 

 

Certo! testa ai e me diz se deu certo

════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═══╗

Te Ajudei? Rep + e ficamos Quits

166420979_logoyanliimaornight.png.33f822b8970081a5b3646e85dbfd5934.png

Precisando de ajuda?

discord.png.1ecd188791d0141f74d99db371a2e0a4.png.890d5a38d7bcde75543c72b624a65de1.pngDiscord: Yan Liima #3702

Programador Júnior de LUA, PHP e JavaScript

Juntos somos lendas, separados somos Mitos!

╚══════════════════════════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═════════════════════════════╝

Postado

Nada tá dano certo porque o cara já começa com um dia de Premium account então o script vai checar se é somente premium account e vai mudar o storage.

Agora na hora de comprar uma PA no NPC ou item que der os dias de Premium adicione essa linha abaixo:

setPlayerStorageValue(cid, 45586, 1)   

e mude os demais pra esse:

Spoiler

-- local cfg ={
	-- pos = {x = 153, y = 52, z = 7},
	-- TeleportTemple = "yes" -- Se após o Jogador for enviado para o Templo continuará sendo enviado mais vezes até ele obter premium novamente.
	-- Caso queira que ele seja enviado para o templo somente uma vez é só colcoar "no"
-- }
-- 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 o script abaixo. 10 Minutos
----------------------
-- if isPremium(cid) == TRUE and getPlayerStorageValue(cid, 45586) == 1 then -- se o Player for premium account
-- setPlayerStorageValue(cid, 45586, 2)
-- elseif isPremium(cid) == FALSE and getPlayerStorageValue(cid, 45586) == 2 then -- se o Player não for premium account e a premium acabou
-- doTeleportThing(cid, cfg.pos)
-- doSendMagicEffect(getPlayerPosition(cid), 240)
-- doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.")
-- if (cfg.TeleportTemple == "no") then
-- setPlayerStorageValue(cid, 45586, 1)
-- end
-- end
--------------------------
-- last_interval= os.clock()
-- return true
-- end   
-- return false
-- end

-- E caso só queira que fique aparecendo a mensagem

function onThink(cid, interval)
if last_interval == nil then last_interval= os.clock()  end
if (os.clock() - last_interval) > 10*60 then -- 10 minutos
------------------------
if isPremium(cid) == FALSE and getPlayerStorageValue(cid,45586) == 2 then
doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.")
end
----------------------------
last_interval= os.clock()
return true
end   
return false
end

 

 

 

Spoiler

function onLogin(cid)
	local pos = {x = 153, y = 52, z = 7}

if isPremium(cid) == TRUE and getPlayerStorageValue(cid,45586) == 1 then
	setPlayerStorageValue(cid,45586,2)

elseif isPremium(cid) == FALSE and getPlayerStorageValue(cid,45586) == 2 then
	doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.")
	doTeleportThing(cid, pos)
	doPlayerSetTown(cid,1)
	doSendMagicEffect(getPlayerPosition(cid), 240)
end
	return TRUE
end

--Caso Queira que ele seja Teleportado ao logar para o POS somente uma vez. e toda vez que ele logar só fique surgindo a mensagem e não teleportado.
-- function onLogin(cid)
	-- local pos = {x = 153, y = 52, z = 7}

-- if isPremium(cid) == TRUE and getPlayerStorageValue(cid,45586) == 1 then
	-- setPlayerStorageValue(cid,45586,2)

-- elseif isPremium(cid) == FALSE and getPlayerStorageValue(cid,45586) == 2 then
	-- doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.")
	-- doTeleportThing(cid, pos)
	-- doPlayerSetTown(cid,1)
	-- doSendMagicEffect(getPlayerPosition(cid), 240)
	-- setPlayerStorageValue(cid,45586,1)
	-- setPlayerStorageValue(cid,78059,1)
-- elseif isPremium(cid) == FALSE and getPlayerStorageValue(cid,78059) == 1 then
	-- doPlayerPopupFYI(cid, "Sua Premium Expirou!\nNao Deixe De Visitar Nosso SHOP.")
-- end
	-- return TRUE
-- end

 

 

Assim irá checar se é Premium Account e com a Storage que foi dada pelo NPC/Item que da a Premium comprada.

if isPremium(cid) == TRUE and getPlayerStorageValue(cid, 45586) == 1 then

Veja ai se vai funcionar.

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo