Ir para conteúdo
  • 0

Puxa Alavanca E Aparece/some Vários Tiles


Renatogold7

Pergunta

[9.10][Pedido][Action]

Queria um script que quando eu dou USE na Alavanca aparece vários tiles (ID 1284) em várias posições (x=1023 y=1017 z=8, x=1024 y=1017 z=8, x=1025 y=1017 z=8, x=1026 y=1017 z=8) que seja facilmente configurável para adicionar/remover novas posições e diferentes tiles.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Abra actions.xml e adicione:

<action actionid="4876" script="dotile.lua"/>

 

Agora em data/actions/scripts crie um arquivo chamado dotile.lua e adicione:

function onUse(cid, item, fromPosition, itemEx, toPosition)

local id,pos,x = 1284,{x=1023, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = 1284,{x=1024, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = 1284,{x=1025, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = 1284,{x=1026, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)

return true

end

Editando:

 

-Vermelho: Id do tile

-Verde: Localização do tile

 

Para adicionar mais posições faça o seguinte:

 

Adicione o seguinte arquivo antes de doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945):

local id,pos,x = ITEM,{x=POS, y=POS, z=POS},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

Editando:

 

-Vermelho: Id do item

-Verde: Posição (x,y,z)

 

Ex:

function onUse(cid, item, fromPosition, itemEx, toPosition)

local id,pos,x = 1284,{x=1023, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = 1284,{x=1024, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = 1284,{x=1025, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = 1284,{x=1026, y=1017, z=8},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

local id,pos,x = ITEM,{x=POS, y=POS, z=POS},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

else

doCreateItem(id, 1, pos)

end

doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)

return true

end

 

-Laranja: Parte adicionada

 

Adicionando no RME:

dotile.png

Editado por Newtonnotwen
Link para o comentário
Compartilhar em outros sites

  • 0

Funcionando perfeitamente, o tile aparece quando puxa a alavanca e some quando puxa denovo, porém some o tile que estava anteriormente lá. Há um detalhe que esqueci de falar, não daria para quando você puxar a alavanca novamente (para o tile sumir) em vez de ficar sem nenhum tile no local o tile ser substituido por outro (ID 493)?

Ficaria assim?

local id,id2,pos,x = ITEM,ITEM2,{x=POS, y=POS, z=POS},true

if getTileItemById(pos, id).uid == 0 then x = false end

if x == true then

doRemoveItem(getThingfromPos(pos).uid,1)

doCreateItem(id2, 1, pos)

else

doCreateItem(id, 1, pos)

end

 

@Edit

Bem, eu testei isso que falei e deu certo. E aproveita a sua ajuda que você me deu e cria um tutorial para isso (se não houver), a sua resposta já foi um belo tutorial detalhado, obrigado! E se você tiver tempo da uma olha no seguinte link, é algo que pedi ajuda, bem mais complicado, mas ninguem me respondeu até agora se é pelo menos possível fazer: http://www.xtibia.co...01#entry1311401 e obrigado novamente!

 

@Edit2

Ops, esqueci, REP+ pra você!

Editado por Renatogold7
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...