NA

Item Que Adiciona Vip Time

Por Natanael Beckman, 31 de jul. de 2010 em Actions e Talkactions

script
otserv
24
14k
Natanael BeckmanN
31 de julho de 2010 às 09:41

Boa galera, bom esse tópico é muito bom pra quem está tendo dificuldade com Geisor 0.3.6 pra usar o IPACC na venda do VIP.

 

Vamos nois....

 

Acesse no seu Otserv/data/actions/scripts/vip(caso n tenha essa pasta cria uma).

 

La copie um arquivo .lua e cole renome ia ele pra addvip.lua e o que tiver dentro dele deleta e cola isso:

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

 

local config={

removeOnUse = "yes" -- remover quando usar ("yes" or "no")

}

 

local days = 35 -- dias que serão adicionados

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

 

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

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

 

Esses que estão em vermelho são os storages caso seu OT tenha storage diferente desse só mudar.

 

Pronto feito isso salve.

 

Agora volte e vai em Actions/Actions.xml adicione lá essa tag:

 

<action itemid="5785" script="vip/addvip.lua"/>

 

Esse id 5785 é da minha preferência mais pode mudar...

 

Bom, feito isso salve e feche.

 

E vamos pra outra etapa... Vá em Otserv/data/movements/script... Abra o arquivo viptile.lua.

Dentro dele apague tudo e adicione isto:

 

function onStepIn(cid, item, position, fromPosition)

 

local config = {

msgDenied = "Você precisa ser vip.",

msgWelcome = "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

 

Feito isso salve e feche.

 

E pronto teste. Abra seu ot teste caso o OT esteja aberto apenas dê /reload actions e /reload movements.

 

Espero que gostem e aproveitem.

 

Creditos:

A elaboração do tutorial foi toda feita por min mais quem me passou todos esses coder foi o Vodkart.

rapidashR
02 de agosto de 2010 às 13:04

Eu tenho uma duvida, nessa vip qual os benefícios dela? dobra exp tanana e ai por diante '-'

Natanael BeckmanN
03 de agosto de 2010 às 10:57

Essa parte é com você.

A função do sistema é fornece a VIP.

O player adquirir a VIP o que a Vip fornece ao player vai de servidor pra servidor.

1 mês depois...
rodjfR
02 de setembro de 2010 às 21:14

cara, tenho uma duvida.

eu coloquei o item e adicionei vip time. mas quando uso a talkaction "!vipdays"

sempre aparece que eu não tenho vip days.. como arrumo isso?

e, outra duvida, quando passa os 30 dias de vip, o character já vai direto para o templo assim que re-loga sem vip, ou ele continua na area premmy?

 

thanks :)

VodkartV
02 de setembro de 2010 às 21:19

coloca o script do seu !vipdays aqui

 

para a gente ver =]

rodjfR
02 de setembro de 2010 às 22:25

function onSay(cid, words, param)

if vip.hasVip(cid) == TRUE then

doPlayerSendTextMessage(cid, 22, "Your vip end in "..os.date("%d %B %Y %X ",vip.getVip(cid)))

else

if vip.getVip(cid) ~= 0 then

doPlayerSendTextMessage(cid, 22, "You're not a vip player. Your vip has finished in "..os.date("%d %B %Y %X ", vip.getVip(cid)).." and now is "..os.date("%d %B %Y %X ", os.time()))

else

doPlayerSendTextMessage(cid, 22, "You're not a vip player. You naver has a vip.")

end

end

return TRUE

end

 

ta ai.

 

ps: eu testei aqui botei 1 dia de premmy, a vip dele nao saiu...

sendo q ja passaram 24h

 

:S

ajuda ae namoral

Editado Setembro 2 por Rood

VodkartV
03 de setembro de 2010 às 10:20

se tu percebeu esse sistema do vip time de item é por storage

 

já esse seu script é pelo account...

 

ou sejá vc teria que usar o tile desse sistema por storage.

2 meses depois...
otianoO
23 de novembro de 2010 às 21:08

Como ficaria pra mudar o nome de quem usou o item pra [VIP] antes do nome?!

1 mês depois...
igorstyleI
11 de dezembro de 2010 às 01:24

/\ , tambem queria saber !

2 semanas depois...
exlashE
20 de dezembro de 2010 às 01:04

Eu gostaria de saber se tem como editar este item para toda a account ganhar vip, seria melhor para todos ...

3 meses depois...
VodkartV
09 de março de 2011 às 19:55

é só usar o sistema Vip account do kydrai :p

09 de março de 2011 às 21:20

Colocar vip no nome:

 

function onSay(cid, words, param)

local id = getPlayerGUID(cid)
local ne = getCreatureName(cid)

if string.match(ne, "%p%a+%p") ~= '[VIP]' then
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `name` = `[VIP] "..ne.."` WHERE `id` = "..id)
end
end

 

Até.

Editado Março 9 por Demonbholder

SecularS
09 de março de 2011 às 21:34

Perai Recapitulando,

Para Usar Este Script e Pra Falar !Vipdays E Mostrar De Acordo Com O Item o Que Tem Que Fazer? :worriedsmiley:

09 de março de 2011 às 21:57

Não cara, o script só vai funcionar se tu usar o Perfect Vip System do Vodkart. E é um item que quando tu clica nele, tu ganha tantos dias de vip.

3 meses depois...
daaniel13D
09 de junho de 2011 às 16:11

Não cara, o script só vai funcionar se tu usar o Perfect Vip System do Vodkart. E é um item que quando tu clica nele, tu ganha tantos dias de vip.

 

 

 

function onSay(cid, words, param)

 

local id = getPlayerGUID(cid)

local ne = getCreatureName(cid)

 

if string.match(ne, "%p%a+%p") ~= '[VIP]' then

doRemoveCreature(cid)

db.executeQuery("UPDATE `players` SET `name` = `[VIP] "..ne.."` WHERE `id` = "..id)

end

end

 

 

Ond eu ponho esse script para fikar com o nome do PLayer Exemplo [vip]God???

o meu script é o msm que vc passou rpo cara ae de adicionar vip por Item ...

Obrigadoo