Bom , no meu server para se conseguir uma guild halls as guilds precisam duelar entre si , e para eu fazer o duelo ficar homogêneo , e bem organizado resolvi criar uma sala só para esse evento , o melhor da sala é que só entra quem realmente estiver no evento .
Essa action é feita para duelos 5x5 , 10x10 , e por ai vai , os players da guild ficam em cima dos chãos que "afundam" , o item que só os gms devem ter é colocado em cima da coal basin , vira-se a switch , o item é removido , e os players teleportados para a arena ! aqui vai uma foto de como montei essa arena no meu otserv para vocês entenderem melhor :
crie um arquivo chamado guildwar1 e coloque :
function onUse(cid, item, frompos, item2, topos)player1pos = {x=256, y=337, z=6, stackpos=253}
player1 = getThingfromPos(player1pos)
player2pos = {x=256, y=338, z=6, stackpos=253}
player2 = getThingfromPos(player2pos)
player3pos = {x=256, y=339, z=6, stackpos=253}
player3 = getThingfromPos(player3pos)
player4pos = {x=256, y=340, z=6, stackpos=253}
player4 = getThingfromPos(player4pos)
player5pos = {x=256, y=341, z=6, stackpos=253}
player5 = getThingfromPos(player5pos)
piece1pos = {x=256, y=343, z=6, stackpos=1}
getpiece1 = getThingfromPos(piece1pos)
if item.uid == 4231 and item.itemid == 2711 and getpiece1.itemid == 2787 and player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 and player5.itemid > 0 then
doRemoveItem(getpiece1.uid,1)
nplayer1pos = {x=256, y=337, z=7}
nplayer2pos = {x=256, y=338, z=7}
nplayer3pos = {x=256, y=339, z=7}
nplayer4pos = {x=256, y=340, z=7}
nplayer5pos = {x=256, y=341, z=7}
doTeleportThing(player1.uid,nplayer1pos)
doSendMagicEffect(nplayer1pos,10)
doTeleportThing(player2.uid,nplayer2pos)
doSendMagicEffect(nplayer2pos,10)
doTeleportThing(player3.uid,nplayer3pos)
doSendMagicEffect(nplayer3pos,10)
doTeleportThing(player4.uid,nplayer4pos)
doSendMagicEffect(nplayer4pos,10)
doTeleportThing(player5.uid,nplayer5pos)
doSendMagicEffect(nplayer5pos,10)
doTransformItem(item.uid,item.itemid+1)
elseif item.uid == 4231 and item.itemid == 2712 then
doTransformItem(item.uid,item.itemid-1)
else
doPlayerSendTextMessage(cid,22,"Sorry, not possible.")
end
return 1
end
em
player1pos = {x=256, y=337, z=6, stackpos=253} coloque a cordenada do chão que "afunda" em que o player 1 estará , fassa o mesmo em player2pos ... player3pos ... até o player5pos.if item.uid == 4231 , 4231 é o UNIQUE ID que você deve colocar na SWITCH.
2711 é o id da switch
getpiece1.itemid == 2787 , 2787 é o id do item que será colocado sobre o coal basin , no caso é um green tome.
nplayer1pos = {x=256, y=337, z=7} será a cordenada para onde o player 1 será teleportado , faça o mesmo para os players restantes.
agora coloque em actions.xml :
CODE
<action uniqueid="4231" script="guildwar1.lua" />
para fazer do outro lado é só criar um arquivo com outro nome e copiar tudo isso , mas mudando as cordenadas todas , e o UNIQUE ID da switch , mudar tb se você quiser o id do item , para não ficar o mesmo nos 2 , depois é só por no actions.xml a linha :
CODE
<action uniqueid="UNIQUE ID DA NOVA SWITCH" script="NOME DO ARQUIVO NOVO.lua" />
dúvidas ? poste aqui ou mande pm =) , espero ajudar pelo menos um pouco.