Sfoglia il codice sorgente

BETA: Quest The Way of the Warrior (175) in Java.

Patch by: ivantotov
Reviewed by: Zoey76, Adry_85, xban1x
Thanks to: Adry_85
Zoey76 11 anni fa
parent
commit
671988c5bb
29 ha cambiato i file con 368 aggiunte e 184 eliminazioni
  1. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts.cfg
  2. 0 4
      L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-01.htm
  3. 0 3
      L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-05.htm
  4. 0 3
      L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-07.htm
  5. 0 3
      L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-09.htm
  6. 0 3
      L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-12.htm
  7. 0 151
      L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/__init__.py
  8. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-01.html
  9. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-02.html
  10. 2 2
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-03.html
  11. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-04.html
  12. 2 2
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-05.html
  13. 2 2
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-06.html
  14. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-07.html
  15. 4 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-01.htm
  16. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-02.htm
  17. 0 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-03.htm
  18. 4 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-04.htm
  19. 2 2
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-05.htm
  20. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-06.html
  21. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-07.html
  22. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-08.html
  23. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-09.html
  24. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-10.html
  25. 0 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-11.html
  26. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-12.html
  27. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-13.html
  28. 330 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/Q00175_TheWayOfTheWarrior.java
  29. 1 0
      L2J_DataPack_BETA/dist/sql/game/updates/20140207update.sql

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts.cfg

@@ -357,7 +357,7 @@ quests/171_ActsOfEvil/__init__.py
 quests/Q00172_NewHorizons/Q00172_NewHorizons.java
 quests/Q00173_ToTheIsleOfSouls/Q00173_ToTheIsleOfSouls.java
 quests/Q00174_SupplyCheck/Q00174_SupplyCheck.java
-quests/175_TheWayOfTheWarrior/__init__.py
+quests/Q00175_TheWayOfTheWarrior/Q00175_TheWayOfTheWarrior.java
 quests/Q00176_StepsForHonor/Q00176_StepsForHonor.java
 quests/178_IconicTrinity/__init__.py
 quests/Q00179_IntoTheLargeCavern/Q00179_IntoTheLargeCavern.java

+ 0 - 4
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-01.htm

@@ -1,4 +0,0 @@
-<html><body>Hierarch Kekropus:<br>
-What brings you to me?<br>
-<a action="bypass -h Quest 175_TheWayOfTheWarrior 32138-03.htm">"I would like to become a Kamael warrior."</a>
-</body></html>

+ 0 - 3
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-05.htm

@@ -1,3 +0,0 @@
-<html><body>Hierarch Kekropus:<br>
-Did you meet <font color="LEVEL">Assistant Elder Perwan</font>? In order to perform the ceremony, certain basic preparations must be undertaken. Come back when they have been completed.
-</body></html>

+ 0 - 3
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-07.htm

@@ -1,3 +0,0 @@
-<html><body>Hierarch Kekropus:<br>
-The preparations have been completed; return to Perwan if you still wish to be acknowledged as one of the Fighters. Go quickly to <font color="LEVEL">Assistant Elder Perwan at the Grotto</font>.
-</body></html>

+ 0 - 3
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-09.htm

@@ -1,3 +0,0 @@
-<html><body>Hierarch Kekropus:<br>
-Very well. You now prove that you have the necessary traits to be a Fighter: bravery and strength. Go to the <font color="LEVEL">Hills of Gold</font>, hunt <font color="LEVEL">Muertos</font> and bring back <font color="LEVEL">10 Muertos Claws</font>.
-</body></html>

+ 0 - 3
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-12.htm

@@ -1,3 +0,0 @@
-<html><body>Hierarch Kekropus:<br>
-Well done! You are now a Kamael warrior. Take this Fighter's Sword as proof of your new station. May it aid you training and your journeys. Bring honor to the Kamael people, my young friend!
-</body></html>

+ 0 - 151
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/__init__.py

