Ir para conteúdo

Mecianosz

Membro
  • Registro em

  • Última visita

Tudo que Mecianosz postou

  1. A solução não era tão simples, por isso ninguém conseguiu. Com a ajuda de meu amigo Nord, refizemos grande parte do doors.lua. A quem possa interessar:
  2. continua não fechando as portas '-'.. voltei para o original e as portas voltaram a fechar, mas ainda não quebra a mw local field = getTileItemByType(toPosition, ITEM_TYPE_MAGICFIELD) if(field.uid ~= 0) then doRemoveItem(field.uid) end return door.closingDoor end
  3. Qual servidor ou website você utiliza como base? TFS 0.5 exclusive edition (ot 8.60) Olá, gente. Como estão? Eu estou fazendo um evento onde um grupo de pessoas entram quando o primeiro aperta a alavanca (tipo annihilator). O evento dura 5 minutos. Porém, eu quero acrescentar uma coisa: se uma das pessoas morrer dentro destes 5 minutos, ela retorna para um local específico que fica dentro do mapa do evento. Como eu faço para cancelar a morte ou retornar o player para a área do evento? Alguém pode me ajudar com esta parte? Já tentei fazer isto para cancelar a morte, mas nao funciona: doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), FALSE) doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMana(cid)) doRemoveConditions(cid, FALSE) REP desde já! valeu!
  4. Não corrigiu o caso da magic wall e agora a porta não fecha , rs.. Mas obrigado pela tentativa!
  5. local config = { maxLevel = getConfigInfo('maximumDoorLevel') } function onUse(cid, item, fromPosition, itemEx, toPosition) if(fromPosition.x ~= CONTAINER_POSITION and isPlayerPzLocked(cid) and getTileInfo(fromPosition).protection) then doPlayerSendDefaultCancel(cid, RETURNVALUE_NOTPOSSIBLE) return true end local locked = DOORS[item.itemid] if(locked) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is locked.") return true end local door = getItemInfo(item.itemid) if(door.levelDoor > 0) then if(item.aid == 189) then if(not isPremium(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end doTeleportThing(cid, toPosition) return false end local gender = item.aid - 186 if(isInArray({PLAYERSEX_FEMALE, PLAYERSEX_MALE}, gender)) then if(gender ~= getPlayerSex(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end doTeleportThing(cid, toPosition) return false end local skull = item.aid - 180 if(skull >= SKULL_NONE and skull <= SKULL_BLACK) then if(skull ~= getCreatureSkullType(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end doTeleportThing(cid, toPosition) return false end local group = item.aid - 150 if(group >= 0 and group < 30) then if(group > getPlayerGroupId(cid)) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end doTeleportThing(cid, toPosition) return false end local vocation = item.aid - 100 if(vocation >= 0 and vocation < 50) then local vocationEx = getVocationInfo(getPlayerVocation(cid)) if(vocationEx.id ~= vocation and vocationEx.fromVocation ~= vocation) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end doTeleportThing(cid, toPosition) return false end if(item.aid == 190 or (item.aid >= 1000 and (item.aid - door.levelDoor) <= config.maxLevel and getPlayerLevel(cid) >= (item.aid - door.levelDoor))) then doTeleportThing(cid, toPosition) return false end doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Only the worthy may pass.") return true end if(door.specialDoor) then if(item.aid == 100 or (item.aid ~= 0 and getCreatureStorage(cid, item.aid) ~= EMPTY_STORAGE)) then doTeleportThing(cid, toPosition) return false end doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "The door seems to be sealed against unwanted intruders.") return true end if(getTileInfo(toPosition).creatures > 0) then -- check only if there are any creatures local position = {x = toPosition.x, y = toPosition.y, z = toPosition.z, stackpos = STACKPOS_TOP_CREATURE} position.x = position.x + 1 local query = doTileQueryAdd(cid, position, 20) if(query == RETURNVALUE_NOTPOSSIBLE) then position.x = position.x - 1 position.y = position.y + 1 query = doTileQueryAdd(cid, position, 20) end if(query ~= RETURNVALUE_NOERROR) then doPlayerSendDefaultCancel(cid, query) return true end toPosition.stackpos = STACKPOS_TOP_CREATURE while(true) do local thing = getThingFromPosition(toPosition) if(thing.uid == 0) then break end doTeleportThing(thing.uid, position) end end local field = getTileItemByType(toPosition, ITEM_TYPE_MAGICFIELD) if(field.uid ~= 0) then doRemoveItem(field.uid) end return door.closingDoor end @WooX
  6. @WooX a tag da door já estava em actions.xml (doors.lua) mas não estava no movements.xml (closingdoor.lua ). Porém, quando eu coloquei a tag da door no movements.xml , não corrigiu o problema da magic wall e ainda começou a dar outro bug: só de passar pela porta, ela se fecha sozinha. Deve ser outra coisa! Já tentei trocar os scripts.lua algumas vezes, mas nenhum está dando certo ...
  7. @WooX estou usando o datapack do classic yurots.. Edit: Tive de refazer uma parte do doors.lua, fica aí para quem precisar:
  8. Olá! Gente, eu queria mudar o tempo de duração do haste (utani hur e utani gran hur). Só consegui alterar a velocidade, mas não consegui mudar o tempo do efeito. Quero fazer durar mais tempo. Alguém me ajuda? Valeu! REP desde já! kkk meu server: 8.60 (TFS 0.5 exclusive edition) strong haste.lua haste.lua
  9. Olá a todos! Estou com um bug nas doors do meu servidor: não consigo fechar uma porta quando tem MW na frente. O normal é você fechar a porta e quebrar a MW, ocupando o sqm onde ela estava. Mas no meu servidor eu não consigo quebrar a magic wall! Se não for na source, deve ser em actions/doors.lua ou em movements/closingdoor.lua, mas eu troquei esses scripts várias vezes e não corrigi o problema. Alguém pode me ajudar? Valeu! Qual servidor ou website você utiliza como base? tfs 0.5 exclusive edition
  10. Percebi uma coisa. O script que o @WooX passou deu certo para algumas portas, mas outras continuaram bugando. Este do @rodrygosos funcionou, porém, eu queria que a porta quebrasse a magic wall. Quando tem uma magic wall na frente da porta, não está dando para dar use e entrar no sqm ("Sorry, not possible."). Tentei vários closingdoor.lua diferentes e o problema persistiu. Será que é alguma parte da source? EDIT: também já tentei trocar o doors.lua e não funcionou.
  11. @Ackerzin Então, não é interval. Eles andam devagar. Eu queria que eles tivessem speed maior ..
  12. Olá, pessoal. Queria alterar o walking speed dos npcs, parecem estar andando bem devagar no meu server. É uma coisa boba, mas não consegui mexer nisso e não encontrei na internet. Se alguém souber ajudar, agradeço desde já. Valeuu
  13. @victor4312 eu não comprei, estava acostumado a usar no-ip no windows de graça e agora migrei para Linux , mas não consigo fazer o ip fixo.... meu OT não tem site, apenas account manager. EDIT: resolvi usando o noip.com mesmo.. É só colocar o IP externo da máquina VPS no site do noip que funciona normalmente.
  14. up! desculpa reviver o tópico, mas estou com o mesmo problema
  15. Acho que não fui claro. É o seguinte. Você está me passando a configuração para o delay do push (quando vc pusha um personagem, ele demora um tempo para responder). O meu problema é diferente, não é o delay do push. Eu preciso reduzir o intervalo entre um push e outro, por exemplo: Acabei de pushar um player e quero dar o segundo push. No meu servidor, existe um tempo que vc precisa esperar entre um push e outro. Portanto, não é o tempo que ele demora para responder um push, mas o intervalo entre um push e outro. Eu quero poder empurrar um player logo que ele chega no SQM seguinte, para poder dar uma sequência rápida de vários pushes. Entendeu? Fiz um vídeo para ficar mais claro. Dá para perceber que o segundo push não vai, porque precisa esperar um intervalo de tempo. Novamente, a mensagem de erro que aparece em branco é "You cannot move this object." @Celulose
  16. @Celulose valeu, mas não é isso cara kkk.. '-' eu quero fazer uma configuração na source para poder dar vários chutes em seguida, bem rápido, tendeu. Porque no meu servidor não dá para fazer isso ,vc recebe a mensagem "You cannot move this object".. tenho quase certeza que é em game.cpp game.cpp Achei que fosse nessas linhas, mas não consegui mudar: if(player->isProtected()) { Player* movingPlayer = movingCreature->getPlayer(); if(movingPlayer && !movingPlayer->isProtected()) { player->sendCancelMessage(RET_NOTMOVABLE); return false; } } A mensagem de erro que aparece está em player.cpp: case RET_NOTMOVABLE: sendCancel("You cannot move this object."); break;
  17. @Celulose eu já tenho push cruzado. Eu quero diminuir o delay entre um push e o outro. Para dar uma sequência de vários push sem ficar travando.
  18. @Ackerzin deu certo .. REP ++++++++
  19. @Ackerzinnem tanto, rsrsrsrsr.. Agora não pega nenhuma skull Eu to usando o seguinte script em mods para o Skull System:
  20. @Ackerzin deu certo com "hardcore" !
  21. Olá, Tk! Quero fazer uma configuração na source do meu OT 8.6. Eu uso TFS 0.5 exclusive edition. É o seguinte, eu não consigo dar uma sequência de push muito rápida em um player. Se eu der dois push bem rápido, o segundo é cancelado e eu recebo a mensagem: "You cannot move this object." , ou seja, existe um intervalo definido entre dois pushes.. Eu vi em player.cpp que esta mensagem é enviada no caso de RET_NOTMOVABLE . Tentei alterar algumas linhas em game.cpp na seguinte função (linha 1116), mas não tive sucesso: Fiz um pequeno video mostrando o erro abaixo. Se alguém tentar me ajudar, REPPPPPPP. Valeu! O ideal seria o player comum ficar igual ao GM, como neste segundo video:

Informação Importante

Confirmação de Termo