Ir para conteúdo
  • 0

Vip Por Item


felipearp

Pergunta

Galera tenho 1 baiak 8.60 e to precisando de 1 sistema de vip , vou explicar mais ou menos

Bom eu to querendo 1 sistema de vip por 2 itens

Clica nesse item (10309) Ganha 30 dias de vip

Clica nesse item (10310) Ganha 2 dias de vip (para os player saberem como é a vip donate)

 

e o mais importante , quando a vip acabar eles serao teleportados para o templo, para que nao fiquem dentro da area vip

cordenadas do templo [X: 160] [Y: 54] [Z: 7].

 

DESDE JA OBRIGADO

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

actions.lua

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
local config={
removeOnUse = "yes" -- remover quando usar ("yes" or "no")
}
local days = 30 -- coloque os dias que serão a VIP!
local daysvalue = days * 24 * 60 * 60
local storageplayer = getPlayerStorageValue(cid, 19500)
local timenow = os.time()
if getPlayerStorageValue(cid, 19500) - 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, 19500, time)
local quantity = math.floor((getPlayerStorageValue(cid, 19500) - timenow)/(24 * 60 * 60))
doSendMagicEffect(getPlayerPosition(cid), math.random(28,30))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. quantity .." dias de VIP restantes.")
if (config.removeOnUse == "yes") then
doRemoveItem(item.uid, 1)
end
return TRUE
end

actions tag.xml
<action itemid="10309" event="script" value="acions.lua"/>
movements.lua

function onStepIn(cid, item, position, fromPosition)
local config = {
msgDenied = "Você nao e VIP compre agora mesmo!",
msgWelcome = "Bem Vindo a area VIP!"
}
if getPlayerStorageValue(cid, 19500) - 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 tag.xml
<movevent type="StepIn" actionid="19500" event="script" value="movements.lua"/>
Agora so colocar o action 19500 no piso vip.
pro de 15 dias e o mesmo procedimento, so precisa alterar algumas coisas.
Editado por Shoguns
Link para o comentário
Compartilhar em outros sites

  • 0

Bom como eu já estava fazendo os scripts quando o shoguns respondeu .. vou responder !

 

 

actions/scripts :

function onUse(cid, item, frompos, item2, topos)


local days = 30  -- dias de vip
local storage = 1015  -- storage

local timenow = os.time()
local days2 = days * 24 * 60 * 60

 if getPlayerStorageValue(cid, storage) - os.time() <= 0 then
     time1 = timenow + days2
     doPlayerSendTextMessage(cid, "Você ganhou "..days.." Dias de Vip", 22)
     setPlayerStorageValue(cid, storage, time1)
 else
     time2 = getPlayerStorageValue(cid, storage) + days2
     setPlayerStorageValue(cid, storage, time2)
     local quantity = math.floor((getPlayerStorageValue(cid, storage) - timenow)/(24*60*60))
     doPlayerSendTextMessage(cid, "Você ganhou Mais "..days.." Dias de Vip. Agora Você tem "..quantity.." Dias de Vip.", 22)
 end

return TRUE
end

em creaturescripts/scripts :

 

function onLogin(cid)


local pos = {x= 160, y= 54, z= 7}
local storagevip = 1015 -- storage da vip.
local storage = 14167 -- qualquer uma que não exista.

  if getPlayerStorageValue(cid, storagevip) >= 1 then
    if getPlayerStorageValue(cid, storage) ~= 1 then
       setPlayerStorageValue(cid, storage, 1)
    end 
  elseif getPlayerStorageValue(cid, storagevip) <= 0 then
         if getPlayerStorageValue(cid, storage) == 1 then
                      doTeleportThing(cid, pos, true)
                      doPlayerSendTextMessage(cid, 22, "Sua vip Acabou.")
                      setPlayerStorageValue(cid, storage, 0)
         end
  end
  
 return TRUE
end  

em creaturescripts/scripts/login.lua

registerCreatureEvent(cid, "vipacabou")

e a tag :

                 <event type="login" name="vipacabou" script="NomedoArquivo.lua"/>
Editado por DuuhCarvalho
Link para o comentário
Compartilhar em outros sites

  • 0

em Creaturescript/script Crie um arquivo.lua e renomeie para :

fimvip.lua


function onLogin(cid)

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

local pos = {x = 160, y = 52, z = 7} -- posiçao do templo.
if getPlayerStorageValue(cid, 9898) == 1 and getPlayerStorageValue(cid, 19500) - os.time() < 1 or getPlayerStorageValue(cid, 19500) - os.time() == 0 then
doTeleportThing(cid, pos)
doPlayerPopupFYI(cid, "Sua vip Account acabou.")
setPlayerStorageValue(cid, 9898, -1)
end
return TRUE
end



em Creaturescript.xml adicione a tag:

<event type="login" name="checkvip" script="fimvip.lua"/>
Editado por Shoguns
Link para o comentário
Compartilhar em outros sites

  • 0

DuuhCarvalho nao entendi seu script

 

qual script você não entendeu ?..

 

no primeiro é so colocar a quantidade de dias e a storage .

 

no segundo é so colocar onde ta storagevip , você coloca a storage que você colocou no script 1 .

 

o item você vai definir em action.Xml ..

 

e quando a vip dele acabar ao logar se ele não for mais vip ele será teleportado pro templo .

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...