@@ -1,151 +0,0 @@
-# Contributed by t0rm3nt0r (tormentor2000@mail.ru) to the Official L2J Datapack Project
-# Visit http://www.l2jdp.com/forum/ for more details.
-
-import sys
-from com.l2jserver.gameserver.model.quest import State
-from com.l2jserver.gameserver.model.quest import QuestState
-from com.l2jserver.gameserver.model.quest import Quest as JQuest
-from com.l2jserver.gameserver.network.serverpackets import SocialAction
-
-qn = "175_TheWayOfTheWarrior"
-
-#NPC'S
-PERWAN = 32133
-KEKROPUS = 32138
-
-#ITEM'S
-WARRIORS_SWORD = 9720
-LESSER_HEALING_POTIONS = 1060
-ECHO = range(4412,4417)
-SOULSHOT_FOR_BEGINNERS = 5789
-WOLF_TAIL = 9807
-MUERTOS_CLAW = 9808
-
-#MOBS
-MOUNTAIN_WEREWOLF = 22235
-MUERTOS = [22236]+range(22239,22241)+range(22242,22244)+range(22245,22247)
-
-NEWBIE_REWARD = 16
-class Quest (JQuest) :
-
- def __init__(self,id,name,descr):
-     JQuest.__init__(self,id,name,descr)
- 
- def onAdvEvent (self,event,npc, player) :
-     htmltext = event
-     st = player.getQuestState(qn)
-     if not st : return
-     player = st.getPlayer()
-     if event == "32138-04.htm" :
-       st.set("cond","1")
-       st.setState(State.STARTED)
-       st.playSound("ItemSound.quest_accept")
-     elif event == "32133-06.htm" :
-       st.set("cond","6") 
-       st.playSound("ItemSound.quest_accept")
-     elif event == "32138-09.htm" :
-       st.set("cond","7") 
-       st.playSound("ItemSound.quest_accept")  
-     elif event == "32138-12.htm" :
-       st.takeItems(MUERTOS_CLAW,-1)
-       st.giveItems(57,8799)
-       st.giveItems(LESSER_HEALING_POTIONS,100)
-       for item in ECHO :
-         st.giveItems(item,10)
-       newbie = player.getNewbie()
-       if newbie | NEWBIE_REWARD != newbie :
-         player.setNewbie(newbie|NEWBIE_REWARD)
-         st.giveItems(SOULSHOT_FOR_BEGINNERS,7000)
-         st.playTutorialVoice("tutorial_voice_026")
-       st.giveItems(WARRIORS_SWORD,1)
-       st.addExpAndSp(20739,1777)
-       player.sendPacket(SocialAction(player.getObjectId(),3))
-       player.sendPacket(SocialAction(player.getObjectId(),15))
-       st.playSound("ItemSound.quest_finish")
-       st.exitQuest(False)
-     return htmltext
-
- def onTalk (self,npc,player):
-     npcId = npc.getId()
-     htmltext = Quest.getNoQuestMsg(player)
-     st = player.getQuestState(qn)
-     if not st : return htmltext
-     id = st.getState()
-     cond = st.getInt("cond")
-     if id == State.COMPLETED :
-       htmltext = Quest.getAlreadyCompletedMsg(player)
-     elif id == State.CREATED and npcId == KEKROPUS :
-       if st.getPlayer().getLevel() >= 10 and player.getRace().ordinal() == 5 :
-         htmltext = "32138-01.htm"
-       else :
-         htmltext = "32138-02.htm"
-         st.exitQuest(1)
-     elif id == State.STARTED :
-       if npcId == KEKROPUS : 
-         if cond == 1 :
-           htmltext = "32138-05.htm"
-         elif cond == 4 :
-           htmltext = "32138-06.htm"
-           st.set("cond","5")
-           st.playSound("ItemSound.quest_middle")
-         elif cond == 5 :
-           htmltext = "32138-07.htm"
-         elif cond == 6 :
-           htmltext = "32138-08.htm"
-         elif cond == 7 :
-           htmltext = "32138-10.htm"
-         elif cond == 8 :
-           htmltext = "32138-11.htm"
-       elif npcId == PERWAN :
-         if cond == 1 :
-           htmltext = "32133-01.htm"
-           st.set("cond","2")
-           st.playSound("ItemSound.quest_middle")
-         elif cond == 2 :
-           htmltext = "32133-02.htm"
-         elif cond == 3 :
-           st.takeItems(WOLF_TAIL,-1)
-           htmltext = "32133-03.htm"
-           st.set("cond","4")
-           st.playSound("ItemSound.quest_middle")
-         elif cond == 4 :
-           htmltext = "32133-04.htm" 
-         elif cond == 5 :
-           htmltext = "32133-05.htm" 
-         elif cond == 6 :
-           htmltext = "32133-07.htm"          
-     return htmltext
-
- def onKill(self,npc,player,isPet) :
-     st = player.getQuestState(qn)
-     if not st: return
-     if st.getState() == State.STARTED :
-       npcId = npc.getId()
-       cond = st.getInt("cond")
-       chance = self.getRandom(100)
-       tails = st.getQuestItemsCount(WOLF_TAIL)
-       claws = st.getQuestItemsCount(MUERTOS_CLAW)
-       if npcId == MOUNTAIN_WEREWOLF and (chance < 50) and (cond == 2) and (tails < 5) : #Retail statistic info. 10 mob's - 5 tails
-         st.giveItems(WOLF_TAIL,1)
-         st.playSound("ItemSound.quest_itemget")
-         if st.getQuestItemsCount(WOLF_TAIL) == 5 :
-           st.set("cond","3")
-           st.playSound("ItemSound.quest_middle")
-       elif (npcId in MUERTOS) and (claws < 10) and (cond == 7): #Retail statistic info. 10 mob's - 10 claws
-         st.giveItems(MUERTOS_CLAW,1)
-         st.playSound("ItemSound.quest_itemget") 
-         if st.getQuestItemsCount(MUERTOS_CLAW) == 10 :
-           st.set("cond","8")
-           st.playSound("ItemSound.quest_middle")
-     return
-
-QUEST       = Quest(175, qn, "The Way of the Warrior")
-
-QUEST.addStartNpc(KEKROPUS)
-
-QUEST.addTalkId(KEKROPUS)
-QUEST.addTalkId(PERWAN)
-
-QUEST.addKillId(MOUNTAIN_WEREWOLF)
-for mob in MUERTOS :
-    QUEST.addKillId(mob)

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-01.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-01.html

