Poderia postar seu sistema VIP pelo menos??
- Fórum
- xTibia - Notícias e Suporte
- Soluções
- Archived
- Presiso De Ajuda Com Sistema Vip.
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

amigo bote um npc como Jonnhy que adciona 15 dias de vip , ou entao !buypremium e se bota lá na config dela 30 dias ae dps só vc bota pros npc da area vip só falarem com premium account , e bota uma porta aonde só que tem + de 1 dia de premium passe....
obrigado!
info
Grupo: Cavaleiro
Registrado: 02/09/06
Posts: 186
Reputação: +16

Aqui vai uma talkaction
function onSay(cid, words, param) if getPlayerPremiumDays(cid) <= 365 then --- Configure aqui o preço por dia local preço_dia = 2000 -- Preço por dia if param == "" then custo = preço_dia um_dia = 1 if doPlayerRemoveMoney(cid, custo) == TRUE then doPlayerAddPremiumDays(cid, um_dia) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have bought one day of premium account.") else doPlayerSendCancel(cid, "You don't have enough money.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else if getPlayerPremiumDays(cid) + param <= 365 then local custo = param * preço_dia if doPlayerRemoveMoney(cid, custo) == TRUE then doPlayerAddPremiumDays(cid, param) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have bought ".. param .." days of premium account.") else doPlayerSendCancel(cid, "You don't have enough money.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end else doPlayerSendCancel(cid, "You can not buy more than one year of Premium Account.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end else doPlayerSendCancel(cid, "You can not buy more than one year of Premium Account.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end end
Explicando:
Fale !buypremium "7 --> quantidade de dias que você quer de premium account, lembrando que o preço por padrão no Script é de 2k, então ele irá multiplicar 2000 * 7 que no caso é a quantidade de dias que está no exemplo acima
ai kara muito bom +n cerve eu quero um com vip eu fis um npc q vende so q e infinito vou posta aki o script do npc para vcs ver.
local focus = 0
local talk_start = 0
local target = 0
local following = false
local attacking = false
function onThingMove(creature, thing, oldpos, oldstackpos)
end
function onCreatureAppear(creature)
end
function onCreatureDisappear(cid, pos)
if focus == cid then
selfSay('Good bye then.')
focus = 0
talk_start = 0
end
end
function onCreatureTurn(creature)
end
function msgcontains(txt, str)
return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))
end
function onCreatureSay(cid, type, msg)
msg = string.lower(msg)
if (msgcontains(msg, 'hi') and focus == 0) and getDistanceToCreature(cid) < 4 then
selfSay('Ola ' .. creatureGetName(cid) .. '! Eu vendo vips. Para comprar vips me de 100 vip coins!!!')
focus = cid
talk_start = os.clock()
elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then
selfSay('Desculpe-me, ' .. creatureGetName(cid) .. '! Falo com voce em um minuto.')
elseif msgcontains(msg, 'vip') then
selfSay('Voce tem as 100 vip coins necessarias para adquirir a sua vip?')
talk_state = 1
talk_start = os.clock()
elseif getPlayerLevel(cid) < 8 then
selfSay('Desculpe, voce precisa de level 8 para comprar vip.')
talk_state = 0
elseif not isPremium(cid) then
selfSay('Desculpe, voce nao eh premium para comprar vip.')
talk_state = 0
elseif talk_state == 1 and msgcontains(msg, 'yes') then
if getPlayerItemCount(cid,6527) == 100 then
doPlayerRemoveItem(cid,6527,100)
setPlayerStorageValue(cid, 13540, 1)
selfSay('Parabens !!! Parabens voce Adiquiriu a sua vip.')
talk_state = 0
talk_start = os.clock()
else
selfSay('Desculpe Você só poderá ter 100VIP Coins na backpack para adquirir vip.Caso contrario não pegara.')
talk_state = 0
talk_start = os.clock()
end
elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 5 then
selfSay('Ate mais, ' .. creatureGetName(cid) .. '!')
focus = 0
talk_start = 0
elseif msgcontains(msg, 'nao') and getDistanceToCreature(cid) < 5 then
selfSay('Desculpe, ' .. creatureGetName(cid) .. '! Volte aqui quando tiver os itens nescessarios.')
talk_start = os.clock()
talk_state = 0
end
end
function onCreatureChangeOutfit(creature)
end
function onThink()
doNpcSetCreatureFocus(focus)
if (os.clock() - talk_start) > 30 then
if focus > 0 then
selfSay('Proximo...')
end
focus = 0
end
if focus ~= 0 then
if getDistanceToCreature(focus) > 5 then
selfSay('Ate mais.')
focus = 0
end
end
end
se alguem pod me fala onde eu adiciono para contar os dias.
eu quero coloka o npc por dai e melhor pq dai por ex:ele dropa os vip e vai e fala com o npc e vira vip. e melhor doq o player fika esperando algum god ou gm entra para add os seus dias de vip.
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

Eu tenho uma ideia, mas é meio loka.Voce pode fzer por spell, tipo exura, dai o cara compra por spell e nem vai sabe q compro por spell, ai tu faz spell com tempo, tipo exura.Se quiser fazer assim a aew o script:
Vai na pasta data/spells/scripts, cria um arquivo lua, nomeia pra vip e cola isto nele:
function onCastSpell(cid, var, pos)
if doPlayerRemoveItem(cid, 6527, 100) == TRUE then
queststatus = getPlayerStorageValue(cid, 13540)
if queststatus == -1 then
setPlayerStorageValue(cid, 13540, 1)
doPlayerSendTextMessage(cid, 22, "Parabens, agora voce é VIP")
params = {cid=cid,var=var,pos=pos}
addEvent(k, 50000, params)
else
doPlayerSendCancel(cid, "Voca ja é VIP, compre mais quando acabar sua VIP")
doPlayerAddItem(cid, 6527, 100)
end
else
doPlayerSendCancel(cid, "Voce n tem o minimo de VIP coins para comprar VIP")
end
end
function k(params)
doPlayerSendTextMessage(params.cid, 22, "Acabo VIP")
setPlayerStorageValue(params.cid, 13540, -1)
end
Agora va na pasta data/spells, abra o arquivo spells.xml e cole isto nele em instant spells:
<instant name="Buy VIP" words="Buy Vip" lvl="8" mana="0" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" script="vip.lua"><vocation name="Sorcerer" />
<vocation name="Druid" />
<vocation name="Paladin" />
<vocation name="Knight" />
<vocation name="Master Sorcerer" />
<vocation name="Elder Druid" />
<vocation name="Royal Paladin" />
<vocation name="Elite Knight" />
<vocation name="Slayer Sorcerer" />
<vocation name="Slayer Druid" />
<vocation name="Slayer Paladin" />
<vocation name="Slayer Knight" />
</instant>
Entao é isso aew, espero ter ajudado, se n quiser bota por spell, dexa keto, mas espero ter ajudado e qualquer problema so fla aew.Vc pode edita o tempo la no addEvent, eu botei 50 seg no caso 50000, mas se tu quiser tu pode bota dias, um dia é mais ou menos 86400 segundos, uma semana é 604800 mais ou menos e um mes com 30 dias é 2592000.Hehe, eu sei q ta meio confuso, mas n encontrei otro jeito de fazer e vc tb pode faze uma spell q fle com o player tipo a primera spell manda uma msg assim:Para comprar Vip fle "o nome da otra spell" e dai o player fla e roda esse script, se tu quise eu posso faze o da primera spell tb, mas é claro so se tu quise usa esse sistema.Fla aew oq achou.
Editado Agosto 13 por Demonbholder
bom cara muito bom vou coloka assim no meu ot. mais no entanto to com outro problema n sei se e aki q posta +, existe algum geito de um hacker bani o ip do pc? baniro meu ip do pc em outras palavras ninguem entra no ot nen eu nen outros players aparece q esta tudo ban. e tbm existe um geito de o cara consegui nuka o serve com 2 anti-nuker ativado? se vc poder me responder essas perguntas agradeço.
ahhh e muito obrigado pelo post vou add no meu serve. :smile_positivo:
tenho +1 duvida, fiko perfeito esse sistema so q eu queria q tivesse tipo um contador de dias e tal, tava pensando se dava pra fika tipo quando vc passa nos fogo q fika la embaixo dos itens do corpo um sinal de fogo, tipo dizendo q vc esta com fogo, n sei se vc vai consegui me entende, (ex:vc usa utamo, como vc sabe q ainda tah com utamo?, simples olhando no canto vc ve um circulo azul, significando q vc tah com utamo)eu queria tipo isso q fikasse tipo um sinal no canto dizendo q vc ainda tem vip.
n sei se da e uma teoria. ![]()
Editado Agosto 13 por MilesProwerBr
o noobinhu tem um script que faz esse negocio de ir temple quando acaba. link ai
pois e cara e um bom tuto +n funciona no meu pq ele presisa de uma pasta chamada >creaturescripts< q n tem no meu
eu acho q e para sql esse sistema o meu e xml ainda :smile_positivo: bom +vlw a intenção se soube de um melhor me avisa. a versão do meu ot e 8.1 xml
Editado Agosto 14 por MilesProwerBr
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

