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 !
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 !
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
=]
Se Ajudei Rep + plx não custa nada
Technomancer :X
Scripter Iniciante
mais sirvo pra alguma coisa pelo menos ;D
-- Criado por : Technomancer! --
rippando denovo? esse script agora é do vodkart
The Joker
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 =/.
É proibido segundo as regras do fórum, rippar um conteúdo e ainda colocar seus créditos nele. Peço que se explique, caso contrário estarei reportando para a moderação.
Oie :D
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.