@@ -1,4 +1,4 @@
-<html><body>Vice Hierarch Perwan:<br>
+<html><body>Perwan:<br>
 I met you not long ago, and yet here you are preparing for your warrior ritual. Excellent!<br>
 There is something you must do first, however. Go to the Hills of Gold and obtain <font color="LEVEL">5 lovely Wolf Tails</font>. Leave the rest to me.
 </body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-02.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-02.html

@@ -1,3 +1,3 @@
-<html><body>Vice Hierarch Perwan:<br>
+<html><body>Perwan:<br>
 Did you forget what I told you? <font color="LEVEL">Go to the Hills of Gold and obtain 5 lovely Werewolf tail pelts.</font>
 </body></html>

+ 2 - 2
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-03.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-03.html

@@ -1,4 +1,4 @@
-<html><body>Vice Hierarch Perwan:<br>
+<html><body>Perwan:<br>
 Well done! Now return to <font color="LEVEL">Hierarch Kekropus</font> and listen to his words while I prepare these things.<br>
-He will tell you the reason why you must undergo these formalities. After your curiosity has been satified, everything will be ready for you. Go, make haste!
+He will tell you the reason why you must undergo these formalities. After your curiosity has been satisfied, everything will be ready for you. Go, make haste!
 </body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-04.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-04.html

@@ -1,3 +1,3 @@
-<html><body>Vice Hierarch Perwan:<br>
+<html><body>Perwan:<br>
 This will take some time to prepare, so go to <font color="LEVEL">Hierarch Kekropus</font> and listen to his words.
 </body></html>

+ 2 - 2
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-05.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-05.html

@@ -1,5 +1,5 @@
 <html><body>Vice Hierarch Perwan:<br>
 The preparations are complete. You understand now why they were necessary, right?<br>
-Then be seated, close your eyes and tell me when you are ready to begin<br>
-<a action="bypass -h Quest 175_TheWayOfTheWarrior 32133-06.htm">"I'm ready."</a>
+Then be seated, close your eyes and tell me when you are ready to begin.<br>
+<a action="bypass -h Quest Q00175_TheWayOfTheWarrior 32133-06.html">"I'm ready."</a>
 </body></html>

+ 2 - 2
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-06.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-06.html

@@ -1,4 +1,4 @@
-<html><body>Vice Hierarch Perwan:<br>
-Wait a moment -- don't move<br>
+<html><body>Perwan:<br>
+Wait a moment -- don't move.<br>
 Ah, we are ready! Now go to <font color="LEVEL">Hierarch Kekropus</font> to be acknowledged as a true Kamael Warrior.
 </body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32133-07.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32133-07.html

@@ -1,3 +1,3 @@
-<html><body>Vice Hierarch Perwan:<br>
+<html><body>Perwan:<br>
 Why are you still here? Go to <font color="LEVEL">Hierarch Kekropus</font> immediately!
 </body></html>

+ 4 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-01.htm

@@ -0,0 +1,4 @@
+<html><body>Hierarch Kekropus:<br>
+What brings you to me?<br>
+<a action="bypass -h Quest Q00175_TheWayOfTheWarrior 32138-02.htm">"I would like to become a Kamael warrior."</a>
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-03.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-02.htm

@@ -1,4 +1,4 @@
 <html><body>Hierarch Kekropus:<br>
 I admire your confidence! To be acknowledged as a Kamael warrior is no easy task. Are you prepared to risk both body and spirit?<br>
-<a action="bypass -h Quest 175_TheWayOfTheWarrior 32138-04.htm">"I can do anything."</a>
+<a action="bypass -h Quest Q00175_TheWayOfTheWarrior 32138-05.htm">"I can do anything."</a>
 </body></html>

+ 0 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-02.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-03.htm


+ 4 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-04.htm

@@ -0,0 +1,4 @@
+<html><body>Hierarch Kekropus:<br>
+It may be that we have entered into an alliance with them, but they dare not enter our holy sanctuary.<br>
+(Only Kamael clans above level 10 may embark on this quest.)
+</body></html>

+ 2 - 2
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-04.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-05.htm

@@ -1,4 +1,4 @@
 <html><body>Hierarch Kekropus:<br>
-Yes, with that kind of will, you may avercome any hardship. You have the spirit and pride necessary for a Fighter.<br>
-You must prepare for the ceremony. Go to <font color="LEVEL">Vice Hierarch Perwan at the Cave of Souls</font> and seek his assistance; then returned to me when your preparations have been completed.
+Yes, with that kind of will, you may overcome any hardship. You have the spirit and pride necessary for a Fighter.<br>
+You must prepare for the ceremony. Go to <font color="LEVEL">Vice Hierarch Perwan at the Cave of Souls</font> and seek his assistance; then return to me when your preparations have been completed.
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-06.html

@@ -0,0 +1,3 @@
+<html><body>Hierarch Kekropus:<br>
+Did you meet <font color="LEVEL">Assistant Elder Peruwan</font>? In order to perform the ceremony, certain basic preparations must be undertaken. Come back when they have been completed.
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-06.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-07.html

@@ -1,5 +1,5 @@
 <html><body>Hierarch Kekropus:<br>
 How are the preparations progressing? I see that you are curious about why we are preparing for this ceremony rather than simply leaving for the hunt.<br>
-But you have hunted outside before, so you must know that you may meet a foe stronger than you are or be overcome by a poison you have never befor encountered. Through this ceremony, we help ensure the safety of those the participants.<br>
+But you have hunted outside before, so you must know that you may meet a foe stronger than you are or be overcome by a poison you have never before encountered. Through this ceremony, we help ensure the safety of those the participants.<br>
 The preparations should be complete by now. Go back to <font color="LEVEL">Perwan in the Cave of Souls</font>.
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-08.html

@@ -0,0 +1,3 @@
+<html><body>Hierarch Kekropus:<br>
+The preparations have been completed; return to Peruwan if you still wish to be acknowledged as one of the Fighters. Go quickly to <font color="LEVEL">Assistant Elder Peruwan at the Grotto</font>.
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-08.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-09.html

@@ -1,4 +1,4 @@
 <html><body>Hierarch Kekropus:<br>
 In you, I see hope for our people's future as a race. Are you prepared to take the test?<br>
-<a action="bypass -h Quest 175_TheWayOfTheWarrior 32138-09.htm">"I am ready."</a>
+<a action="bypass -h Quest Q00175_TheWayOfTheWarrior 32138-10.html">"I am ready."</a>
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-10.html

@@ -0,0 +1,3 @@
+<html><body>Hierarch Kekropus:<br>
+Very well. You must now prove that you have the necessary traits to be a Fighter: bravery and strength. Go to the <font color="LEVEL">Hills of Gold</font>, hunt <font color="LEVEL">Muertos</font> and bring back <font color="LEVEL">10 Muertos Claws</font>.
+</body></html>

+ 0 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-10.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-11.html


+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/175_TheWayOfTheWarrior/32138-11.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-12.html

@@ -1,4 +1,4 @@
 <html><body>Hierarch Kekropus:<br>
 I perceive this was a difficult task for you. Did you bring the Muertos claws?<br>
-<a action="bypass -h Quest 175_TheWayOfTheWarrior 32138-12.htm">Show him the claws.</a>
+<a action="bypass -h Quest Q00175_TheWayOfTheWarrior 32138-13.html">Show him the claws.</a>
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/32138-13.html

@@ -0,0 +1,3 @@
+<html><body>Hierarch Kekropus:<br>
+Well done! You are now a Kamael warrior. Take this Fighter's Sword as proof of your new station. May it aid you in you training and your journeys. Bring honor to the Kamael people, my young friend!
+</body></html>

+ 330 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00175_TheWayOfTheWarrior/Q00175_TheWayOfTheWarrior.java

@@ -0,0 +1,330 @@
+/*
+ * Copyright (C) 2004-2014 L2J DataPack
+ * 
+ * This file is part of L2J DataPack.
+ * 
+ * L2J DataPack is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ * 
+ * L2J DataPack is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package quests.Q00175_TheWayOfTheWarrior;
+
+import com.l2jserver.gameserver.enums.PcRace;
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.holders.ItemHolder;
+import com.l2jserver.gameserver.model.holders.SkillHolder;
+import com.l2jserver.gameserver.model.quest.Quest;
+import com.l2jserver.gameserver.model.quest.QuestState;
+import com.l2jserver.gameserver.model.quest.State;
+import com.l2jserver.gameserver.model.variables.PlayerVariables;
+import com.l2jserver.gameserver.network.NpcStringId;
+import com.l2jserver.gameserver.network.serverpackets.ExShowScreenMessage;
+import com.l2jserver.gameserver.network.serverpackets.SocialAction;
+
+/**
+ * The Way of the Warrior (175)
+ * @author ivantotov
+ */
+public final class Q00175_TheWayOfTheWarrior extends Quest
+{
+	// NPCs
+	private static final int PERWAN = 32133;
+	private static final int KEKROPUS = 32138;
+	// Items
+	private static final ItemHolder WOLF_TAIL = new ItemHolder(9807, 5);
+	private static final ItemHolder MUERTOS_CLAW = new ItemHolder(9808, 10);
+	// Message
+	private static final ExShowScreenMessage MESSAGE = new ExShowScreenMessage(NpcStringId.ACQUISITION_OF_RACE_SPECIFIC_WEAPON_COMPLETE_N_GO_FIND_THE_NEWBIE_GUIDE, 2, 5000);
+	// Misc
+	private static final int MIN_LEVEL = 10;
+	// Buff
+	private static final SkillHolder UNSEALED_ALTAR = new SkillHolder(4549, 1);
+	// Rewards
+	private static final int WARRIORS_SWORD = 9720;
+	private static final ItemHolder SOULSHOTS_NO_GRADE_FOR_ROOKIES = new ItemHolder(5789, 7000);
+	private static final ItemHolder[] REWARDS =
+	{
+		new ItemHolder(1060, 100),// Lesser Healing Potion
+		new ItemHolder(4412, 10), // Echo Crystal - Theme of Battle
+		new ItemHolder(4413, 10), // Echo Crystal - Theme of Love
+		new ItemHolder(4414, 10), // Echo Crystal - Theme of Solitude
+		new ItemHolder(4415, 10), // Echo Crystal - Theme of Feast
+		new ItemHolder(4416, 10), // Echo Crystal - Theme of Celebration
+	};
+	// Monsters
+	private static final int MOUNTAIN_WEREWOLF = 22235;
+	private static final int[] MONSTERS =
+	{
+		22236, // Muertos Archer
+		22239, // Muertos Guard
+		22240, // Muertos Scout
+		22242, // Muertos Warrior
+		22243, // Muertos Captain
+		22245, // Muertos Lieutenant
+		22246, // Muertos Commander
+	};
+	
+	private Q00175_TheWayOfTheWarrior()
+	{
+		super(175, Q00175_TheWayOfTheWarrior.class.getSimpleName(), "The Way of the Warrior");
+		addStartNpc(KEKROPUS);
+		addTalkId(KEKROPUS, PERWAN);
+		addKillId(MOUNTAIN_WEREWOLF);
+		addKillId(MONSTERS);
+		registerQuestItems(WOLF_TAIL.getId(), MUERTOS_CLAW.getId());
+	}
+	
+	@Override
+	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+	{
+		final QuestState qs = getQuestState(player, false);
+		if (qs == null)
+		{
+			return null;
+		}
+		String htmltext = null;
+		switch (event)
+		{
+			case "32138-02.htm":
+			{
+				htmltext = event;
+				break;
+			}
+			case "32138-05.htm":
+			{
+				if (qs.isCreated())
+				{
+					qs.startQuest();
+					qs.setMemoState(1);
+					htmltext = event;
+				}
+				break;
+			}
+			case "32138-10.html":
+			{
+				qs.setMemoState(6);
+				qs.setCond(7, true);
+				htmltext = event;
+				break;
+			}
+			case "32138-13.html":
+			{
+				if (hasItem(player, MUERTOS_CLAW))
+				{
+					takeItem(player, MUERTOS_CLAW);
+					giveAdena(player, 8799, true);
+					for (ItemHolder reward : REWARDS)
+					{
+						giveItems(player, reward);
+					}
+					giveNewbieReward(player);
+					giveItems(player, WARRIORS_SWORD, 1);
+					addExpAndSp(player, 20739, 1777);
+					qs.exitQuest(false, true);
+					player.sendPacket(new SocialAction(player.getObjectId(), 3));
+					htmltext = event;
+				}
+				break;
+			}
+			case "32133-06.html":
+			{
+				qs.setMemoState(5);
+				qs.setCond(6, true);
+				npc.setTarget(player);
+				npc.doCast(UNSEALED_ALTAR.getSkill());
+				htmltext = event;
+				break;
+			}
+		}
+		return htmltext;
+	}
+	
+	@Override
+	public String onKill(L2Npc npc, L2PcInstance player, boolean isSummon)
+	{
+		if (npc.getId() == MOUNTAIN_WEREWOLF)
+		{
+			final QuestState qs = getRandomPartyMemberState(player, -1, 2, npc);
+			if ((qs != null) && qs.isCond(2) && giveItemRandomly(qs.getPlayer(), npc, WOLF_TAIL.getId(), 1, WOLF_TAIL.getCount(), 0.5, true))
+			{
+				qs.setCond(3, true);
+			}
+		}
+		else
+		{
+			final QuestState qs = getRandomPartyMemberState(player, -1, 6, npc);
+			if ((qs != null) && qs.isCond(7) && giveItemRandomly(qs.getPlayer(), npc, MUERTOS_CLAW.getId(), 1, MUERTOS_CLAW.getCount(), 1.0, true))
+			{
+				qs.setCond(8, true);
+			}
+		}
+		return super.onKill(npc, player, isSummon);
+	}
+	
+	@Override
+	public String onTalk(L2Npc npc, L2PcInstance player)
+	{
+		final QuestState qs = getQuestState(player, true);
+		String htmltext = getNoQuestMsg(player);
+		switch (npc.getId())
+		{
+			case KEKROPUS:
+			{
+				switch (qs.getState())
+				{
+					case State.CREATED:
+					{
+						if (player.getRace() == PcRace.Kamael)
+						{
+							if (player.getLevel() >= MIN_LEVEL)
+							{
+								htmltext = "32138-01.htm";
+							}
+							else
+							{
+								htmltext = "32138-03.htm";
+							}
+						}
+						else
+						{
+							htmltext = "32138-04.htm";
+						}
+						break;
+					}
+					case State.STARTED:
+					{
+						switch (qs.getCond())
+						{
+							case 1:
+							case 2:
+							case 3:
+							{
+								htmltext = "32138-06.html";
+								break;
+							}
+							case 4:
+							{
+								qs.setMemoState(4);
+								qs.setCond(5, true);
+								htmltext = "32138-07.html";
+								break;
+							}
+							case 5:
+							{
+								htmltext = "32138-08.html";
+								break;
+							}
+							case 6:
+							{
+								htmltext = "32138-09.html";
+								break;
+							}
+							case 7:
+							{
+								htmltext = "32138-11.html";
+								break;
+							}
+							case 8:
+							{
+								if (hasItem(player, MUERTOS_CLAW))
+								{
+									htmltext = "32138-12.html";
+								}
+								break;
+							}
+						}
+						break;
+					}
+					case State.COMPLETED:
+					{
+						htmltext = getAlreadyCompletedMsg(player);
+						break;
+					}
+				}
+				break;
+			}
+			case PERWAN:
+			{
+				switch (qs.getCond())
+				{
+					case 1:
+					{
+						qs.setMemoState(2);
+						qs.setCond(2, true);
+						htmltext = "32133-01.html";
+						break;
+					}
+					case 2:
+					{
+						htmltext = "32133-02.html";
+						break;
+					}
+					case 3:
+					{
+						if (hasItem(player, WOLF_TAIL))
+						{
+							takeItem(player, WOLF_TAIL);
+							qs.setMemoState(3);
+							qs.setCond(4, true);
+							htmltext = "32133-03.html";
+						}
+						break;
+					}
+					case 4:
+					{
+						htmltext = "32133-04.html";
+						break;
+					}
+					case 5:
+					{
+						htmltext = "32133-05.html";
+						break;
+					}
+					case 6:
+					{
+						htmltext = "32133-07.html";
+						break;
+					}
+				}
+				break;
+			}
+		}
+		return htmltext;
+	}
+	
+	public static final void giveNewbieReward(L2PcInstance player)
+	{
+		final PlayerVariables vars = player.getVariables();
+		if ((player.getLevel() < 25) && !vars.getBoolean("NEWBIE_SHOTS", false))
+		{
+			playSound(player, "tutorial_voice_26");
+			giveItems(player, SOULSHOTS_NO_GRADE_FOR_ROOKIES);
+			vars.set("NEWBIE_SHOTS", true);
+		}
+		if (vars.getString("GUIDE_MISSION", null) == null)
+		{
+			vars.set("GUIDE_MISSION", 100000);
+			player.sendPacket(MESSAGE);
+		}
+		else if (((vars.getInt("GUIDE_MISSION") % 1000000) / 100000) != 1)
+		{
+			vars.set("GUIDE_MISSION", vars.getInt("GUIDE_MISSION") + 100000);
+			player.sendPacket(MESSAGE);
+		}
+	}
+	
+	public static void main(String args[])
+	{
+		new Q00175_TheWayOfTheWarrior();
+	}
+}

+ 1 - 0
L2J_DataPack_BETA/dist/sql/game/updates/20140207update.sql

@@ -0,0 +1 @@
+UPDATE character_quests SET name='Q00175_TheWayOfTheWarrior' WHERE name='175_TheWayOfTheWarrior';