Ir para conteúdo
  • 0

[Vip] No Nome


Carnavotu

Pergunta

Galera estou precisando de uma ajuda

 

Eu o sistema vip do mock e queria que o comando de /addvip colocasse o [Vip] na frente do nome do player e depois quando acabasse a vip tiraria automaticamente, quem puder me ajudar agradeço.

 

Comando de add vip:

 

\talkactions\scripts\VIP\addvipp.lua

 

 

function onSay(cid, words, param)

if param == "" then

return doPlayerPopupFYI(cid,"Está com problemas?\n Aprenda os comandos!\n---------------\nAdicionar vip:\n/vip add days player\n/vip add 30 Styller\n---------------\nDeletar vip:\n/vip del player\n/vip del Styller\n---------------\nVer a vip:\n/vip see player\n/vip see Styller\n---------------\n")

end

if param:lower():find('add') == 1 and 3 then

local _,_,id,name = param:lower():find('add (%d+) (.+)')

name = name or ""

id = tonumber(id or 1) or 1

if tonumber(id) == nil or getPlayerByName(name) == false then

return doPlayerSendTextMessage(cid,25,"Adicionar vip:\n/vip add days player\n/vip add 30 Styller\n [Player: "..name.."]")

end

if isPlayer(getPlayerByName(name)) == TRUE then

vip.addVipByAccount(getPlayerAccount(getPlayerByName(name)) ,vip.getDays(id))

 

doPlayerSendTextMessage(cid,25,"Foram adicionados "..tonumber(id).." dias de vip a "..name..".")

doPlayerSendTextMessage(getPlayerByName(name),25,"Você recebeu "..tonumber(id).." dias de vip.")

else

doPlayerSendTextMessage(cid,25,name.." não esta online ou não existe.")

end

elseif param:lower():find('del') == 1 and 3 then

local _,_,name = param:lower():find('del (.+)')

if getPlayerByName(name) == false then

return doPlayerSendTextMessage(cid,25,"Deletar vip:\n/vip del player\n/vip del Styller\n")

end

 

vip.setVipByAccount(getPlayerAccount(getPlayerByName(name)),-os.time())

doPlayerSendTextMessage(cid,25,"A vip de "..name.." foi apagada.")

elseif param:lower():find('see') == 1 and 3 then

local _,_,name = param:lower():find('see (.+)')

name = name or ""

if getPlayerByName(name) == false then

return doPlayerSendTextMessage(cid,25,"Ver a vip:\n/vip see player\n/vip see Styller\n")

end

local ret_ = vip.getVip(getPlayerByName(name))

if ret_ == 0 then

return doPlayerSendTextMessage(cid, 25,name.." Não tem vip, e nunca teve.")

else

return doPlayerSendTextMessage(cid, 25, "A vip de "..name.." Acaba/terminou em "..os.date("%d %B %Y %X ",ret_))

end

end

return TRUE

end

 

 

Script que remove a vip quando acaba:

 

\creaturescripts\scripts\vip2.lua

 

 

local pos = {x=160, y=51, z=7}

 

pos = {x=160, y=51, z=7}

 

function onLogin(cid)

if vip.hasVip(cid) == true then

if getPlayerStorageValue(cid,55555) ~= 1 then

setPlayerStorageValue(cid,55555,1)

end

elseif vip.hasVip(cid) ~= true and vip.getVip(cid) ~= 0 then

if getPlayerStorageValue(cid,55555) == 1 then

doTeleportThing(cid, pos, true)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sua Vip ACABOU!")

doPlayerSendTextMessage(cid,22,"Sua Vip ACABOU!")

setPlayerPromotionLevel(cid, 1)

setPlayerStorageValue(cid,55555,2)

elseif getPlayerStorageValue(cid,55555) == -1 then

setPlayerStorageValue(cid,55555,2)

end

 

end

 

return true

end

 

 

 

Abraços :thumbsupsmiley:

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

talkactions vip

 

-- Script SYtem vip 1.0 --

-- By Vodkart --

 

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

 

agora em creaturescript.xml

 

viploggin.lua

 

--[[ 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

 

em creaturescript.xml

 

<event type="login" name="checkvip1" script="viploggin.lua"/>

 

Creditos

 

Vodkart =100%

 

REP+ Plis

Link para o comentário
Compartilhar em outros sites

  • 0

Esses sistemas são do Perfect Vip system 2.0, eu ja tentei por mais eles só adicionam vip ne um char, eu quero que adiciona na conta toda se desse para colocar no vip system mock agradeceria

 

Abrass :thumbsupsmiley:

Link para o comentário
Compartilhar em outros sites

  • 0

Utilize esse script.

 


function pegarNome(name)
return string.sub(name, 7)
end

function onLogin(cid) 
local name = getCreatureName(cid)
local nome = getPlayerGUID(cid)

if isVip(cid) then
if string.sub(name, 1,6) == "[VIP] " then
return true
else
db.executeQuery("UPDATE `players` SET `name` = '[VIP] "..name.."' WHERE `id`= " .. nome .. ";")
doPlayerSendTextMessage(cid,19,"You go kicked in 10 seconds for update you name.")
addEvent(doRemoveCreature,10000,cid)
end
else
if string.sub(name, 1,6) == "[VIP] " then
db.executeQuery("UPDATE `players` SET `name` = '"..pegarNome(getCreatureName(cid)).."' WHERE `id`= " .. nome .. ";")
doPlayerSendTextMessage(cid,19,"You go kicked in 10 seconds for update you name.")

addEvent(doRemoveCreature,10000,cid)
end

end
return true
end

 

Bota a tag no xml

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

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...