Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Fala trutas! Firmeza total!

 

Bem, eu ia postar outro sistema, mas a maldita da cachaça não deixou.

Então vou deixar esse script de key doors que acho bem interessante.  Não sei se já fizerem algum semelhante, mas vou deixar o que eu fiz.

 

Como funciona? 

 

É o velho sistema de doors, ou seja, ainda voga os sistemas de leveldoors, specialdoors etc; eu apenas modifiquei o sistema de key doors.

 

Quando alguém usa a chave certa na porta certa, ela fica destrancada, então você pode usá -la livremente até usar de novo a chave na porta para tranca-la.

 

Vejam as imagens:

 

keydoors_closed.thumb.jpg.d800a2590ee33c

 

keydoors_destrancada.thumb.jpg.a27572585

 

keydoors_portafechada.thumb.jpg.07373915

 

keydoors_portaaberta.thumb.jpg.c0e782d67

 

keydoors_portatrancada.thumb.jpg.aacacd8

 

Então agora vamos por pra funcionar:

 

Em actions/actions.xml

Substitua essas tags que fazem referência para doors.lua por essas:

 

Citar

 

   <action fromid="1209" toid="1214" event="script" value="other/doors.lua"/> 
   <action fromid="1219" toid="1262" event="script" value="other/doors.lua"/> 
   <action fromid="1539" toid="1542" event="script" value="other/doors.lua"/> 
   <action fromid="2086" toid="2092" event="script" value="other/doors.lua"/> 
   <action fromid="3535" toid="3552" event="script" value="other/doors.lua"/> 
   <action fromid="4913" toid="4918" event="script" value="other/doors.lua"/> 
   <action fromid="5082" toid="5085" event="script" value="other/doors.lua"/> 
   <action fromid="5098" toid="5145" event="script" value="other/doors.lua"/> 
   <action fromid="5278" toid="5295" event="script" value="other/doors.lua"/> 
   <action fromid="5515" toid="5518" event="script" value="other/doors.lua"/> 
   <action fromid="5733" toid="5737" event="script" value="other/doors.lua"/> 
   <action fromid="5745" toid="5749" event="script" value="other/doors.lua"/> 
   <action fromid="6192" toid="6209" event="script" value="other/doors.lua"/> 
   <action fromid="6249" toid="6266" event="script" value="other/doors.lua"/> 
   <action fromid="6795" toid="6802" event="script" value="other/doors.lua"/> 
   <action fromid="6891" toid="6908" event="script" value="other/doors.lua"/> 
   <action fromid="7033" toid="7050" event="script" value="other/doors.lua"/> 
   <action fromid="7054" toid="7057" event="script" value="other/doors.lua"/> 
   <action fromid="8541" toid="8558" event="script" value="other/doors.lua"/> 
   <action fromid="9165" toid="9184" event="script" value="other/doors.lua"/> 
   <action fromid="9267" toid="9286" event="script" value="other/doors.lua"/> 
   <action itemid="10032" event="script" value="other/doors.lua"/> 
   <action itemid="10091" event="script" value="other/doors.lua"/> 
   <action fromid="10268" toid="10285" event="script" value="other/doors.lua"/> 
   <action fromid="10468" toid="10486" event="script" value="other/doors.lua"/> 
   <action fromid="10774" toid="10776" event="script" value="other/doors.lua"/> 
   <action fromid="10779" toid="10785" event="script" value="other/doors.lua"/> 
   <action fromid="10788" toid="10791" event="script" value="other/doors.lua"/> 
 

 

Agora em actions/scripts/other/doors.lua

Abra ele, apague tudo dentro dele e adicikne esse código:

Citar

--[[> Marcryzius <]]--


CHAVE_DOORS = {} 
local function getKeyUsed(key,posx,posy) 
   for k,v in pairs(CHAVE_DOORS) do 
      if(v.aid == key and v.x == posx and v.y == posy)then 
         return k 
      end 
   end 
   return false 
end 

