Vamos supor que você esteja fazendo uma quest, e se depara com uma alavanca e uma parede
fechada bem á sua frente. E outra aberta atrás.
Você puxa a alavanca e a parede de trás abre, mas a parede da frente fecha!
Assim é preciso um outro player para puxar a alavanca novamente para abrir a próxima parede.
Vamos ao tutorial:
Desenhe uma área no mappa editor
Anote as posições X, Y e Z da parte da parede aberta, e escolha um sqm da parte FECHADA da parede (recomendo o que está paralelo em relação ao sqm sem a parede).
Clique no botão direito sobre a alavanca e coloque ela com o UniqueID 8116.
Agora vá na pasta data/actions/scripts, copie e cole qualquer arquivo daquela pasta nela mesma. Renomeie-o para "paredelever".
Abra e apague tudo, e coloque o seguinte:
function onUse(cid, item, frompos, item2, topos)
wallpos1 = {x=232, y=428, z=7, stackpos=1}
wallpos2 = {x=232, y=426, z=7, stackpos=1}
getwall1 = getThingfromPos(wallpos1)
getwall2 = getThingfromPos(wallpos2)
if item.uid == 8116 and
item.itemid == 1945 and
getwall1.itemid == 1052 then
doRemoveItem(getwall1.uid,1)
doCreateItem(1052,1,wallpos2)
doTransformItem(item.uid,item.itemid+1)
elseif item.uid == 8116 and
item.itemid == 1946 and
getwall2.itemid == 1052 then
doCreateItem(1052,1,wallpos1)
doRemoveItem(getwall2.uid,1)
doTransformItem(item.uid,item.itemid-1)
end
return 1
end
Troque as posições em
wallpos1 = {x=232, y=428, z=7, stackpos=1}
wallpos2 = {x=232, y=426, z=7, stackpos=1}
pelas posições da partes fechada e aberta das duas paredes que você anotou, respectivamente.
Salve o arquivo e agora entre no arquivo "actions.xml".
Insira o seguinte em qualquer parte do arquivo:
<action uniqueid="8116" script="paredelever.lua" />
Agora, quando você puxar a alavanca, o ponto que você escolheu na parede fechada irá sumir, e a parte aberta da outra parede fechará (com a criação de uma nova parede).
Quando você puxa a alavanca denovo, o script repete a ação, fazendo com que um player
precise passar e ficar no meio e outro puxar a alavanca novamente para que o outro possa passar.
Créditos curse knight 50%
MarkimBozi 50%