Ir para conteúdo

Posts Recomendados

como sempre estou com dúvida se é possivel fazer uma talkaction que tipo teleportasse players para tal lugar só que de acordo com o lvl de cada exemplo :

isso cada area adequada com o lvl

 

lvl 201 até lvl 300 ---->> vai pra um lugar

lvl 301 até lvl 400 --->> vai pra outro lugar

lvl 401 até lvl 500 -->> outro lugar

lvl 501 até lvl 601 -->> vai pra outro lugar

tudo isso numa talkaction só...

 

e tipo essa talkaction só pudesse ser usada na hora do evento e e tambem só em protect zone.

 

 

Obrigado..

Editado por Khost
Link para o comentário
https://xtibia.com/forum/topic/117723-d%C3%BAvida-sanada-por-_ferrari_-e-lucasjockey/
Compartilhar em outros sites

po tipo uma talkaction pro GOD e uma pro player, pro GOD uma talkaction que tipo desbloqueasse a talkaction do player a talkaction só o GOD possa usar ,a talkaction do player teleportasse o player para o lugar adequado pro seu lvl :

use esse exemplo...

 

• Até level 200

 

• Até level 500

 

• Até level 800

 

• Acima de level 800

 

e depois uma talkaction que tipo "fexasse" o evento não deixando que o player use a talkaction para se teleportar...

 

espero que vc entenda e obrigado por ter ajeitado a outra action...

Obrigado..

o evento são 4 areas pra cada lvl ae os players se teleportam pra arena do seu lvl adequado ae eu uso uma alavanca e eles tem 10 segundos pra passar pelas pedras e dps só no proximo round o nome é Survivor, ae quando acaba o evento o vencedor ganha uma medal of honor id (5785) e podem vender no npc em troca de 20 dias de premium , obs a medal só é pra quem ganhou 2 rounds ou + ...

 

mas essa talkaction só pode ser usada quando o evento começar....

 

é assim vlw!

function onSay(cid,words)

if getPlayerAccess(cid) >= 3 then

setGlobalStorageValue(1234,1)

end

end

function onSay(cid,words)

if getGlobalStorageValue(1234) == 1 then

if getPlayerLevel(cid) <= 200 then

doTeleportThing(cid,{x=123,y=123,z=7}

elseif getPlayerLevel(cid) > 200 and <= 500 then

doTeleportThing(cid,{x=321,y=321,z=7}

elseif getPlayerLevel(cid) > 500 and getPlayerLevel(cid) <= 800 then

doTeleportThing(cid,{x=231,y=231,z=7}

else

doTelportThing(cid,{x=432,y=432,z=7}

elseif getGlobalStorageValue(1234) ~= 1 then

return doPlayerSendCancel(cid,"The event is closed.")

end

end

Ferrari Obrigado pelo script , ele ta dando um erro

 

olhe :



[06/08/2009 11:51:35] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/survivor.lua)
[06/08/2009 11:51:35] data/talkactions/scripts/survivor.lua:5: ')' expected (to close '(' at line 4) near 'else'

 

outra coisa como eu fasso pra fexar o evento????

e outra coisa será que vc pode adcionar essa linha aqui no script :

 

 

if getTilePzInfo(player) == TRUE then

 

 

pra só pode ser executado em protect zone...

 

Obrigado!

Editado por Khost

[06/08/2009 16:35:10] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/survivor.lua)

[06/08/2009 16:35:10] data/talkactions/scripts/survivor.lua:6: unexpected symbol near '<='

 

e agora???

 

oq pode ser..

 

Vlw!

function onSay(cid,words)

local lvl = getPlayerLevel(cid)

if getGlobalStorageValue(1234) == 1 then

if lvl <= 200 then

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

elseif lvl > 200 and lvl <= 500 then

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

elseif lvl > 500 and lvl <= 800 then

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

else

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

end

else

return doPlayerSendCancel(cid,"The event is closed.")

end

return 1

end

 

EDIT~~

 

Créditos para _ferrari_ pelo script.

Eu só modifiquei.

 

;D

Editado por lucasjockey

vlw Lucasjockey, como eu boto pra esse comando só poder ser usado em protect zone???

 

e outra coisa como eu fasso pra bota essa parada de storangevalue ?

 

Obrigado...

Editado por Khost

function onSay(cid,words)
local lvl = getPlayerLevel(cid)
if getGlobalStorageValue(1234) == 1 then
if getTilePzInfo(getPlayerPosition(cid)) == 1 then
if lvl <= 200 then
doTeleportThing(cid,{x=123,y=123,z=7})
elseif lvl > 200 and lvl <= 500 then
doTeleportThing(cid,{x=321,y=321,z=7})
elseif lvl > 500 and lvl <= 800 then
doTeleportThing(cid,{x=231,y=231,z=7})
else
doTeleportThing(cid,{x=432,y=432,z=7})
end
else
return doPlayerSendCancel(cid,"Voce nao esta em uma Protection Zone.")
end
else
return doPlayerSendCancel(cid,"The event is closed.")
end
return 1
end

 

Créditos: _ferrari_

 

~~

 

Explique um pouco melhor sobre o Storage Value, para colocar é só usar esse comando:

 

setPlayerStorageValue(uid, valueid, newvalue)

Vlw Lucas o Ferrari ele boto esse script tbm + ele n funciona...

 

function onSay(cid,words)
if getPlayerAccess(cid) >= 3 then
setGlobalStorageValue(1234,1)
end
end

 

esse script que ele fez foi pra tipo quando eu usasse esse comando liberava a talkaction só que isso não acontece ele ja esta liberada quando eu abro o ot...

 

a outra coisa como eu boto esse efeito embaixo da msg ??

 

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

 

Obrigado!

Editado por Khost
Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

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