Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Galera, tem como colocar pra quando eu adicionar a vip, já adicionar a segunda promotion?
Esse sistema de vip é o do Vodkart.

 

-- Script SYtem vip 2.0 --

function onSay(cid, words, param)

if(words == "!vipdays") then
local timenow = os.time()
local quantity = math.floor((getPlayerStorageValue(cid, 13540) - timenow)/(24 * 60 * 60))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. (quantity < 0 and 0 or quantity) .." dias de VIP no seu character.")

elseif(words == "/checkvip") then
if getPlayerAccess(cid) == 5 then
if not param then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.")
end

local player = getPlayerByName(param)
if not isPlayer(player) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player "..player.." not found.")
end

local timenow = os.time()

local quantity = math.floor((getPlayerStorageValue(player, 13540) - timenow)/(24 * 60 * 60))
doPlayerPopupFYI(cid, "O jogador tem ".. (quantity < 0 and 0 or quantity) .." dias de VIP no character.")
return TRUE
end

elseif(words == "/addvip") then
if getPlayerAccess(cid) == 5 then
local t = string.explode(param, ",")
if not t[2] then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.")
end

local player = getPlayerByName(t[1])
local name = getCreatureName(player)
local days = t[2]
local pid = getPlayerByNameWildcard(t[1])
if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player with this name doesn\'t exist or is offline.")
return TRUE
end

local daysvalue = days*3600*24
local storageplayer = getPlayerStorageValue(player, 13540)
local timenow = os.time()
local time = storageplayer <= 0 and (timenow + daysvalue) or (storageplayer + daysvalue)

if string.find(tostring(getCreatureName(pid)),"[[Vip]]") then
doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Foram adicionados "..days.." dias de VIP no seu character.")
setPlayerStorageValue(player, 13540, time)
local quantity = math.floor((getPlayerStorageValue(player,13540) - timenow)/(3600*24))
doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você tem "..quantity.." dias de VIP restantes.")
else
setPlayerStorageValue(player, 13540, time)
db.executeQuery("UPDATE `players` SET `name` = '[Vip] "..name.."' WHERE `id` = "..getPlayerGUID(player)..";")
doRemoveCreature(player)
end
end

elseif(words == "/delvip") then
if getPlayerAccess(cid) == 5 then
local dec = MESSAGE_INFO_DESCR
if(param == "") then return TRUE,doPlayerSendTextMessage(cid,18,"Command param required.")end
local C,t = {},string.explode(param, ",")
C.pos = getPlayerPosition(cid)
C.uid = getCreatureByName(t[1])
C.time = ((tonumber(t[2]) == nil) and 1 or tonumber(t[2]))*3600*24 --Tempo da vip por dia.
C.days = (tonumber(t[2]) == nil) and 1 or tonumber(t[2]) --Dias de vip.

if(getPlayerStorageValue(C.uid,13540) < C.time)then
doPlayerSendTextMessage(cid,dec,'O jogador '..t[1]..' não possui '..C.days..' dias de vip.')
else
doPlayerSendTextMessage(cid,dec,'Você removeu '..C.days..' dias de vip do player '..t[1]..'.')
setPlayerStorageValue(C.uid,13540,getPlayerStorageValue(C.uid,13540)-C.time)
end
doSendMagicEffect(C.pos, math.random(28,30))
end
end

return TRUE
end

fim da vip:
 

--[[ by vodkart ]]--
function onLogin(cid)

if getPlayerStorageValue(cid, 13540) - os.time() > 0 then
setPlayerStorageValue(cid, 9898, 1)
end

local pos = {x = 157, y = 50, z = 7} -- posiçao do templo.

function Vodka(cid)
if isPlayer(cid) then
db.executeQuery("UPDATE `players` SET `name` = '"..string.sub(getCreatureName(cid), 7).."' WHERE `id` = "..getPlayerGUID(cid)..";")
doRemoveCreature(cid)
end
end

