Ir para conteúdo
  • Cadastre-se

L2jfrozen 1132 + Mods + Source


Gabrieljdb

Posts recomendados

A pedido do membro @Kallisto por uma Source L2jFrozen com alguns Mods da preferencia dele iniciarei aqui um desenvolvimento.

Peguei a Source limpa da jFrozen deste link: SVN

 

PROGRAMAS USADOS:

  1. Java: JDK 7 Update 2
  2. MySQL: 5.7
  3. Navicat: 8.0
  4. Eclipse: SDK 3.7.1
  5. Slik Subversion: 1.7.2
  6. Winrar

 

O QUE  FOI FEITO:

 Proteções:

  • No Trade in Combate
  • Aio no use gatekeeper
  • Aio no use class master
  • Aio no participe events
  • aio no use vip status item
  • vip no use aio status item
  •  

Modificações:

  • Days to Siege Config
  • Server Credits Config
  • replaces for welcome.htm
  • Banking System full edit config
  • Enchant System full edit config
  • New Propertie Status system
  • New Propertie Items handler
  • New Propertie Npcs core
  • Announce Obtained Status: Noble, Aio, Vip, Hero
  • Announce Login Status: Staff, Noble, Aio, Vip, Hero, Lord
  • Last Login in welcome.htm
  • Skills for Aio & Vip
  • Effects for Aio & Vip
  • Name / Title Color for Aio & Vip
  • Items Reward for Aio & Vip
  • Firework effect + ExScreenMsg use items handler
  •  

Zonas:

  • Newbie Zone
  • Hero Zone
  • Donator Zone
  • Multifuncional Zone
  • PvP Flag Zone
  • Clan War Zone
  •  

Npcs:

  • NPC Smart Shop
  • NPC Skill Seller
  • NPC Bug Report 
  • NPC Item Marketer
  • NPC Fast Augment
  • NPC Macro Buffer
  •  

Items:

  • Universal Enchant
  • Golden Enchant
  • Clan Full Item
  • Clan Skill Item
  • Clan Level Item
  • Clan Reputation Item
  • Change Sex Item
  • Change Name Item
  • Change Base Class Item
  • Aio Status Item
  • Vip Status Item
  • Noble Status Item
  • Hero Status Item
  • PvP Reward Item
  • Pk Reward Item
  •  

Comandos:

  • .menu
  • .info
  • .ctfjoin, leave, info
  • .tvtjoin, leave, info
  • .dmjoin, leave, info
  • .deposit
  • .withdraw
  • .aioinfo
  • .vipinfo
  • //mashero
  • //masrecal
  • //send donate
  • //setvip char days
  • //setaio char days
  •  

Sistemas:

  • Aio System
  • Vip System
  • Hero System
  • Noble System
  • Donator System
  • Auto Restart System
  • Bot Protection System
  • PvP / Pk Color System
  •  

Eventos:

  • Achievements
  • Trivia
  • Hitman
  • Arena 2x2
  • CTF
  • TVT
  • DM
  • TW
  • Pc Bang Points
  • Wedding
  • Champion Mobs

 

DOWNLOADS:

Patch:

====================================================
itemname-e.dat
====================================================

10000	Donator Scroll: Enchant Weapon		A scroll of enchantment that empowers a weapon. 	-1					0	0	0	
10001	Donator Scroll: Enchant Armor		A scroll of enchantment that empowers a armor 	-1					0	0	0	
10002	Donator Coin		Currency used to purchase valuable items.	-1					0	0	0	
10003	Gold Coin		Currency used to purchase valuable items.	-1					0	0	0	
10004	Gold Bar		Currency used to purchase valuable items.	-1					0	0	0	
10005	Noble Status Item			-1					0	0	0	
10006	Aio Status Item			-1					0	0	0	
10007	Vip Status Item			-1					0	0	0	
10008	Hero Status Item			-1					0	0	0	
10009	PvP Point			-1					0	0	0	
10010	Pk Point			-1					0	0	0	
10011	Clan Full			-1					0	0	0	
10012	Clan Skill			-1					0	0	0	
10013	Clan Level			-1					0	0	0	
10014	Clan Reputation			-1					0	0	0	

====================================================
etcitemgrp.dat
====================================================

2	10000	0	3	6	3	0	dropitems.drop_scroll_m00			dropitemstex.drop_scroll_t00			icon.Item_CanUse31					0	120	18	0	0	1		1		ItemSound.itemdrop_scroll		0	0	0
2	10001	0	3	6	3	0	dropitems.drop_scroll_m00			dropitemstex.drop_scroll_t00			icon.Item_CanUse30					0	120	18	0	0	1		1		ItemSound.itemdrop_scroll		0	0	0
2	10002	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_coin_of_fair_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10003	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_coins_gold_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10004	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_lump_yellow_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10005	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10006	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10007	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10008	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10009	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.skill1502					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10010	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.skill1501					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10011	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10012	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10013	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0
2	10014	0	3	2	5	0	dropitems.drop_sack_m00			dropitemstex.drop_sack_t00			icon.etc_l2_i00					0	0	18	0	0	1		1		ItemSound.itemdrop_sack		2	0	0

====================================================


PRINTS:

Aqui o primeiro álbum de fotos = https://imgur.com/a/tNg05Qb

ANDAMENTO: 65%

 

Créditos: @Gabrieljdb @L2JBRASIL FORUM

OBS: Se for para adicionar mais mods cole abaixo o link 

Se souber de algum Erro ou má configuração relate tambem.

O QUE ESTIVER AO ALCANCE DO MEU HUMILDE CONHECIMENTO ,FAREI.

 

 

 

Previsão para termino? DOM, 27/01/2019

 

Editado por Gabrieljdb
  • Gostei 6
  • Amei 2
  • Obrigado 1

Em breve novidades...

Link para o comentário
Compartilhar em outros sites


 

@Gabrieljdb TOP MAN!?
 estarei acompanhando!  ?
 

faltou algum mod mano bota ai?

 

.menu
ShowNpcCrest configurável
Bloquear Trade Modo de Combate
Npc vender item enchartado
 

. menu temos esse Post

Show Npc Crest ja vem na Frozen

Bloquear trade em combate temos esse

        if(player.isInCombat() || partner.isInCombat())
        {
            player.sendMessage("You can't Request a Trade when you in Combat Mode");
            player.sendPacket(ActionFailed.STATIC_PACKET);
            return;
        }
	

Npc vende item encantado tenho um aqui que adc os items via 'sql'

da pra configurar, itemid, enchant, item cost id, item cost count, tudo via sql (Smart Shop do ELFOCRASH)

Editado por Gabrieljdb

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

 

faltou algum mod mano bota ai?

só o do botão de respawn Town Giran que te falei.

 

deixa a frozen estavel sem bug, porque source com mods é o que n falta na jbrasil.

Não tem nenhuma source jfrozen 1132 com todos esses mods que ele citou, aqui no forum.
a 1132 já ta bem estável pra um serve pvp.
assim que ele liberar eu monto um pré e posto aqui no forum

RawbUVC.jpgEstá com medo Ptista Safada?
É A NOVA ERA!qB2L169.jpg

Link para o comentário
Compartilhar em outros sites

 

deixa a frozen estavel sem bug, porque source com mods é o que n falta na jbrasil.

Se eu tivesse experiencia pra isso já estaria aqui, mas infelizmente não tenho rsrs.

Tenho uma noção da logica, sei editar ao meu gosto, mas quem sabe eu vou adquirindo a experiencia que é requerida ao longo dessas modificações.

Um dia...

 

Ate essas mudanças como bloquear trade em combate é facil, pura logica.

Agora pensa Critical no jogo ao clicar em um portão, ou algo parecido, ai foge do meu conhecimento.

Mas relate ai os BUGs que certamente o que eu puder fazer farei, aproveitem.

 

só o do botão de respawn Town Giran que te falei.

Não tem nenhuma source jfrozen 1132 com todos esses mods que ele citou, aqui no forum.
a 1132 já ta bem estável pra um serve pvp.
assim que ele liberar eu monto um pré e posto aqui no forum

Hum esse botao ta dando dor de cabeça não consegui achar o local onde editar os botões , ate se vc tiver uma noção.

eu vou reestruturar toda a pasta config pra ficar mais facil achar as configurações.

to renomeando o projeto com meu nome quem sabe eu vou ate criando mais versões depois.

e lembando vou postar a source tmb.

Editado por Gabrieljdb

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

 

AGUARDANDO AMIGO, BOA INICIATIVA :)

SUCESSO AMIGO !! 

OPA!

Obrigado, nunca me aventurei em Source nenhuma faz pouquissimo tempo que comecei a mexer, vamos ver no que vai dar.

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

 

OPA!

Obrigado, nunca me aventurei em Source nenhuma faz pouquissimo tempo que comecei a mexer, vamos ver no que vai dar.

pra adicionar o botao fixed para giran, tem q editar em Die.java, RequestRestartPoint.java, e pra renomear de fixed pra to giran, fica na system em sysstring-e.dat

1xFoI0n.jpg.5e0903bc1b582f95590d4a4c1fce368a.jpg

Link para o comentário
Compartilhar em outros sites

O Mysql compatível com JFrozen é o 5.5 e o 5.7 

O Java é o RE o DK é só pra compilar.

Um mundo de diversão no Lineage 2

https://www.primeworld.com.br

Discord: Em breve

Comunidade brasileira de Lineage. Interlude Remastered / High Five / Essence 

Classes remasterizadas, sistemas únicos, diversão garantida.

Link para o comentário
Compartilhar em outros sites

 

O Mysql compatível com JFrozen é o 5.5 e o 5.7 

O Java é o RE o DK é só pra compilar.

nem vi que coloquei 5.1, kkk uso 5.7, valeu por avisar.

uso jdk pois tem jre dentro e também porque vou liberar a source e vão ter que compilar.

Editado por Gabrieljdb

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

comandos!
.raidinfo
.status  / ver status tanto do proprio jogador como dos outros, basta estar com o target
.inventory mesma coisa
.skills  mesma coisa.
.showrepair   reparar char!

adicionar ao .menu o rank de pvp/pk e top clan caso não teja!

da uma olhada no antharas!
se não me engano tinha algum bug com ele que não me lembro agora!
só não lembro se era na revisão 1132 ou uma anterior.

Editado por Kallisto

RawbUVC.jpgEstá com medo Ptista Safada?
É A NOVA ERA!qB2L169.jpg

Link para o comentário
Compartilhar em outros sites

.raidinfo ja vem, .

esse .status igual o do alt g de gm tu diz?

.repair tambem ja vem

.skills e .inventory acho meio inutil

top clan e pvp no .menu achei bacana

antharas, vou testar quando acabar a parte do mod

 

 

vou adicionar os

//mashero

//masrecall

send donate no painel admin

//augment que eu editei de um outro

tudo pra gm isso

 

to querendo fazer um sistema vip diferente.

por niveis igual o acess level

 

tipo cada vez que vc usar o item avança 1 nivel, no total ate nivel 3

no nivel 1, cor de nome e titulo, efeito e acesso aos npcs, buff, etc...

no nivel 2 , skills, augment chance, enchant chance, rates dobradas

no nivel 3,  brilho hero e skills hero

 

totalmente configurado pela db

eu tenho so que estudar o codigo do acess level.

Editado por Gabrieljdb

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

 

.raidinfo ja vem, .

esse .status igual o do alt g de gm tu diz?

.repair tambem ja vem

.skills e .inventory acho meio inutil

top clan e pvp no .menu achei bacana

antharas, vou testar quando acabar a parte do mod

 

 

vou adicionar os

//mashero

//masrecall

send donate no painel admin

//augment que eu editei de um outro

tudo pra gm isso

 

to querendo fazer um sistema vip diferente.

por niveis igual o acess level

 

tipo cada vez que vc usar o item avança 1 nivel, no total ate nivel 3

no nivel 1, cor de nome e titulo, efeito e acesso aos npcs, buff, etc...

no nivel 2 , skills, augment chance, enchant chance, rates dobradas

no nivel 3,  brilho hero e skills hero

 

totalmente configurado pela db

eu tenho so que estudar o codigo do acess level.

o .status .inventory e .skills é pra player usar tanto no proprio char quanto no char de outra pessoa, basta estar com o target
eu acho legal, pq quando o player quer saber quanto de dano ou defesa o cara tem ou os itens que o cara ta usando, ver skills de argument que o cara tem.
eu que sou curioso, gosto dessas coisas kkk

gostei da ideia de vips por estágios!

porem esses mods vão levar tempo até vc preparar e deixar tudo pronto.
a rev ja ta praticamente montada.

tu pode publicar uma primeira versão, com a pack limpa, apenas com os mods,
e com o tempo que for adicionando mais mods de tua autoria vai fazendo novas publicações com versões futuras!
 

Editado por Kallisto

RawbUVC.jpgEstá com medo Ptista Safada?
É A NOVA ERA!qB2L169.jpg

Link para o comentário
Compartilhar em outros sites

 

o .status .inventory e .skills é pra player usar tanto no proprio char quanto no char de outra pessoa, basta estar com o target
eu acho legal, pq quando o player quer saber quanto de dano ou defesa o cara tem ou os itens que o cara ta usando, ver skills de argument que o cara tem.
eu que sou curioso, gosto dessas coisas kkk

gostei da ideia de vips por estágios!

porem esses mods vão levar tempo até vc preparar e deixar tudo pronto.
a rev ja ta praticamente montada.

tu pode publicar uma primeira versão, com a pack limpa, apenas com os mods,
e com o tempo que for adicionando mais mods de tua autoria vai fazendo novas publicações com versões futuras!
 

sim vou postar sem custom

maximo que vou por é uns random box

npcs,

sem item custom

 

quero deixar o sistema vip pronto pra publicar

pelomenos o status vip no primeiro level

vai levar uma semana ate fica tudo pronto pra soltar a 1 versão

to tentando fazer antes do ano novo, pq depois eu vou viajar, eu fica pra teste beta, anota tudo e repasse pra segunda versão

 

 

....jpg?1545505691

algumas funções desse menu são legais.

ó, quando for postar a pack, pf posta sem itens custom!
ela limpa, fazendo favor!
obg ❤️

wow gostei mas eu acho que o .menu do marcos sayan ta mais completo , não?

sem custom não preocupa

talvez la pela terceia versão eu comece a fazer ela com custom e sem

mas custom da muito trabalho.

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

se na jfrozen não tiver, coloca o Pc Bang Points.
e o tournament event!

tbm gosto dos comandos .status  .inventory .skills   para players
a maioria dos servidores que abrem agora, todos usam!

Editado por amandinha.skt
Link para o comentário
Compartilhar em outros sites

 

se na jfrozen não tiver, coloca o Pc Bang Points.
e o tournament event!

tbm gosto dos comandos .status  .inventory .skills   para players
a maioria dos servidores que abrem agora, todos usam!

pc bang ja tem , vou colocar o 2x2 , hitman, achievements tudo nesa versão ainda, achievements o mod é gigante

 

pois eh eu vi como funciona .skills . status, ate achei legal, achei  que era aquele mods da frozen .stat

 

GALERA AMANHA EU NÃO ENTRO ENTÃO FELIZ NATAL A TODOS.!!!

Editado por Gabrieljdb

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

 

pc bang ja tem , vou colocar o 2x2 , hitman, achievements tudo nesa versão ainda, achievements o mod é gigante

 

pois eh eu vi como funciona .skills . status, ate achei legal, achei  que era aquele mods da frozen .stat

 

GALERA AMANHA EU NÃO ENTRO ENTÃO FELIZ NATAL A TODOS.!!!

Esse do achievements tem como adicionar mais missão nele ou fica difícil? pq eu sei que tem como editar as recompensas e algumas coisas fora do core, mas pra colocar mais missões tem que ser no core correto? teria como adicionar mais pf?

Link para o comentário
Compartilhar em outros sites

 

Esse do achievements tem como adicionar mais missão nele ou fica difícil? pq eu sei que tem como editar as recompensas e algumas coisas fora do core, mas pra colocar mais missões tem que ser no core correto? teria como adicionar mais pf?

Sim!

Da uma ideia do que você tem em mente

e eu vejo se é possível.

* Player VIP já configurei

 

 

Pessoas, algumas configs como autollot, item kill pvp, pk, rate, ja vou deixar ao meu gosto. não retail.

Rates deixei 100x por ex.

mas fica ao gosto de quem editar.

 

TÓPICO ATUALIZADO.

 

Editado por Gabrieljdb

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

 

Ja ia esquecendo, adiciona esse MOD/NPC AQUI: Siege Register Npc

edit: acabei de ver que no .menu tem a opção de registrar siege, então não é necessário adc o npc

sim, ja vem, e vem raid boss status tmb. e varias opções on off

falta pouco, agora, o que falta e mais configuração, correção e eventos.

Em breve novidades...

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • 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.