Ir para conteúdo
  • Cadastre-se
  • 1

Como alterar o limite do Attack Speed?


gleyce123

Pergunta

Posts recomendados


  • 0

Sim. Você poderia editar para a view (htm) do player para mostrar o ataque speed real dividido por 2. Ou seja, o player teria 3200 de atack speed, mas só mostraria 1600. É apenas um exemplo.

onde editar isso ?

Pagina - > Lineage 2 - Perfil L2 - > Ricardo Dv Oliveira

Link para o comentário
Compartilhar em outros sites

  • 0

Teste dessa forma que deverá mudar só visualmente na janela de status.

 

diff --git a/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/CharInfo.java b/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/CharInfo.java
index 21bf14b..74bdb48 100644
--- a/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/CharInfo.java
+++ b/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/CharInfo.java
@@ -102,7 +102,7 @@ public class CharInfo extends L2GameServerPacket
 		_z = _activeChar.getZ();
 		_heading = _activeChar.getHeading();
 		_mAtkSpd = _activeChar.getMAtkSpd();
-		_pAtkSpd = _activeChar.getPAtkSpd();
+		_pAtkSpd = (_activeChar.getPAtkSpd() / 2);
 		_moveMultiplier = _activeChar.getMovementSpeedMultiplier();
 		_attackSpeedMultiplier = _activeChar.getAttackSpeedMultiplier();
 		_runSpd = (int) (_activeChar.getRunSpeed() / _moveMultiplier);
diff --git a/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/UserInfo.java b/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/UserInfo.java
index 9e10a03..e13963d 100644
--- a/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/UserInfo.java
+++ b/gameserver/head-src/com/l2jfrozen/gameserver/network/serverpackets/UserInfo.java
@@ -208,8 +208,10 @@ public class UserInfo extends L2GameServerPacket
 		writeH(0x00);
 		writeH(0x00);
 		
+		int fakeAtkSpd = _activeChar.getPAtkSpd() / 2;
+		
 		writeD(_activeChar.getPAtk(null));
-		writeD(_activeChar.getPAtkSpd());
+		writeD(fakeAtkSpd);
 		writeD(_activeChar.getPDef(null));
 		writeD(_activeChar.getEvasionRate(null));
 		writeD(_activeChar.getAccuracy());
@@ -217,7 +219,7 @@ public class UserInfo extends L2GameServerPacket
 		writeD(_activeChar.getMAtk(null, null));
 		
 		writeD(_activeChar.getMAtkSpd());
-		writeD(_activeChar.getPAtkSpd());
+		writeD(fakeAtkSpd);
 		
 		writeD(_activeChar.getMDef(null, null));
 		

 

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
Agora, Alexandre Assunção disse:

Visualmente na ação do personagem (Pelo que entendi) não na tabela de status

O que ? eu entendi nada que você quer dizer, se quer ajudar, testa e me fala o resultado, será melhor, ou se sabe do que ta falando, programe a solução e posta ai. abraço.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
2 minutos atrás, Tayran.JavaDev disse:

O que ? eu entendi nada que você quer dizer, se quer ajudar, testa e me fala o resultado, será melhor, ou se sabe do que ta falando, programe a solução e posta ai. abraço.

Deixe ele se pronunciar realmente o que quer, eu apenas comentei o que entendi, tipo ele quer deixa o máximo de speed 1600 de bônus e não ultrapassar isso mostrando um fake atack na tabela, ou seja mudar apenas visualmente a ação do player atacando mais rápido (Meu entendimento) 

 

Link para o comentário
Compartilhar em outros sites

  • 0
Agora, Alexandre Assunção disse:

Deixe ele se pronunciar realmente o que quer, eu apenas comentei o que entendi, tipo ele quer deixa o máximo de speed 1600 de bônus e não ultrapassar isso mostrando um fake atack na tabela, ou seja mudar apenas visualmente a ação do player atacando mais rápido (Meu entendimento) 

 

 

Sim e pelo seu entendimento em java onde te diz que a solução apresentada acima não funcionará ? a princípio eu não entendi o que ele queria mesmo não, mas na segunda postagem já trouxe a solução como ele quer, e ai você comenta como se estivesse errado sem nem testar.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

Primeiramente desculpe se você entendeu meu comentário dizendo que você estava errado, não foi o que eu disse !

Eu apenas comentei a respeito da duvida inicial dele e sobre a solução que não seria a mesma pelo que entendi, e se for muito bom que ela vai poder resolver o problema dele, mas não foi tão claro a respeito do que queria e deixando essa má interpretação !

Sobre a solução nem sei se seria em JAVA ou se é possível, poderia ser na própria animação do client, agora quando alguém conseguir me entender e interpreta o que eu entendi e nosso amigo digitou ali em cima e saber fazer uma solução em JAVA seria muito bom, mas acredito que não seria possível !

Link para o comentário
Compartilhar em outros sites

  • 0
7 minutos atrás, Alexandre Assunção disse:

Primeiramente desculpe se você entendeu meu comentário dizendo que você estava errado, não foi o que eu disse !

Eu apenas comentei a respeito da duvida inicial dele e sobre a solução que não seria a mesma pelo que entendi, e se for muito bom que ela vai poder resolver o problema dele, mas não foi tão claro a respeito do que queria e deixando essa má interpretação !

Sobre a solução nem sei se seria em JAVA ou se é possível, poderia ser na própria animação do client, agora quando alguém conseguir me entender e interpreta o que eu entendi e nosso amigo digitou ali em cima e saber fazer uma solução em JAVA seria muito bom, mas acredito que não seria possível !

 

Já vou te adiantando com meu conhecimento, sim é possível ! 

Agora vamos parar de conversa e aguardar os testes.

Editado por Tayran.JavaDev

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

Pelo o que entendi, assim como comentei anteriormente, a solução do Tayran está correta, porque muda apenas o que o player irá ver. Se o player equipou seu personagem, e tem velocidade de ataque full, 1600 como o criador do tópico mencionou, na realidade ele terá o dobro, no caso 3200. Solucionando o problema, passando a mostrar 1600, quando na verdade tem 3200.

Link para o comentário
Compartilhar em outros sites

  • 0
Agora, Alexandre Assunção disse:

Então você me entendeu agora )

Vendo segundo código seria possível mesmo, mas eu tinha comentado isso "deverá mudar só visualmente na janela de status"

 

Eu tento te entender e não consigo, mas enfim eu entendi o que ele queria e a solução provavelmente vai funcionar, aguardo respostas do proprietário do tópico.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

Tayran eu coloquei aqui fiz aqui e o atakspeed das armas não mudaram em nada e o limite do atakspeed ficou bugado..

o limite que coloquei foi 1500 porém quando eu ataco o atakspeed fica mudando fica 1500 e 700 cada vez que eu ataco fica abaixando e aumentando..

deixa eu tentar exclarecer melhor eu quero apenas ter o atakspeed alto mais com o meu limite baixo ou seja coloquei 1500 de limite de atakspeed mais quando o player atacar parecer que ele tem + de 2000 entendeu ?

Editado por gleyce123
Link para o comentário
Compartilhar em outros sites

  • 0
4 minutos atrás, gleyce123 disse:

Ninguem pode me ajudar ?? não deu certo oque o tayran fez :(

O que você está fazendo é contra as regras, um flood atrás do outro, eu estou bastante empenhado sem poder realizar testes para poder te ajudar, mas o caminho para fazer o que quer é o que te passei, só tem que fazer mais testes e encontrar a solução do por que está trocando de um para outro, no mais aguarde até que outra pessoa tenha disposição de tempo para te ajudar.

"Tente ser uma pessoa de valor , não de sucesso" - Albert Einstein

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
24 minutos atrás, Tayran.JavaDev disse:

O que você está fazendo é contra as regras, um flood atrás do outro, eu estou bastante empenhado sem poder realizar testes para poder te ajudar, mas o caminho para fazer o que quer é o que te passei, só tem que fazer mais testes e encontrar a solução do por que está trocando de um para outro, no mais aguarde até que outra pessoa tenha disposição de tempo para te ajudar.

Desculpa ai então.. só falei essas vezs ai pq pensei que vc não estava vendo.
e pq to meio na agonia pq meu sv ta pra abrir novamente desculpas ai e obg por tentar ajudar.

Editado por gleyce123
Link para o comentário
Compartilhar em outros sites

  • 0
Em 26/09/2017 at 00:44, gleyce123 disse:

Estou com uma ideia de deixar o atakspeed 1600

mais queria que ele batesse bem mais rapido que isso não teria como mudar no core a velocidade do atakspeed ??

n entendi bem, mas acho q vc quer aumentar a velocidade de animaçao do personagem, porem mantendo o atk speed original. seria isso?
bom, se der certo isso vai ficar meio bugado, talvez de pra editar pelo cliente, apre a weapon grp usando o file edit e aumenta o atk speed dos itens q vc quer q a animaçae seja masi rapida, se isso der certo entao ok. claro qo char vai ter q ta usando os itens q vc modificou, ne. se n der, abre o char grp, ainda com o o file edit, depois olhar pra ver se tem alguma coluna de velocidade de animaçao edita la, eu sei q tem uma anin run sped, tenta modificar pra ver se da certo.

Link para o comentário
Compartilhar em outros sites

  • 0
1 hora atrás, Dartz disse:

n entendi bem, mas acho q vc quer aumentar a velocidade de animaçao do personagem, porem mantendo o atk speed original. seria isso?
bom, se der certo isso vai ficar meio bugado, talvez de pra editar pelo cliente, apre a weapon grp usando o file edit e aumenta o atk speed dos itens q vc quer q a animaçae seja masi rapida, se isso der certo entao ok. claro qo char vai ter q ta usando os itens q vc modificou, ne. se n der, abre o char grp, ainda com o o file edit, depois olhar pra ver se tem alguma coluna de velocidade de animaçao edita la, eu sei q tem uma anin run sped, tenta modificar pra ver se da certo.

Amigo creio que isso so da pra editar no core só preciso saber onde...

Editado por gleyce123
Link para o comentário
Compartilhar em outros sites

  • 0
4 horas atrás, gleyce123 disse:

Amigo creio que isso so da pra editar no core só preciso saber onde...

Te deixando uma opinião, você já pensou na possibilidade de um certo "transtorno" com isso?

Como nosso amigo falou vai existir sim o certo "bug", você vai esta alterando apenas a ANIMAÇÃO do game mantendo os status que deseja "baixos", tudo funcionara de acordo com a base de status, ou seja, o jogador vai realizar a animação da skill ou qualquer outra ação rápida mas não vai ter o dano instantâneo e vai continua com o delay de um atack/skill para o outro, deixando fora de sincronização, e isso em vez de ajudar vai te trazer dor de cabeça.

 

Pensa naqueles jogos de futebol antigo onde os jogadores tem uma animação acelerada correndo no ar. 

Link para o comentário
Compartilhar em outros sites

  • 0

Fora que na l2jfrozen ja existe um "bug" de atk speed que mesmo voce tendo 1700 de ataque speed, ele vai bugar, como se estivesse batendo a 2k de atk speed, ja postaram ate um video aqui no forum sobre esse bug..

resumindo, de 3200 que foi citado, vai para uns 4k de atk sped. '-'

Editado por Onã

Lineage 2 Lords

Link para o comentário
Compartilhar em outros sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Visitante
Responder esta pergunta...

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

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Processando...
  • Registre-se

    Faça parte da maior e  mais antigas comunidades sobre Lineage2 da América Latina.





  • Patrocinadores

  • Quem Está Navegando

    • Nenhum usuário registrado visualizando esta página.
  • Posts

    • Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?    
    • muchas gracias muy lindos NPC 🙂
    • relaxa jovem gafanhoto, testa as quests. e posTa os erros indesejaveis.  
    • Se alguém pudesse me ensinar como codificar as missões, eu ficaria feliz em fazer isso sozinho ou pelo menos ajudar. Eu realmente quero jogar em um servidor onde todas as quests funcionem bem e melhor ainda se você puder fazer quests customizadas!
    • mas no interlude, nem todas as quests de class,  vai mostrar onde tem que ir, ate o reborn nao mostrava quando era interlude, só mostrou depois que eles colocaram client classic pra rodar, e ficou melhor ainda quando virou hellbound em diante, mas ha sim alguma chance de modificar isso direto no script para fazer igualmente, só basta te um pouco de paciencia e persistencia exato
    • 408_PathToElvenwizard dá Orion eu tive que mexer tbm, até modifiquei e consegui deixar ela igual do Classic, com a seta e a marcação no mapa. (não retail IL) Dá pra importar py de várias revs, o foda é que não da regular as quest py através do debug em tempo real, pelo menos eu não consegui rsrs
    • Hasta el momento todas las QUESTS son completables si te guias con un tutorial de youtube. El problema es que tienen bugs de locacion y de subquests que no avanzan o no te marcan correctamente a donde ir en el mapa, cosa que en Retail si se ve como corresponde.
    • estranho, mas pelo menos a galera nunca reclamo das quests quando tinha aberto 5x, geral fez class primeira e segunda job, poucos que compraram a class
    • en RUSaCis-3.5 data pack, las Quests estan en formato .java y son diferentes a como estan redactadas en jOrion y jFrozen 1.5 (ProyectX) package net.sf.l2j.gameserver.scripting.quest; import net.sf.l2j.commons.random.Rnd; import net.sf.l2j.gameserver.enums.Paperdoll; import net.sf.l2j.gameserver.enums.QuestStatus; import net.sf.l2j.gameserver.enums.actors.ClassId; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Npc; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.network.serverpackets.SocialAction; import net.sf.l2j.gameserver.scripting.QuestState; public class Q224_TestOfSagittarius extends SecondClassQuest { private static final String QUEST_NAME = "Q224_TestOfSagittarius"; // Items private static final int BERNARD_INTRODUCTION = 3294; private static final int HAMIL_LETTER_1 = 3295; private static final int HAMIL_LETTER_2 = 3296; private static final int HAMIL_LETTER_3 = 3297; private static final int HUNTER_RUNE_1 = 3298; private static final int HUNTER_RUNE_2 = 3299; private static final int TALISMAN_OF_KADESH = 3300; private static final int TALISMAN_OF_SNAKE = 3301; private static final int MITHRIL_CLIP = 3302; private static final int STAKATO_CHITIN = 3303; private static final int REINFORCED_BOWSTRING = 3304; private static final int MANASHEN_HORN = 3305; private static final int BLOOD_OF_LIZARDMAN = 3306; private static final int CRESCENT_MOON_BOW = 3028; private static final int WOODEN_ARROW = 17; // Rewards private static final int MARK_OF_SAGITTARIUS = 3293; // NPCs private static final int BERNARD = 30702; private static final int HAMIL = 30626; private static final int SIR_ARON_TANFORD = 30653; private static final int VOKIAN = 30514; private static final int GAUEN = 30717; // Monsters private static final int ANT = 20079; private static final int ANT_CAPTAIN = 20080; private static final int ANT_OVERSEER = 20081; private static final int ANT_RECRUIT = 20082; private static final int ANT_PATROL = 20084; private static final int ANT_GUARD = 20086; private static final int NOBLE_ANT = 20089; private static final int NOBLE_ANT_LEADER = 20090; private static final int BREKA_ORC_SHAMAN = 20269; private static final int BREKA_ORC_OVERLORD = 20270; private static final int MARSH_STAKATO_WORKER = 20230; private static final int MARSH_STAKATO_SOLDIER = 20232; private static final int MARSH_STAKATO_DRONE = 20234; private static final int MARSH_SPIDER = 20233; private static final int ROAD_SCAVENGER = 20551; private static final int MANASHEN_GARGOYLE = 20563; private static final int LETO_LIZARDMAN = 20577; private static final int LETO_LIZARDMAN_ARCHER = 20578; private static final int LETO_LIZARDMAN_SOLDIER = 20579; private static final int LETO_LIZARDMAN_WARRIOR = 20580; private static final int LETO_LIZARDMAN_SHAMAN = 20581; private static final int LETO_LIZARDMAN_OVERLORD = 20582; private static final int SERPENT_DEMON_KADESH = 27090; public Q224_TestOfSagittarius() { super(224, "Test Of Sagittarius"); setItemsIds(BERNARD_INTRODUCTION, HAMIL_LETTER_1, HAMIL_LETTER_2, HAMIL_LETTER_3, HUNTER_RUNE_1, HUNTER_RUNE_2, TALISMAN_OF_KADESH, TALISMAN_OF_SNAKE, MITHRIL_CLIP, STAKATO_CHITIN, REINFORCED_BOWSTRING, MANASHEN_HORN, BLOOD_OF_LIZARDMAN, CRESCENT_MOON_BOW); addQuestStart(BERNARD); addTalkId(BERNARD, HAMIL, SIR_ARON_TANFORD, VOKIAN, GAUEN); addMyDying(ANT, ANT_CAPTAIN, ANT_OVERSEER, ANT_RECRUIT, ANT_PATROL, ANT_GUARD, NOBLE_ANT, NOBLE_ANT_LEADER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, MARSH_SPIDER, ROAD_SCAVENGER, MANASHEN_GARGOYLE, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, SERPENT_DEMON_KADESH); } @Override public String onAdvEvent(String event, Npc npc, Player player) { String htmltext = event; QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; // BERNARD if (event.equalsIgnoreCase("30702-04.htm")) { st.setState(QuestStatus.STARTED); st.setCond(1); playSound(player, SOUND_ACCEPT); giveItems(player, BERNARD_INTRODUCTION, 1); if (giveDimensionalDiamonds39(player)) htmltext = "30702-04a.htm"; } // HAMIL else if (event.equalsIgnoreCase("30626-03.htm")) { st.setCond(2); playSound(player, SOUND_MIDDLE); takeItems(player, BERNARD_INTRODUCTION, 1); giveItems(player, HAMIL_LETTER_1, 1); } else if (event.equalsIgnoreCase("30626-07.htm")) { st.setCond(5); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_1, 10); giveItems(player, HAMIL_LETTER_2, 1); } // SIR_ARON_TANFORD else if (event.equalsIgnoreCase("30653-02.htm")) { st.setCond(3); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_1, 1); } // VOKIAN else if (event.equalsIgnoreCase("30514-02.htm")) { st.setCond(6); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_2, 1); } return htmltext; } @Override public String onTalk(Npc npc, Player player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; switch (st.getState()) { case CREATED: if (player.getClassId() != ClassId.ROGUE && player.getClassId() != ClassId.ELVEN_SCOUT && player.getClassId() != ClassId.ASSASSIN) htmltext = "30702-02.htm"; else if (player.getStatus().getLevel() < 39) htmltext = "30702-01.htm"; else htmltext = "30702-03.htm"; break; case STARTED: int cond = st.getCond(); switch (npc.getNpcId()) { case BERNARD: htmltext = "30702-05.htm"; break; case HAMIL: if (cond == 1) htmltext = "30626-01.htm"; else if (cond == 2 || cond == 3) htmltext = "30626-04.htm"; else if (cond == 4) htmltext = "30626-05.htm"; else if (cond > 4 && cond < 8) htmltext = "30626-08.htm"; else if (cond == 8) { htmltext = "30626-09.htm"; st.setCond(9); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_2, 10); giveItems(player, HAMIL_LETTER_3, 1); } else if (cond > 8 && cond < 12) htmltext = "30626-10.htm"; else if (cond == 12) { htmltext = "30626-11.htm"; st.setCond(13); playSound(player, SOUND_MIDDLE); } else if (cond == 13) htmltext = "30626-12.htm"; else if (cond == 14) { htmltext = "30626-13.htm"; takeItems(player, BLOOD_OF_LIZARDMAN, -1); takeItems(player, CRESCENT_MOON_BOW, 1); takeItems(player, TALISMAN_OF_KADESH, 1); giveItems(player, MARK_OF_SAGITTARIUS, 1); rewardExpAndSp(player, 54726, 20250); player.broadcastPacket(new SocialAction(player, 3)); playSound(player, SOUND_FINISH); st.exitQuest(false); } break; case SIR_ARON_TANFORD: if (cond == 2) htmltext = "30653-01.htm"; else if (cond > 2) htmltext = "30653-03.htm"; break; case VOKIAN: if (cond == 5) htmltext = "30514-01.htm"; else if (cond == 6) htmltext = "30514-03.htm"; else if (cond == 7) { htmltext = "30514-04.htm"; st.setCond(8); playSound(player, SOUND_MIDDLE); takeItems(player, TALISMAN_OF_SNAKE, 1); } else if (cond > 7) htmltext = "30514-05.htm"; break; case GAUEN: if (cond == 9) { htmltext = "30717-01.htm"; st.setCond(10); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_3, 1); } else if (cond == 10) htmltext = "30717-03.htm"; else if (cond == 11) { htmltext = "30717-02.htm"; st.setCond(12); playSound(player, SOUND_MIDDLE); takeItems(player, MANASHEN_HORN, 1); takeItems(player, MITHRIL_CLIP, 1); takeItems(player, REINFORCED_BOWSTRING, 1); takeItems(player, STAKATO_CHITIN, 1); giveItems(player, CRESCENT_MOON_BOW, 1); giveItems(player, WOODEN_ARROW, 10); } else if (cond > 11) htmltext = "30717-04.htm"; break; } break; case COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; } @Override public void onMyDying(Npc npc, Creature killer) { final Player player = killer.getActingPlayer(); final QuestState st = checkPlayerState(player, npc, QuestStatus.STARTED); if (st == null) return; switch (npc.getNpcId()) { case ANT: case ANT_CAPTAIN: case ANT_OVERSEER: case ANT_RECRUIT: case ANT_PATROL: case ANT_GUARD: case NOBLE_ANT: case NOBLE_ANT_LEADER: if (st.getCond() == 3 && dropItems(player, HUNTER_RUNE_1, 1, 10, 500000)) st.setCond(4); break; case BREKA_ORC_SHAMAN: case BREKA_ORC_OVERLORD: if (st.getCond() == 6 && dropItems(player, HUNTER_RUNE_2, 1, 10, 500000)) { st.setCond(7); giveItems(player, TALISMAN_OF_SNAKE, 1); } break; case MARSH_STAKATO_WORKER: case MARSH_STAKATO_SOLDIER: case MARSH_STAKATO_DRONE: if (st.getCond() == 10 && dropItems(player, STAKATO_CHITIN, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, REINFORCED_BOWSTRING)) st.setCond(11); break; case MARSH_SPIDER: if (st.getCond() == 10 && dropItems(player, REINFORCED_BOWSTRING, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case ROAD_SCAVENGER: if (st.getCond() == 10 && dropItems(player, MITHRIL_CLIP, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, REINFORCED_BOWSTRING, STAKATO_CHITIN)) st.setCond(11); break; case MANASHEN_GARGOYLE: if (st.getCond() == 10 && dropItems(player, MANASHEN_HORN, 1, 1, 100000) && player.getInventory().hasItems(REINFORCED_BOWSTRING, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case LETO_LIZARDMAN: case LETO_LIZARDMAN_ARCHER: case LETO_LIZARDMAN_SOLDIER: case LETO_LIZARDMAN_WARRIOR: case LETO_LIZARDMAN_SHAMAN: case LETO_LIZARDMAN_OVERLORD: if (st.getCond() == 13) { if (((player.getInventory().getItemCount(BLOOD_OF_LIZARDMAN) - 120) * 5) > Rnd.get(100)) { playSound(player, SOUND_BEFORE_BATTLE); takeItems(player, BLOOD_OF_LIZARDMAN, -1); addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } else dropItemsAlways(player, BLOOD_OF_LIZARDMAN, 1, 0); } break; case SERPENT_DEMON_KADESH: if (st.getCond() == 13) { if (player.getInventory().getItemIdFrom(Paperdoll.RHAND) == CRESCENT_MOON_BOW) { st.setCond(14); playSound(player, SOUND_MIDDLE); giveItems(player, TALISMAN_OF_KADESH, 1); } else addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } break; } } }  
×
×
  • Criar Novo...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.