Ir para conteúdo

[movement] Preciso De Ajuda


Gustavotalion

Posts Recomendados

Olá! Estou usando o um Vip System que nao funciona comigo

Meu server é diamond 0.2.7 se nao me engano :S

 

function onStepIn(cid, item, position, fromPosition)

timenow = os.time()

quantity = math.floor((getPlayerStorageValue(cid,29000) - timenow)/(3600*24))

if isPlayer(cid) then

if quantity > 0 then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você ainda tem ".. quantity .." dia(s) restante(s) de VIP.")

else

dir = getPlayerLookDir(cid)

pos = getCreaturePosition(cid)

 

 

if dir == 0 then

newpos = {x=pos.x, y=pos.y+1, z=pos.z}

elseif dir == 2 then

newpos = {x=pos.x, y=pos.y-1, z=pos.z}

elseif dir == 1 then

newpos = {x=pos.x-1, y=pos.y, z=pos.z}

elseif dir == 3 then

newpos = {x=pos.x+1, y=pos.y, z=pos.z}

end

 

doTeleportThing(cid, newpos, dir)

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Somente jogadores VIPs podem entrar nesta área.")

end

end

end

 

Esse é o script. Em movements.xml já adicionei

<movevent event="StepIn" actionid="29000" script="vipsystem.lua"/>

 

 

Ele serve para quando um player pisa no determinado SQM, o script irá checkar se ele tem vip. Se tiver ele anda, se nao tiver ele volta...

 

 

Coloquei no map editor entao o tile e adicionei o actionid 29000... mas quando eu tento pisar em cima dele no ot, fala "You need level 28000 to pass" ou algo assim.. ta como se eu precisa-se do level 28000 pra passar, em vez de checkar se o player tem a vip ou nao

 

Não consigo saber se o sistema de vip tá funcionando tambem, pq nao da pra testar sem o tile :p

 

Talkaction para adicionar a vip:

 

function onSay(cid, words, param)

 

-- configs

access = 3

days = 30

-- end configs

 

player = getPlayerByName(param)

daysvalue = days*3600*24

storageplayer = getPlayerStorageValue(player,29000)

timenow = os.time()

if storageplayer == -1 or storageplayer == 0 then

time = timenow+daysvalue

else

time = storageplayer+daysvalue

end

 

 

if param ~= "" then

if getPlayerGroupId(cid) >= access then

doPlayerSendTextMessage(player, MESSAGE_INFO_DESCR, "Foram adcionados ".. days .." dias de VIP no seu character.")

setPlayerStorageValue(player,29000,time)

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

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

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Somente jogadores com acesso maior que "..access.." podem adcionar vips.")

end

 

end

 

end

 

Adicionado no talkactions.xml:

 

<talkaction words="/addvip" script="addvip.lua"/>

 

 

http://www.xtibia.com/forum/Perfect-Vip-System-t100858.html

 

 

Link do tópico onde consegui esse sistema

 

 

Obrigado desde já :positive:

Link para o comentário
Compartilhar em outros sites

Não aparece erro;

 

'Coloquei no map editor entao o tile e adicionei o actionid 29000... mas quando eu tento pisar em cima dele no ot, fala "You need level 28000 to pass" ou algo assim.. ta como se eu precisa-se do level 28000 pra passar, em vez de checkar se o player tem a vip ou nao'

 

isso q ta acontecendo errado.

Link para o comentário
Compartilhar em outros sites

"Coloquei no map editor entao o tile e adicionei o actionid 29000... mas quando eu tento pisar em cima dele no ot, fala "You need level 28000 to pass"...".

 

O tile que você utilizou para colocar o vip system já tem uma tag no movements.xml, recomendo que você utilize outro tile para colocar o actionid.

Editado por lucasjockey
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...