Postado Julho 6, 2018 6 anos TFS 0.4 / Tibia 8.6 Olá amigos do TK, preciso de um script que crie um tile por certo tempo ao dar use na alavanca. Ex: ao dar use na alavanca, ela cria um tile na posição xxx durante x segundos e manda uma msg ao player "abriu alguma coisa". eu achei um script do @CoyoteStark, as vezes da pra adaptar para essa função. function onUse(cid, item, fromPosition, itemEx, toPosition) piece1pos = {x=106, y=1814, z=6, stackpos=1} local tempo = 2*60*1000 -- tempo para parede voltar getpiece1 = getThingfromPos(piece1pos) if item.uid == 3333 and item.itemid == 1945 and getpiece1.itemid == 3632 then doRemoveItem(getpiece1.uid,1) doTransformItem(item.uid,item.itemid+1) doPlayerSendTextMessage(cid,22,"acho que ouvi um barulho, uma passagem deve ter se aberto.") addEvent(doCreateItem, tempo, 3632, piece1pos) addEvent(doTransformItem, tempo, item.uid,1945) elseif item.uid == 3333 and item.itemid == 1945 then doTransformItem(item.uid,item.itemid-1) addEvent(doCreateItem, 2*60*1000, item.itemid, piece1pos) else doPlayerSendTextMessage(cid,22,"Não é possivel realizar esta ação.") end return 1 end Desde já agradeço a todos.
Postado Julho 6, 2018 6 anos function onUse(cid, item, fromPosition, itemEx, toPosition) local id,pos,x = 671,{x=234, y=39, z=7},true if getTileItemById(pos, id).uid == 0 then x = false end if x == true then doRemoveItem(getThingfromPos(pos).uid,1) doPlayerSendTextMessage(cid,22,"acho que ouvi um barulho, uma passagem deve ter se aberto.") else doCreateItem(id, 1, pos) end doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945) return true end
Postado Julho 6, 2018 6 anos Autor @Sir Andrey Seu script funcionou parcialmente, a mensagem só está aparecendo ao dar o segundo "use" na alavanca o que no caso remove o o tile novamente, e está sem a função do tempo.
Postado Julho 6, 2018 6 anos function onUse(cid, item, fromPosition, itemEx, toPosition) local id,pos,x = 671,{x=234, y=39, z=7},true doRemoveItemTime = 2*60*1000 doPlayerSendTextMessage(cid,22,"acho que ouvi um barulho, uma passagem deve ter se aberto.") 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
Postado Julho 6, 2018 6 anos Autor @Sir Andrey Deu certo, mas teria como travar o "use" da alavanca após o primeiro uso ? Tipo, ela só poderia ser usada novamente após a contagem do tempo acabar e ela retornar a posição original.
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.