Ir para conteúdo
  • Cadastre-se

Como fazer player nascer com 1 dia de vip e add no sql 1 dia pra quem não tem?


Posts Recomendados

estou com uma dúvida como fazer o player nascer com 1 dia de vip quando criar char no acc manager e como faço pra add 1 dia via sqlite pra aqueles que já criaram.

::: SCRIPT VIP :::

--[[

Name: Vip System by Account

Version: 1.0

Author: Kydrai

Forum: http://www.tibiaking.co...by-account-v10/

[Functions]

-- Install

installVip()

-- By Account

doTeleportPlayersByAccount(acc, topos)

getVipTimeByAccount(acc)

setVipTimeByAccount(acc, time)

getVipDaysByAccount(acc)

isVipAccount(acc)

addVipDaysByAccount(acc, days)

doRemoveVipDaysByAccount(acc, days)

getVipDateByAccount(acc)

-- By Player

doTeleportPlayers(cid, topos)

getVipTime(cid)

setVipTime(cid, time)

getVipDays(cid)

isVip(cid)

addVipDays(cid, days)

doRemoveVipDays(cid, days)

getVipDate(cid)

]]--

-- Install

function installVip()

if db.executeQuery("ALTER TABLE `accounts` ADD viptime INT(15) NOT NULL DEFAULT 0;") then

print("[Vip System] Vip System instalado com sucesso!")

return TRUE

end

print("[Vip System] Não foi possível instalar o Vip System!")

return FALSE

end

-- By Account

function doTeleportPlayersByAccount(acc, topos)

if db.executeQuery("UPDATE `players` SET `posx` = "..topos.x..", `posy` = "..topos.y..", `posz` = "..topos.z.." WHERE `account_id` = "..acc..";") then

return TRUE

end

return FALSE

end

function getVipTimeByAccount(acc)

local vip = db.getResult("SELECT `viptime` FROM `accounts` WHERE `id` = "..acc..";")

if vip:getID() == -1 then

print("[Vip System] Account not found!")

return FALSE

end

return vip:getDataInt("viptime")

end

function setVipTimeByAccount(acc, time)

if db.executeQuery("UPDATE `accounts` SET `viptime` = "..time.." WHERE `id` = "..acc..";") then

return TRUE

end

return FALSE

end

function getVipDaysByAccount(acc)

local vipTime = getVipTimeByAccount(acc)

local timeNow = os.time()

local days = math.ceil((vipTime - timeNow)/(24 * 60 * 60))

return days <= 0 and 0 or days

end

function isVipAccount(acc)

return getVipDaysByAccount(acc) > 0 and TRUE or FALSE

end

function addVipDaysByAccount(acc, days)

if days > 0 then

local daysValue = days * 24 * 60 * 60

local vipTime = getVipTimeByAccount(acc)

local timeNow = os.time()

local time = getVipDaysByAccount(acc) == 0 and (timeNow + daysValue) or (vipTime + daysValue)

setVipTimeByAccount(acc, time)

return TRUE

end

return FALSE

end

function doRemoveVipDaysByAccount(acc, days)

if days > 0 then

local daysValue = days * 24 * 60 * 60

local vipTime = getVipTimeByAccount(acc)

local time = vipTime - daysValue

setVipTimeByAccount(acc, (time <= 0 and 1 or time))

return TRUE

end

return FALSE

end

function getVipDateByAccount(acc)

if isVipAccount(acc) then

local vipTime = getVipTimeByAccount(acc)

return os.date("%d/%m/%y %X", vipTime)

end

return FALSE

end

-- By Player

function doTeleportPlayers(cid, topos)

doTeleportPlayersByAccount(getPlayerAccountId(cid), topos)

end

function getVipTime(cid)

return getVipTimeByAccount(getPlayerAccountId(cid))

end

function setVipTime(cid, time)

return setVipTimeByAccount(getPlayerAccountId(cid), time)

end

function getVipDays(cid)

return getVipDaysByAccount(getPlayerAccountId(cid))

end

function isVip(cid)

return isVipAccount(getPlayerAccountId(cid))

end

function addVipDays(cid, days)

return addVipDaysByAccount(getPlayerAccountId(cid), days)

end

function doRemoveVipDays(cid, days)

return doRemoveVipDaysByAccount(getPlayerAccountId(cid), days)

end

function getVipDate(cid)

return getVipDateByAccount(getPlayerAccountId(cid))

end

Server Sqlite.

:::SOLUÇÃO:::

Em creaturescripts.xml cole a tag:

<event type="login" name="vipdays" event="script" value="freevip.lua"/>

Em creaturescripts/script crie um arquivo lua chamado freevip.lua e cole isso:

function onLogin(cid)

local storage,days = (getPlayerAccountId(cid)+550),1

if getGlobalStorageValue(storage) <= 0 then

setGlobalStorageValue(storage, 1)

addVipDays(cid, days)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você recebeu um "..days.." dias de vip, bom jogo!")

end

return true

end

:::Créditos:: Vodkart

:::Resolvido Podem Fechar:::

Editado por tiago.bordin1988 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

cara , isso do sql nao sei..

mais o da vip posso ti passar o script se voce qiseer...

se tiver um scrip que faça o player nascer com 1 dia de vip ajudara, portanto que seja esse sistema que postei acima do Kydrai.

Editado por tiago.bordin1988 (veja o histórico de edições)
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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo