Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado
  • Este é um post popular.

Perfect Vip system 2.2

Versão Testada:TFS 0.3.6 - 8.54 - 8.60

Creditos pelas modificações: Kydrai,Nicekid e Marcryzius e EddyHavoc

Creditos pelas publicações: EddyHavoc e Vodkart

Oque Contém no Sistema vip 2.2?

Quote

- Compra Vip pela talkaction ( Comando !buyvip ) -- ou sem o comando.

- Tile para somente Players Vip passarem ( conta também com funçâo os.time )

- verifica quantos dias de Vip o character ainda possui.

- Administradores(GOD) podem adicionar e remover dias de Vip para characters.

-- Administradores(GOD) podem checkar dias de Vip dos Players.

-- É adicionado [VIP] ao nome e retirado quando a vip Acabar.

GOD Adicionando e Removendo dias de Vip

 

Comprando VIP e Checkando dia da sua VIP

Quote

Comando:

 

comprar vip:

!buyvip

checkar dias de vip:

!vipdays

God checkar dias de vip do character:

/checkvip Nick

exemplo: /checkvip Nicekid

 

 

God adionar dias ao character:

/addvip Nick,dias

exemplo: /addvip Nicekid,5

aqui adicionei 5 dias de vip.

God Retirar dias de Vip do character:

/delvip Nick,dias

exemplo: /delvip Nicekid,5

aqui retirei 5 dias de vip.

ggfdfgfgff.jpg Primeiro passo

 

vá até talkactions/scripts Crie um arquivo.lua e renomeie para systemvip.lua

dentro coloque:

 
-- Script System Vip 2.2 --  


function onSay(cid, words, param)  

if(words == "!buyvip") then  

local price = 5000000  

if doPlayerRemoveMoney(cid, price) == TRUE then  

local days = 30  

local daysvalue = days * 24 * 60 * 60  

local storageplayer = getPlayerStorageValue(cid, 13540)  

local timenow = os.time()  


if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then  

time = timenow + daysvalue  

else  

time = storageplayer + daysvalue  

end  


if string.find(tostring(getCreatureName(cid)),"[[Vip]]") then  

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de VIP no seu character.")  

setPlayerStorageValue(cid, 13540, time)  

local quantity = math.floor((getPlayerStorageValue(cid, 13540) - timenow)/(24 * 60 * 60))  

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. quantity .." dias de VIP restantes.")  

else  

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de VIP no seu character.")  

setPlayerStorageValue(cid, 13540, time)  

local name = getCreatureName(cid)  

db.executeQuery("UPDATE `players` SET `name` = '[Vip] "..name.."' WHERE `id` = "..getPlayerGUID(cid)..";")  

doRemoveCreature(cid)  

end  

else  

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você precisa de "..price.." gp's para colocar vip.")  

end  


elseif(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

price = é o quanto a vip vai custar em gps days = quantos dias de vip serão adicionados ao player em talkactions.xml adicione a tag:

 
<talkaction words="!vipdays;!buyvip;/checkvip;/addvip;/delvip" script="systemvip.lua"/>

Pronto primeiro passo terminado. Sistema vip sem o !buyvip abra a spoiler Spoiler ---------------------------------------------------------------------------------------------------------------------------- Tile VIP ggfdfgfgff.jpg Segundo passo. vá até movements/scripts crie um arquivo.lua e renomeie para vipe.lua dentro coloque:

 
-- Script Vip Sytem 1.0 --

function onStepIn(cid, item, position, fromPosition)


local config = {

msgDenied = "Você não e vip ,fale com Administrador do Server.",

msgWelcome = "Seja Bem Vindo a Area vip."

}


if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then

doTeleportThing(cid, fromPosition, true)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msgDenied)

doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE)

return TRUE

end

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.msgWelcome)

return TRUE

end

Em movements.xml adicione a tag: <movevent type="StepIn" uniqueid="13700" event="script" value="vipe.lua"/> FIM DA VIP creaturescript/script crie um arquivo.lua e renomeie para endvip.lua e cole isso dentro dele:

 
--[[ by EddyHavoc Tibiaking.com ]]--

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 EddyHavoc(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(EddyHavoc, 3*1000, cid)

end

end

return TRUE

end

em creaturescript.xml adicione a tag:

 
<event type="login" name="CheckVip" script="endvip.lua"/>[i]

Pronto Seu sistema Vip está terminado.

  • 5 weeks later...
  • Respostas 23
  • Visualizações 10.7k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Desculpe a demora para responder. Segue o Link Criando área vip http://tibiaking.com/forum/topic/12853-criando-area-vip/) Este script já teleporta automaticamente para o templo quando a vip aca

  • Desculpem reviver o topico, mas como eu poderia tirar o [VIP] do nome dos players, quando eles comprarem a vip?

Postado

o [vip] nao sai do nome de jeeeeito nenhum =\ que coisa neah \=

troque

if string.find(tostring(getCreatureName(cid)),"[Vip]") then 
para
if string.find(tostring(getCreatureName(cid)),"[[Vip]]") then 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

  • 2 weeks later...
Postado

Como que eu crio uma area VIP com esse VIP SYSTEM?

E outra, quando o VIP acabar e o player ainda estive na area vip, qual é o script que teleporta ele de lá?

Abraços Flaah :)

"Pense nisso você tbm"

"Tudo o que um sonho precisa para ser realizado é alguém que acredite que ele possa ser realizado"

35l7z91.jpg

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo