IV
moveevent

Script de senhttp://www.xtibia.com/forum/topic/232588-script-de-sentar-em-cadeira/tar em cadeira

Por IvanAppel, 27 de abr. de 2014 em Actions e Talkactions

otserv
tibia
script
3
916
27 de abril de 2014 às 14:34

Bom, primeiramente boa tarde a todos, vim aqui postar um script que desenvolvi, que é o de sentar, ele funciona de modo que quando você subir em cima de tal cadeira a cadeira vira um item sem sprite, ou seja, uma sprite sem nada, um quadrado digamos transparente. E deixa a pessoa que está em cima da cadeira com a outfit de uma pessoa sentada em uma cadeira, naquela cadeira não é possível deslogar por causa de alguns erros a mais que poderia causar ao script.

 

Script:

Em movements.xml adicione as tags:

<movevent type="StepIn" itemid="id da cadeira normal" event="script" value="scriptsentar1.lua" />

<movevent type="StepOut" itemid="id da cadeira sem sprite" event="script" value="scriptsentar2.lua" />

Em scriptsentar1.lua coloque isso:

-----Script de sentar 1.0 by Eryrrel (www.xtibia.com)------

local outfit = getCreatureOutfit(cid)

function onStepIn(cid, item, position, fromPosition)
setPlayerStorageValue(cid,123123, 1) -- no lugar de 123123 é o número da storage
setPlayerStorageValue(cid,outfit, 1) -- não mexa
doTransformItem(cid,123123) -- id da cadeira sem sprite
doSetCreatureOutfit(cid, 123123, 99999999999999) -- no lugar de 123123 coloque o id da outfit que é o carinha + cadeira deixe os 99999 que estão ali
end

Em scriptsentar2.lua coloque isso:

-----Script de sentar 1.0 by Eryrrel (www.xtibia.com)------
function onStepOut(cid, item, position, fromPosition)
setPlayerStorageValue(cid,123123, -1) -- no lugar de 123123 é o número da storage de antes
setPlayerStorageValue(cid,outfit, -1)
doSetCreatureOutfit(cid, outfit, 99999999999999) -- aqui volta pra outfit de antes
doTransformItem(cid,456456) -- id da cadeira antes de perder sua sprite
end

No RME selecione a opção de tile que não possa deslogar e coloque onde tem cada cadeira, lembrando, crie um script para cada cadeira e uma sprite também.
Créditos:
Eryrrel -- Por ter criado o script.
Slicer -- Por me dizer sobre o nologout do RME.
Se algum scripter experiente ver que tem algum erro fale por favor que eu concerto.
Atenciosamente, Eryrrel.

Editado Abril 27 por eryrrel

zipter98Z
27 de abril de 2014 às 14:38

Ou, ao invés de fazer isso do nologout no RME, você pode fazer uma condição por onLogout.

27 de abril de 2014 às 14:58

Eu coloquei essa do RME porque foi o único modo que eu sei fazer '-' mas fora isso tem algum erro no script?