function onUse(cid, item, fromPosition, itemEx, toPosition) 
local MSG = MESSAGE_INFO_DESCR 
   if not(checkStackpos(fromPosition,toPosition))then return true,doPlayerSendTextMessage(cid,MSG,'You can not close the door because someone is using it.')end 
   if(item.actionid == 0 and not(isInArray(keys, item.itemid)))then 
      if(doors[item.itemid])then 
         doTransformItem(item.uid,doors[item.itemid]) 
      elseif(isInArray(horizontalOpenDoors,item.itemid) or isInArray(verticalOpenDoors, item.itemid))then 
         doTransformItem(item.uid, item.itemid -1) 
      elseif(isInArray(closingDoors, item.itemid) ~= true)then 
         doTransformItem(item.uid, item.itemid +1) 
      end 
   elseif(getItemLevelDoor(item.itemid) > 0)then 
      if(getPlayerLevel(cid) >= item.actionid-getItemLevelDoor(item.itemid))then 
         doTransformItem(item.uid, item.itemid +1) 
         doTeleportThing(cid, toPosition, true) 
      else 
         doPlayerSendTextMessage(cid, MSG, "You are not experienced enough to pass.") 
      end 
   elseif(isInArray(specialDoors, item.itemid))then 
      if(item.uid > 0 and item.uid < 1100)then 
      local id = item.uid > 0 and item.uid-1000 or 0 
         if(getPlayerStorageValue(cid, item.actionid) == id)then 
            doTransformItem(item.uid, item.itemid +1) 
            doTeleportThing(cid, toPosition, true) 
         else 
            doPlayerSendTextMessage(cid, MSG, "The door seems to be sealed against unwanted intruders.") 
         end 
      else 
         if(getPlayerStorageValue(cid, item.actionid) > 0)then 
            doTransformItem(item.uid, item.itemid +1) 
            doTeleportThing(cid, toPosition, true) 
         else 
            doPlayerSendTextMessage(cid, MSG, "The door seems to be sealed against unwanted intruders.") 
         end 
      end 
   elseif(isInArray(keys, item.itemid))then 
      if(isCreature(itemEx.uid))then 
         doPlayerSendTextMessage(cid,25,'Using this key in some doors.') 
      elseif(item.itemid == 10091 or item.itemid == 2090)then 
         doPlayerSendTextMessage(cid,25,'Key: '..(itemEx.actionid == 9999 and 'Not Find..' or itemEx.actionid == 0 and 'Door Unlock' or itemEx.actionid)..'.') 
      elseif(itemEx.actionid == item.actionid and doors[itemEx.itemid])then 
         if not(getKeyUsed(itemEx.actionid,toPosition.x,toPosition.y))then 
            table.insert(CHAVE_DOORS,{aid=itemEx.actionid,x=toPosition.x,y=toPosition.y}) 
         else 
            table.remove(CHAVE_DOORS,getKeyUsed(itemEx.actionid,toPosition.x,toPosition.y)) 
         end 
         doSendMsgText(toPosition,"Click",1) 
      elseif(isInArray(horizontalOpenDoors,itemEx.itemid) or isInArray(verticalOpenDoors,itemEx.itemid) and item.actionid == itemEx.actionid)then 
         doTransformItem(itemEx.uid,itemEx.itemid-1) 
         for k,v in pairs(CHAVE_DOORS) do 
            if(v.aid == itemEx.actionid and 
            v.x == toPosition.x and v.y == toPosition.y)then 
               table.remove(CHAVE_DOORS,k) 
            end 
         end 
         doSendMsgText(toPosition,"Cleck",2) 
      elseif(doors[itemEx.itemid])then 
         doPlayerSendCancel(cid,'Wrong key for this door.') 
         doSendMsgText(toPosition,"Cleck",4) 
      else 
         doPlayerSendCancel(cid,'Use this key in doors.') 
      end 
   elseif(getKeyUsed(itemEx.actionid,toPosition.x,toPosition.y) and doors[item.itemid])then 
      doTransformItem(item.uid, doors[item.itemid]) 
   elseif(isInArray(horizontalOpenDoors, item.itemid) or isInArray(verticalOpenDoors, item.itemid) and getKeyUsed(itemEx.actionid,toPosition.x,toPosition.y))then 
      doTransformItem(item.uid,item.itemid-1) 
   else 
      doPlayerSendTextMessage(cid,25,'It is locked.') 
   end 
   return true 
end 
 

 

Agora em: data/lib/constante.lua

Procure pelas tabelas de keys, doors etc; substitua todas por essas:

Citar

doors = {[1209] = 1211, [1210] = 1211, [1212] = 1214, [1213] = 1214, [1219] = 1220, [1221] = 1222, [1231] = 1233, [1232] = 1233, [1234] = 1236, [1235] = 1236, [1237] = 1238, [1239] = 1240, [1249] = 1251, [1250] = 1251, [1252] = 1254, [1253] = 1254, [1539] = 1540, [1541] = 1542, [3535] = 3537, [3536] = 3537, [3538] = 3539, [3544] = 3546, [3545] = 3546, [3547] = 3548, [4913] = 4915, [4914] = 4915, [4916] = 4918, [4917] = 4918, [5082] = 5083, [5084] = 5085, [5098] = 5100, [5099] = 5100, [5101] = 5102, [5107] = 5109, [5108] = 5109, [5110] = 5111, [5116] = 5118, [5117] = 5118, [5119] = 5120, [5125] = 5127, [5126] = 5127, [5128] = 5129, [5134] = 5136, [5135] = 5136, [5137] = 5139, [5138] = 5139, [5140] = 5142, [5141] = 5142, [5143] = 5145, [5144] = 5145, [5278] = 5280, [5279] = 5280, [5281] = 5283, [5282] = 5283, [5284] = 5285, [5286] = 5287, [5515] = 5516, [5517] = 5518, [5732] = 5734, [5733] = 5734, [5735] = 5737, [5736] = 5737, [6192] = 6194, [6193] = 6194, [6195] = 6197, [6196] = 6197, [6198] = 6199, [6200] = 6201, [6249] = 6251, [6250] = 6251, [6252] = 6254, [6253] = 6254, [6255] = 6256, [6257] = 6258, [6795] = 6796, [6797] = 6798, [6799] = 6800, [6801] = 6802, [6891] = 6893, [6892] = 6893, [6894] = 6895, [6900] = 6902, [6901] = 6902, [6903] = 6904, [7033] = 7035, [7034] = 7035, [7036] = 7037, [7042] = 7044, [7043] = 7044, [7045] = 7046, [7054] = 7055, [7056] = 7057, [8541] = 8543, [8542] = 8543, [8544] = 8546, [8545] = 8546, [8547] = 8548, [8549] = 8550, [9165] = 9167, [9166] = 9167, [9168] = 9170, [9169] = 9170, [9171] = 9172, [9173] = 9174, [9267] = 9269, [9268] = 9269, [9270] = 9272, [9271] = 9272, [9273] = 9274, [9275] = 9276, [10276] = 10277, [10274] = 10275, [10268] = 10270, [10269] = 10270, [10271] = 10273, [10272] = 10273, [10471] = 10472, [10480] = 10481, [10477] = 10479, [10478] = 10479, [10468] = 10470, [10469] = 10470, [10774] = 10776, [10775] = 10776, [10779] = 10780, [10781] = 10782, [10783] = 10785, [10784] = 10785, [10788] = 10789, [10790] = 10791} 

closingDoors = {1224, 1226, 1228, 1230, 1242, 1244, 1246, 1248, 1256, 1258, 1260, 1262, 3541, 3543, 3550, 3552, 5104, 5106, 5113, 5115, 5122, 5124, 5131, 5133, 5289, 5291, 5293, 5295, 6203, 6205, 6207, 6209, 6260, 6262, 6264, 6266, 6897, 6899, 6906, 6908, 7039, 7041, 7048, 7050, 8552, 8554, 8556, 8558, 9176, 9178, 9180, 9182, 9278, 9280, 9282, 9284, 10279, 10281, 10283, 10285, 10474, 10476, 10483, 10485, 10780, 10782, 10789, 10791} 
verticalOpenDoors = {1211, 1220, 1224, 1228, 1233, 1238, 1242, 1246, 1251, 1256, 1260, 1540, 3546, 3548, 3550, 3552, 4915, 5083, 5109, 5111, 5113, 5115, 5127, 5129, 5131, 5133, 5142, 5145, 5283, 5285, 5289, 5293, 5516, 5737, 5749, 6194, 6199, 6203, 6207, 6251, 6256, 6260, 6264, 6798, 6802, 6902, 6904, 6906, 6908, 7044, 7046, 7048, 7050, 7055, 8543, 8548, 8552, 8556, 9167, 9172, 9269, 9274, 9278, 9282, 10270, 10275, 10279, 10283, 10479, 10481, 10483, 10485, 10789, 10791} 
horizontalOpenDoors = {1214, 1222, 1226, 1230, 1236, 1240, 1244, 1248, 1254, 1258, 1262, 1542, 3537, 3539, 3541, 3543, 4918, 5085, 5100, 5102, 5104, 5106, 5118, 5120, 5122, 5124, 5136, 5139, 5280, 5287, 5291, 5295, 5518, 5734, 5746, 6197, 6201, 6205, 6209, 6254, 6258, 6262, 6266, 6796, 6800, 6893, 6895, 6897, 6899, 7035, 7037, 7039, 7041, 7057, 8546, 8550, 8554, 8558, 9170, 9174, 9272, 9276, 9280, 9284, 10273, 10277, 10281, 10285, 10470, 10472, 10474, 10476, 10780, 10782} 
specialDoors = {1223, 1225, 1241, 1243, 1255, 1257, 3542, 3551, 5105, 5114, 5123, 5132, 5288, 5290, 5745, 5748, 6202, 6204, 6259, 6261, 6898, 6907, 7040, 7049, 8551, 8553, 9175, 9177, 9277, 9279, 10278, 10280, 10475, 10484, 10781, 10790} 
keys = {2086, 2087, 2088, 2089, 2090, 2091, 2092, 10032, 10091, 8978} 

 

Lembrando pessoal que esse script foi criado para um servidor 8.54 TFS, caso seu servidor seja outro, deveras ser feito as devidas alterações. 

 

É isso pessoal, espero que gostem, caso encontrem algum erro, ou esteja faltando algo, posta ae que eu dou assistência. 

 

Editado por dominus
Adicionar informação (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

51mutNo.png Parabéns, seu tópico de conteúdo foi aprovado!
 Muito obrigado pela sua contribuição, nós do Tibia King agradecemos.
 Seu conteúdo com certeza ajudará à muitos outros, você recebeu +1 REP.

 

 

Bom, o sistema de keys que eu saiba ja funciona automaticamente, se não me engano o id da key (número da chave) deve ser o actionid da porta (não me lembro ao certo)... Mas bem, está aprovado.

Bruno de Carvalho Câmara / Administrador TibiaKing

[email protected]


 

btn_donateCC_LG.gif

 

Em 26/12/2016 em 03:47, Spraypaint disse:

A força da alienação vem dessa fragilidade dos indivíduos, quando apenas conseguem identificar o que os separa e não o que os une.

-miltinho

 

wMwSJFE.png?1

 

Link para o post
Compartilhar em outros sites
  • 3 weeks later...

Desde que eu baixei o TFS 0.3.6 que eu queria esse sistema, mas não vi em outro lugar; então resolvi fazer as devidas modificações no script de doors.

Editado por dominus (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 1 year later...

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por William Ferreira
      ​Boa Dia, Boa Tarde, Boa Noite Galera Do TK Gostaria de saber porque minhas portas 7171 e 7172 não abrem minha internet não e compartilhada, espero que me ajudem vou deixar algumas imagens abaixo.
       
      IP



       
      Portas



       
      Firewall



       
    • Por victorat
      Pessoal, estou com um problema aqui, no meu mapa 8.60 os novos itens não tinham ID, criei para todos, mas porem tem as Portas, aquelas que  abrem  e fecham, elas não tem ID, eu até tentei pegar o modelo de outras portinhas, e substitui só o ID, mas elas não abrem e nem fecham, ou seja: não funcionam, alguém sabe o que devo fazer?
       
      versão 8.60, tfs 0.4
    • Por thalesoldschool
      Fala pessoal do TK!
      Então rapazeada... Tem alguns (muitos) anos q coloquei meu ultimo otserver on, era um narutibia 7.81, e naquela época eu colocava otserver online em questão de 5 a 10 minutos, era realmente mamão com açúcar... Hoje em dia, voltando a pesquisar aqui no fórum, fiquei com vontade de criar um mapa novo, então baixei uma base que gostei, e antes de começar a editar ela, decidi deixar online só pela nostalgia mesmo... Mas não consegui.
      Eu troquei o ip do lua.config pelo meu ipv4, liberei as portas 7171 e 7272 do firewall, mas não resolveu... Decidi contratar minha própria internet, abri as configurações do modem, e como segue em anexo, encaminhei as portas 7171 e 7272 para o meu IP, e só por garantia, desliguei o firewall... Porém ainda assim não funcionou, criei um ip fixo, no no-ip, substitui o ip do config lua pelo fixo, e mesmo assim nada... Enfim, colocar o ipv4 ou ip fixo (do no-ip) no config lua, abrir 7171 e 7272 TCP e UDP no firewall e no modem, eu to esquecendo algo? Eu realmente não achei q teria problemas para abrir um ot depois de tantos anos de prática... Enfim, preciso de ajuda xD, grato a todos que responderem, tendo resolvido o problema ou não! Abraço!

    • Por ZfooX
      Boa noite pessoal,
       
      estou com problemas a meses com a porcaria das portas nesse modem da vivo fibra (modelo na foto), não consigo abrir as portas do tibia, tenho login e pass mas não sei onde abrir as portas.
       
      Tenho outro problema, eu moro em uma suite fora da casa principal, onde vem o cabo de rede passa pelo telhado e chega até minha suite, onde eu tenho outro roteador, tem problema ? eu teria que abrir as portas nos 2 roteadores? 
       
      ME AJUDEM PLS!!!!!


×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo