vou mostrar como fazer uma alavanca que presisa de um item para poder ser acionada e essa alavanca remove pedras ou outras coisas...
assim... va ateh /data/actions/scrpt e faz um novo arquivo e o re-nomeia para alavitem.lua ... dps cole isso dentro:
function onUse(cid, item, frompos, item2, topos)
item1pos = {x=161, y=58, z=7, stackpos=255} --item1pos
item1 = getThingfromPos(item1pos)
if item.itemid == 1945 and item1.itemid == 2435 then
doRemoveItem(item1.uid,1)
doSendMagicEffect(item1pos,13)
porta = {x=157, y=59, z=7, stackpos=1}
parede = getThingfromPos(porta)
doRemoveItem(parede.uid,1)
doTransformItem(item.uid,item.itemid+1)
elseif item.uid == 8001 and item.itemid == 1946 then
doTransformItem(item.uid,item.itemid-1)
else
return 0
end
return 1
end
dps que vc vez isso... va no arquivo Actions.xml em /data/actions e bote o seguinte:
<action uniqueid="8001" script="alavitem.lua"/>
em vermelho eh o lugar que sera removido. exp: uma pedra
em verde eh o lugar onde o item deve estar para poder puxar a alavanca
em amarelo eh o item que presisa para ativar a alavanca
em rosa eh o nome do script que vc acabou de fazer
bom e pra fechar essa porta???
/data/movements/script
e faça um novo arquivo... e dps :
function onStepIn(cid, item, pos)
if isPlayer(cid) == 1 then
pedrapos = {x=161, y=58, z=7, stackpos=1}
pedraid = 1285
doCreateItem(1285,1,pedrapos)
end
end
em azul eh a posição da pedra
em cinza eh o id da pedra, para criar ela de novo
dps disso.. salve e va em /data/movements
abra o movements.xml e add:
<movevent event="StepIn" actionid="3334" script="pedra.lua"/>
em verde eh o UID que devera ser colocado no piso no map editor... exp: ponha o UID no piso atras da pedra... para que quando vc passar pelo piso a pedra volte e voce fica preso =D
em azul eh o script que ira ativar a movement.
DONE!