if getPlayerStorageValue(cid, 9898) == 1 and getPlayerStorageValue(cid, 13540) - os.time() < 1 or getPlayerStorageValue(cid, 13540) - os.time() == 0 then
doTeleportThing(cid, pos)
doPlayerPopupFYI(cid, "Sua vip Account acabou.")
setPlayerStorageValue(cid, 9898, -1)
if string.find(tostring(getCreatureName(cid)),"[[Vip]]") then
addEvent(Vodka, 3*1000, cid)
end
end
return TRUE
end

 

Link para o post
Compartilhar em outros sites

Aqui, fiz um script para quando o player logar se ele tiver o Storage da tua VIP, ele automaticamente vai ganhar a vocação VIP.

data/creaturescripts/scripts copie e cole algum arquivo lua e renomeie para:

vipvocation e adicione isso dentro:

    function onLogin(cid)

    
        if getPlayerVocation(cid) == 1 and getPlayerStorageValue(cid, 13540) >= 1 then    
    doPlayerSetVocation(cid, 12)

        elseif getPlayerVocation(cid) == 2 and getPlayerStorageValue(cid, 13540) >= 1 then    
    doPlayerSetVocation(cid, 11)

        elseif getPlayerVocation(cid) == 3 and getPlayerStorageValue(cid, 13540) >= 1 then    
    doPlayerSetVocation(cid, 10)

        elseif getPlayerVocation(cid) == 4 and getPlayerStorageValue(cid, 13540) >= 1 then    
    doPlayerSetVocation(cid, 9)
        else
    doPlayerSendCancel(cid, "Torne-se VIP e ganhe uma vocação especial")



        end
return TRUE
end

Dentro do arquivo login.lua adicione:

registerCreatureEvent(cid, "vipvocation")

E por último, adicione esta tag no creaturescripts.xml

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

Script feito pelo @Rusherzin

Link para o post
Compartilhar em outros sites
Edata/creaturescripts/scripts crie um arquivo com o nome fimvip e adicione:
function onLogin(cid)
local temple = { x =655, y = 1014, z = 7}
getPlayerStorageValue(cid, 13540) >= 0
if getPlayerStorageValue(cid,55555) ~= 1 then
setPlayerStorageValue(cid,55555,1)
end
else
if getPlayerStorageValue(cid,55555) == 1 then
doTeleportThing(cid, temple)
doPlayerSendTextMessage(cid, 22, "Your VIP Time over!")
setPlayerPromotionLevel(cid, 1)
setPlayerStorageValue(cid, 55555, 0)
end
end
return true
end
Edata/creaturescripts/creaturescripts.xml adicione a tag:
<event type="login" name="FimVip" event="script" value="fimvip.lua"/>

Edata/creaturescripts/login.lua acrescenta:

 

registerCreatureEvent(cid, "FimVip")
Editado por AlekysRocha. (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Vou te explicar a lógica que eu pensei, quando loga e não tem vip ele da Storage 55555, ai ele pega e inverte as vocação, se tem a 9 volta pro 5 :D

Deixa o script anterior e crie um arquivo em data/creaturescripts/scripts com nome de promoteantiga e adicione.

function onLogin(cid)
        if getPlayerVocation(cid) == 9 and getPlayerStorageValue(cid, 55555) >= 1 then 
    doPlayerSetVocation(cid, 5)
        elseif getPlayerVocation(cid) == 10 and getPlayerStorageValue(cid, 55555) >= 1 then 
    doPlayerSetVocation(cid, 6)
        elseif getPlayerVocation(cid) == 11 and getPlayerStorageValue(cid, 55555) >= 1 then 
    doPlayerSetVocation(cid, 7)
        elseif getPlayerVocation(cid) == 12 and getPlayerStorageValue(cid, 55555) >= 1 then 
    doPlayerSetVocation(cid, 8)
        else
    doPlayerSendCancel(cid, "Torne-se VIP e ganhe uma vocação especial junto com vários benefícios ")
        end
return TRUE
end

Dentro do arquivo login.lua adicione:

registerCreatureEvent(cid, "vipback")

Em data/creaturescripts/creaturescripts.xml adicione a tag:

<event type="login" name="vipback" event="script" value="promoteantiga.lua"/>

Não testei (não tenho vip por storage, não curto mt ;x ) testa e me fala :D

Editado por AlekysRocha. (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