Ir para conteúdo
  • Cadastre-se

[Resolvido] Ajuda Vip System


Posts Recomendados

Voltando a postar uma nova duvida... rsrsr(noviade)

Eu estou com o Perfect Vip system 2.0 feito pelo Vodkart em meu otserv.

Só que é aquele systema vip que adiciona a tag [Vip] na frente do nome e eu nao gosto desta tag.

Gostaria de saber se da para modificar o script para nao add essa tag. Se nao, voces poderia me passar um systema vip??

Uso Crystal Server

Versao: 8.7

Obrigadow

Link para o post
Compartilhar em outros sites
  • Administrador

Posta o script aqui para eu analisar...

TibiaKing Team- KingTópicos
www.tibiaking.com

Link para o post
Compartilhar em outros sites

Demoro Matheus

vou postar tudo, pois nao sei oq voce vai analisar

Ai está:

talkactions/scripts

-- Script SYtem vip 2.0 --

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

talkactions.xml

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

TILE VIP

movements/scripts

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

movements.xml

<movevent type="StepIn" uniqueid="13700" event="script" value="vipe.lua"/>

FIM DA VIP

creaturescript/script

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

creaturescript.xml

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

CREDITOS : Vodkart

vlw

Link para o post
Compartilhar em outros sites

Creio eu que essa tag não está no vip system e sim em um script em creaturescripts, o Thiago(Vodkart) fez esse script para trabalhar separadamente ao sistema vip.

29161_4.png

 

 

2d168ur.png

 

Link para o post
Compartilhar em outros sites

no primeiro arquivo, do talkactins/script

ache esta linha

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

só tirar o [VIP] ali, teste e veja se deu certo!

edit

lembrando que isso só servirá para os novos vips, o que ja estão com os nomes alterados, você terá que alterar no banco de dados

Editado por Augusto (veja o histórico de edições)

# Regras Gerais - TibiaKing.com #
Contato: [email protected]
Não respondo dúvidas via MP.


1C2tu.png4Tlqo.png1C2tu.png


 

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

Na minha distro da o seguinte erro quando eu falo /addvip nome do player, dias

[18/11/2012 21:51:13] [Error - TalkAction Interface]

[18/11/2012 21:51:13] data/talkactions/scripts/systemvip.lua:onSay

[18/11/2012 21:51:13] Description:

[18/11/2012 21:51:13] data/talkactions/scripts/systemvip.lua:56: attempt to call field 'executeQuery' (a nil value)

[18/11/2012 21:51:13] stack traceback:

[18/11/2012 21:51:13] data/talkactions/scripts/systemvip.lua:56: in function <data/talkactions/scripts/systemvip.lua:3>

alguem me ajuda?

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