Ir para conteúdo
  • Cadastre-se

(Resolvido)ajuda com vip


Ir para solução Resolvido por Eduardo Carvalho,

Posts Recomendados

Bem Peguei ese script do meu amigo ele me passou ela mais nao ta funfando:

gostaria de 1 script comprar vip 10 dia mais sem VIP no nome apenas o vip 10 e um de vip 30 dias

ao falar !buyvip10 e !buyvip30

se alguem puder ver ela pra mim ficarei grato ;

function onSay(cid, words, param)

 
if (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você precisa está em área protegida para utilizar este comando.")
return TRUE
end
 
if (getPlayerStorageValue(cid, 11548) >= os.time()) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED,"Por medidas de segurança você só pode utilizar este comando em " .. (getPlayerStorageValue(cid, 11548)-os.time()+(0)) .. " segundos.")
return TRUE
end
 
if(param == "!buyvip10") then
if getPlayerItemCount(cid, 9971) >= 5 then
doPlayerAddPremiumDays(cid, 10)
doPlayerRemoveItem(cid, 9971, 5)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou 10 dias de vip com sucesso.")
setPlayerStorageValue(cid,11548,os.time()+30)
return TRUE
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não possui a quantidade necessária para comprar.")
return TRUE
end
end

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

ALgum erro na distro?

Scripter: |||||||||| 10%

 

 

Te ajudei?? REP + e ficamos quites...  ;D

 

Atenciosamente,

                   Lucas.

Abraços!

Link para o post
Compartilhar em outros sites

Blz posso te passa um outro script de vip?(esse script não curti mto..) vc quer que seja igual a esse? só de para usar o comando em área segura?(ou em qualquer lugar já ta valendo?)

Scripter: |||||||||| 10%

 

 

Te ajudei?? REP + e ficamos quites...  ;D

 

Atenciosamente,

                   Lucas.

Abraços!

Link para o post
Compartilhar em outros sites

area segura com as mensagem que ta la eo  item usado pra comprar o vip lembrando 2 vip 10 e 30 vlw!

Link para o post
Compartilhar em outros sites
  • Solução
function onSay(cid, words, param)

if getTilePzInfo(getCreaturePosition(cid)) == FALSE then
  return doPlayerSendCancel(cid, "Você precisa está em área protegida para utilizar este comando.")
end

if(words == "!buyvip10") then
  if getPlayerItemCount(cid, 9971) >= 5 then
    doPlayerAddPremiumDays(cid, 10)
      doPlayerRemoveItem(cid, 9971, 5)
    doPlayerSendTextMessage(cid, 22, "Parabéns você comprou 10 dias de vip com sucesso.")
  else
    doPlayerSendCancel(cid, "Você não possui a quantidade necessária para comprar.")
  end
elseif (words == "!buyvip30") then  
  if getPlayerItemCount(cid, 9971) >= 5 then
    doPlayerAddPremiumDays(cid, 30)
      doPlayerRemoveItem(cid, 9971, 5)
    doPlayerSendTextMessage(cid, 22, "Parabéns você comprou 30 dias de vip com sucesso.")
  else
    doPlayerSendCancel(cid, "Você não possui a quantidade necessária para comprar.")
  end
end

 return true
end
Editado por Eduardo Carvalho (veja o histórico de edições)

infos40x40.png

Skype : duhw.carvalho

 

Ajude-nos a crescer, clicando em curtir

 

 

 

Link para o post
Compartilhar em outros sites

Tenho esse aki também amigo

 

vipo.lua

 

-- Script SYtem vip 1.0 --



function onSay(cid, words, param)

