Ir para conteúdo
  • Cadastre-se

Script para ganhar pontos no site (shop) ficando 24 horas online


Posts Recomendados

Nome do Script: Script para ganhar pontos no site (shop) ficando 24 horas online
Versão Utilizada: 9.83
Servidor Utilizado: TFS 0.4 
Nível de Experiência: Complicado.
Informações Extras: --

 

 

Olá pessoal, gostaria de saber se existe um script para ganhar pontos vips (shop) para cada players que ficar 24 horas online no servidor.

 

 

Comandos:

 

 

!tempovip - Esse comando serviria para verificar quanto tempo o player já está online.

 

!trocarpontosvips - Esse comando serviria para trocar a quantidade de horas por pontos, por exemplo:

 

 

- O player dá o comando !tempovip e verifica que o mesmo tem 48 horas online, sendo assim ele poderia  trocar seu tempo para os pontos, neste caso o mesmo ganharia 2 pontos.

 

 

Mensagens do Script.

 

 

Quando o player tentar executar o comando “trocarpontosvips” e ele não ter as 24 horas para realizar a troca vir a mensagem “VOCE AINDA NÃO TEM TEMPO ONLINE PARA REALIZAR A TROCA”

Link para o post
Compartilhar em outros sites
  • 2 weeks later...

Nome do script : P Points system v1
Versão testada : TFS 0.4
Cred
itos : LsM

 

Como funciona :

O sistema funciona como uma recompensa ao player por ficar online por um certo tempo. O player, ao ficar online por um certo intervalo de tempo programado no código, receberá uma quantidade de pontos "P" a qual também se pode alterar.

O objetivo foi fazer com que os players se sintam incentivados a ficar online por um maior período de tempo para que recebam tais moedas. Essa é, definitivamente, uma forma fácil de se alcançar um número maior de players online, já que a ideia foi retirada de um MMORPG online de grande sucesso.

Como utilizar :
Como o sistema tem como foco dar uma recompensa ao player, no caso pontos P, estes, podem ser utilizados no comercio, em npcs, ou até mesmo na entrada de locais. Sua sintaxe é muito maleável e se encaixa em quaquer requisito desejado.

Instalação :
Primeiramente, execute a seguinte QUERY em seu banco de dados :

ALTER TABLE `accounts` ADD `p_points` INTEGER NOT NULL DEFAULT 0

Em seguida, crie um arquivo com a extensão .lua chamado "points.lua" em "data/creaturescripts/scripts" e adicione o código abaixo :

--[[
P Points System.
Version : v1.0
]]--

function onLogin(cid)
doCreatureSetStorage(cid, 1219, os.time())
return true
end

function onLogout(cid)
doCreatureSetStorage(cid, 1219, 0)
return true
end

Ainda em creaturescripts, abra o arquivo "creaturescripts.xml" e adicione a seguinte TAG:

<event type="login" name="PlayerAddPointsTimer" event="script" value="points.lua"/>
<event type="logout" name="PlayerResetPointsTimer" event="script" value="points.lua"/>

Agora, em "data/globalevents/script" crie um arquivo com a extensão .lua também chamado "points.lua" e cole o seguinte código :

--[[
P Points System.
Version : v1.0
]]--

local config = {
p_time = 3600, -- Tempo em segundos para receber os pontos( 3600 = 1hora )
p_points = 1 -- Quantidade de pontos recebida a cada "p_time"
}

local function givePoints(cid, quant)
if os.time() - getCreatureStorage(cid, 1219) >= config.p_time then
doPlayerSendTextMessage(cid, 19, "Congratulations, you recieved ".. config.p_points .." p points. Now you have ".. config.p_points + getPoints(cid) .." p points in your account. Your timer was reseted.") 
doPlayerAddPoints(cid, quant) 
doCreatureSetStorage(cid, 1219, 0)
doCreatureSetStorage(cid, 1219, os.time())
end
return true
end 

function onThink(interval)
for i, v in pairs(getPlayersOnline()) do 
givePoints(v, config.p_points)
end
return true
end

E em "globalevents.xml" cole a seguinte TAG:

<globalevent name="points" interval="60" event="script" value="points.lua"/>

Em seguida vá em "data/talkactions/scripts", crie um arquivo com extensão .lua chamado "points.lua" e adicione o seguinte código :

function onSay(cid, words, param, channel)
local getP = getPoints(cid)
doPlayerPopupFYI(cid, "You have ".. getP .." P points.")
return true
end

E em "talkactions.xml" adicione a TAG :

<talkaction words="!ppoints;/ppoints" event="script" value="points.lua"/>

Para finalizar, vá em "data/lib/050-function.lua" e na última linha, adicione as funções abaixo :

function getPoints(cid)
local res = db.getResult('select `p_points` from accounts where name = \''..getPlayerAccount(cid)..'\'')
if(res:getID() == -1) then
return false
end
local ret = res:getDataInt("p_points")
res:free()
return tonumber(ret)
end

function doPlayerAddPoints(cid, quant)
return db.executeQuery("UPDATE `accounts` SET `p_points` = '".. getPoints(cid) + quant .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
end

function doPlayerRemovePoints(cid, quant)
return db.executeQuery("UPDATE `accounts` SET `p_points` = '".. getPoints(cid) - quant .."' WHERE `name` ='"..getPlayerAccount(cid).."'")
end

Fim, o sistema está instalado.

Como configurar :
A parte da configuração é a mais fácil, apenas edite :

local config = {
p_time = 3600, -- Tempo em segundos para receber os pontos( 3600 = 1hora )
p_points = 1 -- Quantidade de pontos recebida a cada "p_time"
}

Quer utilizar o sistema em um npc, ou action, ou algum outro sistema e não sabe como? Simples, apenas use as seguintes funções :

getPoints(cid) A função retorna a quantidade de pontos do player.

doPlayerAddPoints(cid, quant) A função adiciona a quantidade(quant) de pontos ao player.

doPlayerRemovePoints(cid, quant) A função remove a quantidade(quant) de pontos do player.

 

 

Download do sistema -> DOWNLOAD

Scan -> Scan

VI6MDIG.png

 

"O fracasso é a oportunidade de se começar de novo inteligentemente"

Minhas Redes Sociais: Youtube | Página & Grupo | Steam  | Discord TibiaKing

 

Link para o post
Compartilhar em outros sites
  • 3 years later...
  • 1 year later...

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo