Ir para conteúdo

jefersonzc

Campones
  • Total de itens

    30
  • Registro em

  • Última visita

Sobre jefersonzc

Informações

  • Char no Tibia
    Galileu Galilei
  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Mapper

jefersonzc's Achievements

  1. Depois de muito bater cabeça eu consegui achar uma solução quase perfeita para o problema. Então vou compartilhar aqui, vai que ajuda outros... Bom, primeiramente em items.xml precisamos configurar as skills do item, o tempo, etc. Como a ideia é que o item desapareça depois de algum tempo, vou por um decayTo 0. <item id="25971" article="a" name="Chopper of Corruptedheart"> <attribute key="weight" value="5000" /> <attribute key="defense" value="35" /> <attribute key="attack" value="56" /> <attribute key="skillAxe" value="3" /> <attribute key="weaponType" value="axe" /> <attribute key="decayTo" value="0" /> <!--faz o item sumir depois que seu tempo expira--> <attribute key="duration" value="360000" /> <attribute key="showduration" value="1" /> <attribute key="slotType" value="two-handed" /> </item> Reparem que não configurei o transformEquipTo e o transformDeEquipTo, pois meu item não tem duas sprites (como no caso dos rings e da soft) Agora em movements.xml eu preciso configurar quem pode ou não usar o item. <movevent event="Equip" itemid="25971" slot="hand" level="0" function="onEquipItem"> <vocation name="Knight" /> <vocation name="Elite Knight" showInDescription="0" /> </movevent> <movevent event="DeEquip" itemid="25971" slot="hand" function="onDeEquipItem" />< Por se tratar de uma arma, vou precisar configurar tbm o weapons.xml (se fosse um helmet, um ring ou algo do gênero, eu poderia pular essa etapa). <melee id="25971" unproperly="1"> <vocation name="Knight" /> <vocation name="Elite Knight" showInDescription="0" /> </melee> Blz, até aqui nada de novo, tudo isso a gente já precisa fazer quando vai criar qualquer item novo, certo? Mas é agora que vem o pulo do gato (o gato que no caso sou eu ?, rsrs). Em data/events/scripts/events.xml vamos habilitar o onMoveItem. <event class="Player" method="onMoveItem" enabled="1" /> E em data/events/scripts/player.lua, vamos configurar a função onMoveItens. function Player:onMoveItem(item, count, fromPosition, toPosition, fromCylinder, toCylinder) local itensVIP = {25187,25175,25185,25429,25946,25915,25971} --todos os itens que eu preciso configurar for i = 1, #itensVIP do if item.itemid == itensVIP[i] then item:decay() --toda vez que um item for movido, ele checa se faz parte dos itensVIP e starta o decay. end end return true end Resumidamente o resultado vai ser: 1. O tempo do item não para de decair, independente dele estar no slot, na bp, na casa, no dp, etc. Ok 2. Com o char deslogado, o tempo para de contar. Ok 3. Se o player deixar o item no DP e relogar o char, o tempo do item fica pausa, mas volta cair quando ele der move no item. Ok 4. O meu site possui um sistema de compra de itens que adiciona tal item no char. Quando o player compra o item que configuramos, o tempo dele vem pausado e se tal item cair dentro do seu respectivo slot (exemplo: o char compra uma sword e ele nao tem nenhuma sword na mão, logo, o a sword vai cair direto no slot dela), o tempo permanecerá pausado até que o char mova essa sword para a bp ou relogue. Bom, não era exatamente isso que eu queria, mas acho que posso considerar esse um bug pequeno e que não trará nenhum efeito colateral negativo, posto que cedo ou tarde esse char terá que relogar, no máximo ele irá conseguir umas horas há mais com o item, então, acho que ok.
  2. Se essa for a seção errada, desculpa. Bom, criei uns itens vips que dão atributo para os players, mas esses itens possuem tempo, e somem quando o tempo acaba. (decayTo O). Até aí blz... não usei as funções onEquipe e onDeEquipe por duas razões: 1. Não tenho IDs com sprites repetidos para esses itens e não quero mexer no meu OTB pq já deu ruim outras vezes. 2. A intenção era que o tempo continuasse contando mesmo com o item dentro da mochila, ou seja, não adianta desequipar o item que O Tempo Não Para (já dizia Cazuza, rsrs). Até aí tudo bem. Mas acabei descobrindo um bug... se o player guardar o item no depot e depois deslogar, quando ele relogar e pegar o item do depot outra vez, o tempo buga e fica parado. E só volta a ser contato caso ele relogue com o item no char outra vez. Ou seja, se o cara for malando, ele fica com o item pra sempre, pq basta ficar guardando ele no dp sempre que for deslogar. Preciso resolver isso de alguma forma, aceito sugestões. Alguém poderia me ajudar? PS.: Uso TFS 1.3
  3. jefersonzc

    npc

    Mano, tá mt mal explicado. O NPC "vai" pra quest, ou envia o player para uma quest? Se ele de fato for pra algum lugar, outros player ficarão temporariamente sem acesso à ele (já que ele não estará em seu lugar original). Isso mesmo que vc quer? E quem é que mata os monstros? Eu entendi que é o próprio NPC, aliás, parece que vc quer que o NPC faço tudo sozinho. Isso mesmo? E o que seria "teleportado pro cp"? O que é cp? Tenta ser um pouco mais claro. Ps.: Acho que cp seria dp, certo?
  4. Não desista ainda, tente mais uma coisa: 1 - Clique o botão direito do mouse e vá em propriedades; 2 - Selecione a aba compatibilidade; 3 - Marque a caixa "executar este programa em modo de compatibilidade" e escolha Windows XP Service Pack 2. Tenta aí, dedos cruzados aqui
  5. Seu windows é o 7? Tenta executar como administrador. Não é mostrado nenhuma tela de erro? Ele apenas trava e para de responder? Se for isso, tenta abrir um outro mapa qualquer, de preferência um pequeno, apenas para testar. Se o mapa for mt grande e o pc não for bom o suficiente, pode ser que a memória ou o processador não aguente o tranco e trave. Eu tenho 8 de ram e levo cerca de uma hora para abrir o mapa global 9.83.
  6. cara, isso acontece as vezes. Na hora do erro não diz qual versão que ele seria não? Tenta esse remeres aki da cmm, ele é atualizado para 9.83. http://www.xtibia.com/forum/topic/173891-983-remeres-map-editor/
  7. Saquei... então melhor evitar possíveis erros né mesmo!? Bom, dúvida sanada, obrigado ai galera.
  8. Então, foi como eu disse, não gerou erro no console, e não veio o mesmo item, testei uma vez com cada baú. Sei que é estranho que tenha funcionado, mas pode ter sido uma feliz coincidência. Por via das dúvidas, vou fazer do modo chato mesmo Vlw
  9. Seguinte galera, como todos sabemos, quando desejamos fazer uma quest onde o player tem que escolher qual recompensa ele quer (tipo a poi), é preciso criar um LUA para que independente de qual baú o player escolha, seja adicionado à ele o ID da quest e ele não possa mais pegar os outros baús. Acontece que no meu OT eu testei o seguinte: - Criei dois baús e coloquei dentro dele os itens que cada um iria dar - Coloquei o action 2000, como manda o figurino. - Na hora de colocar o unique ID, coloquei o mesmo em ambos os baús E não é que isso deu certo!! Não gerou erro nem nada! Minha dúvida é: isso tá certo ou foi apenas alguma feliz coincidência? Posso adotar esse método para quests desse tipo ou devo fazer pelo modo antigo (o chato)?
  10. Fawz, não acredito que passei tão perto, tava tentando getPlayerBless ao invés de getPlayerBlessing. Uahauhauhaha!!! Vlw brother, ta show agora rep+
  11. Galera, to com um npc que vende bless, promotion e premium scroll. Tá tudo funcionando bem, exceto por um único detalhe, ele vende a bless mesmo que o player já tenha. Queria que ele só vendesse quando o player estivesse sem bless. Segue o LUA dele Acredito que a solução seja trivial, bastando usar um "getPlayerBless", mas qual seria o comando certo? Digo, esse "getPlayerBless" não existe, então como posso verificar se o player já tem as bless?
  12. Cara.... muito obrigado por toda a ajuda, de verdade, mas vou desistir disso. Fiz o que você sugeriu, mas ai virou bagunça. Auahuahuahuahauh! Todos os npcs passaram a intender que a scarab coin valia 10k. E eu queria que apenas um npc aceitasse ela como grana. Acho que o que quero não ficará perfeito nunca. Vou pensar se faço como o omega blueheaven sugeriu e colocar uma pop up ou algo assim. De todo o modo, muito obrigado pela atenção. Rep++
  13. Tava tentando isso, mas devia estar digitando algo errado, sei lá vlw
  14. Cara, o que você procura é um sistema de "second promotion", creio que já existam alguns tópicos a respeito. Mas tudo bem. Tenta o seguinte: ANTES DE QUALQUER MUDANÇA, FAÇA UM BACKUP COMPLETO. 1º No seu arquivo vocations.xml, adicione isso: 2º procure por algo tipo 031-vocations.lua (no meu tá assim, no seu pode estar um pouco diferente), edite-o e deixe assim: 3º nas pasta onde ficam os scripts dos npcs, crie um arquivo chamado promotion.lua (ou edite-o caso já exista): 4º agora o seu npc, nesse caso, ele tem a mesma aparecia do oraculo de rook (mude se quiser): Acho que é isso... não sei se vai funcionar, mas tenta ai Quanto ao spell, acho que não deve ser difícil mas como nunca criei um, não vou poder ajudar mt ^^ Dá uma pesquisada na comu, deve ter tutorial explicando como criar novos spells PS.: COMO QUE FAÇO PARA ADICIONAR AQUELE BOTÃO DE SPOILER???? NÃO CONSEGUI.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...