pois e cara e um bom tuto +n funciona no meu pq ele presisa de uma pasta chamada >creaturescripts< q n tem no meueu acho q e para sql esse sistema o meu e xml ainda :smile_positivo: bom +vlw a intenção se soube de um melhor me avisa. a versão do meu ot e 8.1 xml
Ta, quanto a sua duvida do Hacker eu n sei, acho q vc poderia baxa um Ot igual, copia as acc e o resto q vc quiser la do Ot Hackeado.Acho q isso deve resolve.E quanto a sua duvida do negocinho q aparece tipo utamo vita e fire field, eu entendi, vo ve se consigo faze, mas....n prometo nda, se eu conseguir edito esse post e te do ja.E quanto ao contador de dias na spell, admito q n sei fazer, o jeito bota aqueles segundos q eu te mandei no ultimo post.
--EDIT--
N consegui fazer o negocio do utamo vita, fire field etc...malz aew,
Editado Agosto 14 por Demonbholder
cara eu colokei akela spell q vc me mando fiko perfeito, eu ate fis o test colok 1 secundo so pra testa se o tempo tava certo e fiko certin, +n ten nenhum geito de fika marcando os dias e tal?, pq hora q vc fais a spell aparece vc e vip e da pra anda normal na area vip so q como o cara vai sabe qt tempo ele ainda tem ou se ja acabo ou n. se alguem pode me responde ^^. agradeço a compreenção!
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

cara eu colokei akela spell q vc me mando fiko perfeito, eu ate fis o test colok 1 secundo so pra testa se o tempo tava certo e fiko certin, +n ten nenhum geito de fika marcando os dias e tal?, pq hora q vc fais a spell aparece vc e vip e da pra anda normal na area vip so q como o cara vai sabe qt tempo ele ainda tem ou se ja acabo ou n. se alguem pode me responde ^^. agradeço a compreenção!
Assim cara, presta bem atençao:
Pra bota 1 dia de VIP tu tem q bota 86400 segundos, pra bota 1 semana de VIP tu tem q bota 604800 e pra bota 1 mes de VIP tu bota 2592000 segundos. E o cara vai sabe qnts dias ele tem de VIP contando tipo, se tu bota 1 semana de vip entao ele vai sabe q 1 semana dps vai acaba VIP.
function onCastSpell(cid, var, pos)
if doPlayerRemoveItem(cid, 6527, 100) == TRUE then
queststatus = getPlayerStorageValue(cid, 13540)
if queststatus == -1 then
setPlayerStorageValue(cid, 13540, 1)
doPlayerSendTextMessage(cid, 22, "Parabens, agora voce é VIP, voce tem 1 semana de VIP")
params = {cid=cid,var=var,pos=pos}
addEvent(k, 50000, params)
else
doPlayerSendCancel(cid, "Voca ja é VIP, compre mais quando acabar sua VIP")
doPlayerAddItem(cid, 6527, 100)
end
else
doPlayerSendCancel(cid, "Voce n tem o minimo de VIP coins para comprar VIP")
end
end
function k(params)
doPlayerSendTextMessage(params.cid, 22, "Acabo VIP")
setPlayerStorageValue(params.cid, 13540, -1)
end
Olha como eu mudei a mensagem em negrito, ai tu faz a mesma coisa.Entendeu???Se n tive entendido me fla.
eu entendi fera e so q tipo (Ex:se o player charea com uma pessoa e eu dou os vip coins para ele, ele fara a magia e conseguira um mes de vip, so q o cara q charea com ele n sabera, so se eles contarem) tipo assim eu queria faze para q eles visse q tem vip. Ex:uma bolinha azul tipo utamo, ou um contador tipo o de premium, ou uma roupinha diferente. alguma coisa assim (menos vocaçoes pq ja colokei em quest). :positive:
eu colokei assim fera no meu ot, colokei 2 magias uma q vende por 100 vip coins 1 mês de vip, e outra q vende 1 semana por 50 vip coins.acho q assim fiko roox.pq dai o cara coloka 50 em vip e o resto compra itens^^
info
Grupo: Infante
Registrado: 13/10/08
Posts: 1.6k
Reputação: +420
Char no Tibia: Demonbholder

eu entendi fera e so q tipo (Ex:se o player charea com uma pessoa e eu dou os vip coins para ele, ele fara a magia e conseguira um mes de vip, so q o cara q charea com ele n sabera, so se eles contarem) tipo assim eu queria faze para q eles visse q tem vip. Ex:uma bolinha azul tipo utamo, ou um contador tipo o de premium, ou uma roupinha diferente. alguma coisa assim (menos vocaçoes pq ja colokei em quest). :positive:
eu colokei assim fera no meu ot, colokei 2 magias uma q vende por 100 vip coins 1 mês de vip, e outra q vende 1 semana por 50 vip coins.acho q assim fiko roox.pq dai o cara coloka 50 em vip e o resto compra itens^^
Bom cara vc pode fazer o seguinte, bota um script pra quando o player entra no char, fla assim, "Voce é VIP", mas so q dai n vai dize o tempo restante de VIP, mas se quiser assim, so me fla q eu faço o script de quando o cara entra no char fla "Voce é VIP".






info
Grupo: Campones
Registrado: 10/04/08
Posts: 1
Reputação: 0
galera o eu aki dnovo.eu colokei sistema vip no meu ot +n tem tempo e infinito. eu quero um script com dias tem como fazer isso?por exemplo 30 dias de vip para o player,dps remove e ele volta para templo, se ele estiver em um local vip.obrigado a atenção.
versão do ot 8.1
Editado Agosto 11 por MilesProwerBr