Ir para conteúdo

Loremaster49

Membro
  • Registro em

  • Última visita

  1. Olá pessoal tudo bem? estou fazendo um Otserver 7.72 voltado ao RPG, totalmente Oldschool. A distro que estou usando é "The OTX Server Version: (2.X.S - 4)" Estou tentando implementar a seguinte função no meu código: "alavanca por tempo". Meu código faz diversas funções, como por exemplo: o player clica em uma pedra, e essa pedra remove 4 pedras em outro lugar, cria uma alavanca em baixo das pedras que foram removidas, e depois com tempo de 10 segundos remove a alavanca criada e aparecem as 4 pedras removidas no lugar novamente. Até ai está tudo perfeito, mas se o player clicar várias vezes seguidas na pedra que executa essas funções, da um bug e não funciona mais. Eu precisava que o player clica-se na pedra, e tivesse que esperar um certo tempo para poder clicar novamente nessa pedra (que é uma espécie de "alavanca"). No caso espera-se 10 ou 15 segundos, para poder clicar novamente na pedra e ela funcionar... Assim funcionária tudo perfeito.. espero que alguém possa me ajudar... é isso galera tamo junto!!! Meu código: local time = 10 local tempo = 10 local lever_pos = {x = 2730, y = 2672, z = 7, stackpos=1} local r1_pos = {x=2731, y=2673, z=7, stackpos=1} local r2_pos = {x=2730, y=2673, z=7, stackpos=1} local r3_pos = {x=2730, y=2672, z=7, stackpos=1} local r4_pos = {x=2731, y=2672, z=7, stackpos=1} function onUse(cid, item, frompos, item2, topos) local playerTile1 = {x=2731, y=2673, z=7} local playerTile2 = {x=2730, y=2673, z=7} local playerTile3 = {x=2730, y=2672, z=7} local playerTile4 = {x=2731, y=2672, z=7} local new = {x = 2732, y = 2672, z = 7} getrock1 = getThingfromPos(r1_pos) getrock2 = getThingfromPos(r2_pos) getrock3 = getThingfromPos(r3_pos) getrock4 = getThingfromPos(r4_pos) local lever = getThingfromPos(lever_pos) if item.uid == 60115 and item.itemid == 1304 then doRemoveItem(getrock1.uid,1303) doRemoveItem(getrock2.uid,1302) doRemoveItem(getrock3.uid,1300) doRemoveItem(getrock4.uid,1301) doSendMagicEffect(r1_pos, 2) doSendMagicEffect(r2_pos, 2) doSendMagicEffect(r3_pos, 2) doSendMagicEffect(r4_pos, 2) local lever = doCreateItem(1945, 1, lever_pos) doItemSetAttribute(lever, "uid", 60114) addEvent(function() if isCreature(getTopCreature(playerTile3).uid) then doTeleportThing(getTopCreature(playerTile3).uid, {x = 2732, y = 2672, z = 7}) doSendMagicEffect(new, 10) end local lever = getThingfromPos(lever_pos) if lever then doRemoveItem(lever.uid, 1945) end end, time * 980) addEvent(function() if isCreature(getTopCreature(playerTile1).uid) then doTeleportThing(getTopCreature(playerTile1).uid, {x = 2732, y = 2673, z = 7}) end local r1 = doCreateItem(1303, 1, r1_pos) doItemSetAttribute(r1, "aid", 60109) end, tempo * 1000) addEvent(function() if isCreature(getTopCreature(playerTile2).uid) then doTeleportThing(getTopCreature(playerTile2).uid, {x = 2732, y = 2673, z = 7}) end local r2 = doCreateItem(1302, 1, r2_pos) doItemSetAttribute(r2, "aid", 60109) end, tempo * 1000) addEvent(function() if isCreature(getTopCreature(playerTile3).uid) then doTeleportThing(getTopCreature(playerTile3).uid, {x = 2732, y = 2672, z = 7}) end local r3 = doCreateItem(1300, 1, r3_pos) doItemSetAttribute(r3, "aid", 60109) end, tempo * 1000) addEvent(function() if isCreature(getTopCreature(playerTile4).uid) then doTeleportThing(getTopCreature(playerTile4).uid, {x = 2732, y = 2672, z = 7}) end local r4 = doCreateItem(1301, 1, r4_pos) doItemSetAttribute(r4, "aid", 60109) end, tempo * 1000) end return true end Você tem o código disponível? Se tiver publique-o aqui: Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.

Informação Importante

Confirmação de Termo