if (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você precisa está em área protegida para utilizar este comando.")
return TRUE
end
local stor = 11548
local preco1= 10 -- quantidade do item para comprar vip 30
local preco2 = 5 -- quantiadde do item para comprar vip 10
local texto2 = "Você precisa de tal item em tal quantidade para adicionar vip" --texto do comando buy vip10(caso nao consiga
local texto1 = "Você precisa de tal item em tal quantidade para adicionar vip " -- texto do comando buyvip30 caso nao consiga

if(words == "!buyvip30") then
if doPlayerRemoveItem(cid, 9971, preco1) == TRUE then
local days = 30
local daysvalue = days * 240 * 60 * 60
local storageplayer = getPlayerStorageValue(cid, stor)
local timenow = os.time()

if getPlayerStorageValue(cid, stor) - os.time() <= 0 then
time = timenow + daysvalue
else
time = storageplayer + daysvalue
end

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

local quantity = math.floor((getPlayerStorageValue(cid, stor) - timenow)/(240 * 60 * 60))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. quantity .." dias de VIP restantes.")
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, texto1)
end

elseif(words == "!buyvip10") then
if doPlayerRemoveItem(cid, 9971, preco2) == TRUE then
local days1 = 10
local daysvalue1 = days1 * 240 * 60 * 60
local storageplayer = getPlayerStorageValue(cid, stor)
local timenow = os.time()

if getPlayerStorageValue(cid, stor) - os.time() <= 0 then
time = timenow + daysvalue1
else
time = storageplayer + daysvalue1
end

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days1 .." dias de VIP no seu character.")
setPlayerStorageValue(cid, stor, time)

local quantity1 = math.floor((getPlayerStorageValue(cid, stor) - timenow)/(240 * 60 * 60))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. quantity1 .." dias de VIP restantes.")
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, texto2)
end

elseif(words == "!days") then
local timenow = os.time()
local quantity = math.floor((getPlayerStorageValue(cid, stor) - timenow)/(240 * 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)
local pid = getPlayerByNameWildcard(param)
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 timenow = os.time()

local quantity = math.floor((getPlayerStorageValue(player, stor) - timenow)/(240 * 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 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*240
local storageplayer = getPlayerStorageValue(player, stor)
local timenow = os.time()

local time = storageplayer <= 0 and (timenow + daysvalue) or (storageplayer + daysvalue)

doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Foram adicionados "..days.." dias de VIP no seu character.")
setPlayerStorageValue(player, stor, time)
local quantity = math.floor((getPlayerStorageValue(player,stor) - timenow)/(3600*240))
doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você tem "..quantity.." dias de VIP restantes.")
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.
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

if(getPlayerStorageValue(C.uid,stor) < 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,stor,getPlayerStorageValue(C.uid,stor)-C.time)
end
doSendMagicEffect(C.pos, math.random(28,30))
end
end

return TRUE
end

 

talkactions.xml

 

<talkaction words="!days;!buyvip10;!buyvip30;/checkvip;/addvip;/delvip" script="vipo.lua"/>

 

E também tem o tile de negar a entrada na área vip para quem não tiver o storage

 

vipo.lua

 

-- Script Vip Sytem 1.0 --


function onStepIn(cid, item, position, fromPosition)
local stor = 11548
local config = {
msgDenied = "" .. getCreatureName(cid) .." Para poder entrar fassa a Quest Vip no teleport Quests.",
msgWelcome = "Para saber os dias de vip fale !days " .. getCreatureName(cid) .."."
}

if getPlayerStorageValue(cid, stor) - os.time() <= 0 then
doTeleportThing(cid, fromPosition, true)
doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, config.msgDenied)
doSendMagicEffect(getThingPos(cid), 43)
return TRUE
end
doPlayerSendTextMessage(cid, TALKTYPE_ORANGE_1, config.msgWelcome)
return TRUE
end

 

movements

 

<movevent type="StepIn" uniqueid="13701" event="script" value="vipo.lua"/>

 

Vantagem desse sistema é que tem o tile de barrar passagem de pessoas que tentem andar sobre um chão com unique 13701... , vc pode checar vip, add vip, eainda !days(ver quantos dias vip restam)

 

E faz a msm cosia do que o outro.....

 

No vipo.lua do talkactions vc só altere os textos que deixei um comentáriozinho :).

 

OBS : NO MEU CASO È VIP COM UM STORAGE, O QUE VC QUERIA ERA PREMIUM DAYS.

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

Scripter: |||||||||| 10%

 

 

Te ajudei?? REP + e ficamos quites...  ;D

 

Atenciosamente,

                   Lucas.

Abraços!

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