Ir para conteúdo

Help-Me Fast !


lorddemons

Posts Recomendados

entaao to começando agora,e to fazendo um ot global !

e quero fazer uma area vip,mais como faço pra so as pessoas da vocaçao epic que seerao pagos na rl passarem naqela porta?

to com essa duvida aqe nao consigo resolver =/

me ajudem por favor !

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

cara pra fazer esse sistema se você usa site,você poim o comando /addvip 30,Technomancer por exemplo:

a confirmação que o cara pago irá até seu email caso use o Gesior Acc Maker,se não usa procure na seção de downloads do Xtibia que você acha

 

para adicionar esse comando faça o seguinte vá para data/talkactions/scripts e crie um arquivo.lua chamado addvip ponha isso dentro:

 

-- Criado por : Technomancer! --

 

function onSay(cid, words, param)

if(words == "!vipdays") then

local timenow = os.time()

local quantity = math.floor((getPlayerStorageValue(cid, 13500) - 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 == "/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 getPlayerAccess(pid) > getPlayerAccess(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, 13500)

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, 13500, time)

local quantity = math.floor((getPlayerStorageValue(player,13500) - timenow)/(3600*24))

doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Você tem "..quantity.." dias de VIP restantes.")

end

 

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 getPlayerAccess(pid) > getPlayerAccess(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, 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 == "/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 getPlayerAccess(pid) > getPlayerAccess(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,13500) < 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,13500,getPlayerStorageValue(C.uid,13500)-C.time)

end

doSendMagicEffect(C.pos, math.random(28,30))

end

end

 

return TRUE

end

 

agora vá para data/talkaction.xml e abra com o bloco de notas na fala dos gods adicione:

<talkaction log="yes" words="/delvip" access="5" script="addvip.lua"/>

<talkaction log="yes" words="/addvip" access="5" script="addvip.lua"/>

 

e na dos player adicione:

<talkaction log="yes" words="/checkvip" access="5" script="addvip.lua"/>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~""~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

funciona assim:

o god fala /addvip 30,Technomancer

o god fala /delvip 30,Technomancer

o player para ver sua vip diz /checkvip

 

se ajudei REP+

não custa nada

=]

 

ou se for pela vocação que agora entendi :S faça assim vá até data/actions/scripts copie um arquivo lua renomeie para vocdoor e adicione isso:

 

---VocDoor-by Technomancer---

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

PlayerVoc = getPlayerVocation(cid)

if PlayerVoc == 5 then

doTeleportThing(cid,{x=319, y=31, z=7})

else

doPlayerSendCancel(cid,"Apenas Master Sorcerers Podem Passar Aqui.")

return 1

end

end

 

agora abra o actions.xml e adicione essa tag:

<action uniqueid="9191" script="vocdoor.lua" />

 

Vermelho id da vocação ponha a do epic aquela no caso é de master sorcerer

Azul lugar que teleportara o player vip ao entrar na porta é melhor por o id da frente da porta para ficar mais legal

Verde msg que aparece se o player não for no seu caso Epic

 

espero ter ajudado

se ajudei REP+

custa nada

=]

Link para o comentário
Compartilhar em outros sites

KKKKKKKKKKKKKKKKKKKKK Ele Copia Os Script E Poim Creditos Dele Falando Qe Ele Qe Fez Para Com Isso Se Esta Fazendo Isso Para Impressionar Qem Ve Apenas Ta Pagando Mico Post Seus Script Não Script Dos Outros Falando Qe E Seu =/.

Link para o comentário
Compartilhar em outros sites

Foi muito legal de sua parte passar o script, porém nada legal para sua reputação no fórum pelo ato cometido, esquecer de colocar os créditos você não esqueceu, tanto que o seu nome está no lugar onde era pra estar o nome do devido criador do script.

Além de ser proibido de acordo com o fórum, é falta de honestidade.

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...