Se eu entendi você quer uma alavanca que leve os players para um local e depois, os players que estiverem nesse local sejam teleportados para a arena assim que você usar o comando certo? Estou aprendendo a scripting ainda, mas vê ai se funciona =P
va em actions>scripts copie um arquivo qualquer, renomeie para alavanca.lua, apague tudo e nele cole:
function onUse(cid, item, frompos, item2, topos)
local pos = {x= 100, y = 40, z = 7} --- posição da sua arena
doTeleportThing(cid, pos)
doSendMagicEffect(getPlayerPosition(cid), 10)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce foi teleportado para a sala de espera. Aguarde o evento ser aberto!")
end
Agora em actions.xml adicione o seguinte:
<action uniqueid="XXXX" event="script" value="alavanca.lua"/>
Em XXXX você troca pelo unique id que você colocou na sua alavanca pelo map editor.
Agora o comando /guildwar: (créditos Vodkart)
Vá em talkactions>scripts, copie um arquivo qualquer e renomeie para guildwar.lua, apague tudo e cole isto:
function onSay(cid, words, param, channel)
for x = 640, 689 do
for y = 324, 367 do
local m = getTopCreature({x=x, y=y, z=7}).uid
if m ~= 0 and isPlayer(m) then
doTeleportThing(m, {x=659, y=370, z=7}) -- edita a posição da sua arena
end
end
end
return true
end
Ali em for x = 640, 689 você troca pela coordenada x do canto superior esquerdo da sua "sala de espera" e pela coordenada x do canto inferior direito, respectivamente. Na parte for y, você segue o mesmo raciocinio. E em doTeleportThing(m, {x=659, y=370, z=7}) edita a posição para onde os players serão levados.
Agora em talkactions.xml você adiciona a tag:
<talkaction words="/guildwar" acess="5" event="script" value="guildwar.lua"/>
Como disse, to começando agora, então usei o script do Vodkart. Ainda tô aprendendo, mas acho que vai servir. Vlw =P