瀏覽代碼

BETA: Quests in Java
* Make a Pair of Dress Shoes (33)
* Proof of Existence (701)

malyelfik 12 年之前
父節點
當前提交
8e7ee0a6e3
共有 41 個文件被更改,包括 455 次插入261 次删除
  1. 2 2
      L2J_DataPack_BETA/dist/game/data/scripts.cfg
  2. 0 5
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30164-0.htm
  3. 0 3
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30164-1.htm
  4. 0 3
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-3.htm
  5. 0 4
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-6.htm
  6. 0 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-8.htm
  7. 0 4
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/31520-0.htm
  8. 0 88
      L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/__init__.py
  9. 0 87
      L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/__init__.py
  10. 5 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-01.html
  11. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-02.html
  12. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-03.html
  13. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-04.html
  14. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-01.htm
  15. 4 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-02.html
  16. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-03.htm
  17. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-04.html
  18. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-05.html
  19. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-06.html
  20. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-07.html
  21. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-08.html
  22. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-09.html
  23. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-10.html
  24. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-11.html
  25. 5 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-12.html
  26. 0 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-13.html
  27. 4 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/31520-01.html
  28. 1 1
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/31520-02.html
  29. 3 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/31520-03.html
  30. 187 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java
  31. 3 7
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-01.htm
  32. 3 7
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-02.htm
  33. 3 7
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-03.htm
  34. 3 7
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-04.htm
  35. 4 8
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-05.html
  36. 4 8
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-06.html
  37. 5 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-07.html
  38. 3 7
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-08.html
  39. 3 7
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-09.html
  40. 182 0
      L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java
  41. 2 0
      L2J_DataPack_BETA/dist/sql/game/updates/20130210update.sql

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

@@ -320,7 +320,7 @@ quests/Q00029_ChestCaughtWithABaitOfEarth/Q00029_ChestCaughtWithABaitOfEarth.jav
 quests/Q00030_ChestCaughtWithABaitOfFire/Q00030_ChestCaughtWithABaitOfFire.java
 quests/31_SecretBuriedInTheSwamp/__init__.py
 quests/32_AnObviousLie/__init__.py
-quests/33_MakeAPairOfDressShoes/__init__.py
+quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java
 quests/34_InSearchOfClothes/__init__.py
 quests/35_FindGlitteringJewelry/__init__.py
 quests/36_MakeASewingKit/__init__.py
@@ -693,7 +693,7 @@ quests/Q00691_MatrasSuspiciousRequest/Q00691_MatrasSuspiciousRequest.java
 quests/Q00692_HowtoOpposeEvil/Q00692_HowtoOpposeEvil.java
 quests/699_GuardianOfTheSkies/__init__.py
 quests/700_CursedLife/__init__.py
-quests/701_Proof_Of_Existence/__init__.py
+quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java
 quests/Q00702_ATrapForRevenge/Q00702_ATrapForRevenge.java
 quests/Q00901_HowLavasaurusesAreMade/Q00901_HowLavasaurusesAreMade.java
 quests/Q00903_TheCallOfAntharas/Q00903_TheCallOfAntharas.java

+ 0 - 5
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30164-0.htm

@@ -1,5 +0,0 @@
-<html><body>Trader Ian:<br>
-Come in! What can I do for you?<br>
-Ah yes, a payment from Woodley! That's 300,000 adena, right?<br>
-<a action="bypass -h Quest 33_MakeAPairOfDressShoes 30164-1.htm">Here it is.</a>
-</body></html>

+ 0 - 3
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30164-1.htm

@@ -1,3 +0,0 @@
-<html><body>Trader Ian:<br>
-Humph! Only 300,000 adena for the excellent item I made for him? I suppose I'll accept this time! Tell Mr. Woodley that his balance is paid off, but next time, I'll have to charge a late fee!
-</body></html>

+ 0 - 3
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-3.htm

@@ -1,3 +0,0 @@
-<html><body>Trader Woodley:<br>
-I need 200 leathers and 600 threads for the shoes. You also have to pay for them. It's about five hundred thousand adena. Don't forget!
-</body></html>

+ 0 - 4
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-6.htm

@@ -1,4 +0,0 @@
-<html><body>Trader Woodley:<br>What did Ian say?<br>
-I'll respect his requests.<br>
-<a action="bypass -h Quest 33_MakeAPairOfDressShoes 30838-7.htm">Can I have the shoes?</a>
-</body></html>

+ 0 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-8.htm

@@ -1 +0,0 @@
-<html><body>(Quest for characters level 60 and above.)</body></html>

+ 0 - 4
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/31520-0.htm

@@ -1,4 +0,0 @@
-<html><body>Leikar:<br>
-Have you already been to Mr. Woodley? Even Mr. Woodley couldn't have made a pair of formal dress shoes so quicly! Did something happen that I need to know about?<br>
-<a action="bypass -h Quest 33_MakeAPairOfDressShoes 31520-1.htm">I need the materials for the formal wear.</a>
-</body></html>

+ 0 - 88
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/__init__.py

@@ -1,88 +0,0 @@
-# Made by disKret
-import sys
-from com.l2jserver.gameserver.model.quest import State
-from com.l2jserver.gameserver.model.quest import QuestState
-from com.l2jserver.gameserver.model.quest.jython import QuestJython as JQuest
-
-qn = "33_MakeAPairOfDressShoes"
-
-LEATHER = 1882
-THREAD = 1868
-ADENA = 57
-DRESS_SHOES_BOX = 7113
-
-class Quest (JQuest) :
-
- def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)
-
- def onEvent (self,event,st) :
-   htmltext = event
-   if event == "30838-1.htm" :
-     st.set("cond","1")
-     st.setState(State.STARTED)
-     st.playSound("ItemSound.quest_accept")
-   if event == "31520-1.htm" :
-     st.set("cond","2")
-   if event == "30838-3.htm" :
-     st.set("cond","3")
-   if event == "30838-5.htm" :
-     if st.getQuestItemsCount(LEATHER) >= 200 and st.getQuestItemsCount(THREAD) >= 600 and st.getQuestItemsCount(ADENA) >= 200000 :
-       st.takeItems(LEATHER,200)
-       st.takeItems(THREAD,600)
-       st.takeItems(ADENA,200000)
-       st.set("cond","4")
-     else :
-       htmltext = "You don't have enough materials"
-   if event == "30164-1.htm" :
-     if st.getQuestItemsCount(ADENA) >= 300000 :
-       st.takeItems(ADENA,300000)
-       st.set("cond","5")
-     else :
-       htmltext = "You don't have enough materials"
-   if event == "30838-7.htm" :
-     st.giveItems(DRESS_SHOES_BOX,1)
-     st.playSound("ItemSound.quest_finish")
-     st.unset("cond")
-     st.exitQuest(False)
-   return htmltext
-
- def onTalk (self,npc,player):
-   htmltext = Quest.getNoQuestMsg(player)
-   st = player.getQuestState(qn)
-   if not st : return htmltext
-
-   npcId = npc.getNpcId()
-   id = st.getState()
-   cond = st.getInt("cond")
-   if id == State.COMPLETED:
-     htmltext = Quest.getAlreadyCompletedMsg(player)
-   elif npcId == 30838 and cond == 0 and st.getQuestItemsCount(DRESS_SHOES_BOX) == 0 :
-     fwear=player.getQuestState("37_PleaseMakeMeFormalWear")
-     if fwear :
-       if fwear.get("cond") == "7" :
-         htmltext = "30838-0.htm"
-       else:
-         st.exitQuest(1)
-     else:
-       st.exitQuest(1)
-   elif id == State.STARTED :    
-       if npcId == 31520 and cond == 1 :
-         htmltext = "31520-0.htm"
-       elif npcId == 30838 and cond == 2 :
-         htmltext = "30838-2.htm"
-       elif npcId == 30838 and cond == 3 :
-         htmltext = "30838-4.htm"
-       elif npcId == 30164 and cond == 4 :
-         htmltext = "30164-0.htm"
-       elif npcId == 30838 and cond == 5 :
-         htmltext = "30838-6.htm"
-   return htmltext
-
-QUEST       = Quest(33,qn,"Make A Pair Of Dress Shoes")
-
-
-QUEST.addStartNpc(30838)
-QUEST.addTalkId(30838)
-
-QUEST.addTalkId(30164)
-QUEST.addTalkId(31520)

+ 0 - 87
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/__init__.py

@@ -1,87 +0,0 @@
-# 2010-06-26 by Gnacik
-# Based on official server Franz
-
-import sys
-from com.l2jserver import Config
-from com.l2jserver.gameserver.model.quest import State
-from com.l2jserver.gameserver.model.quest import QuestState
-from com.l2jserver.gameserver.model.quest.jython import QuestJython as JQuest
-
-qn = "701_Proof_Of_Existence"
-
-# NPCs
-ARTIUS = 32559
-
-# ITEMS
-DEADMANS_REMAINS = 13875
-
-# MOBS
-MOBS = [22606,22607,22608,22609]
-
-# SETTINGS
-DROP_CHANCE = 80
-
-class Quest (JQuest) :
-	def __init__(self,id,name,descr):
-		JQuest.__init__(self,id,name,descr)
-		self.questItemIds = [DEADMANS_REMAINS]
-
-	def onAdvEvent(self, event, npc, player) :
-		htmltext = event
-		st = player.getQuestState(qn)
-		if not st : return
-
-		if event == "32559-03.htm" :
-			st.setState(State.STARTED)
-			st.set("cond","1")
-			st.playSound("ItemSound.quest_accept")
-		elif event == "32559-quit.htm" :
-			st.unset("cond")
-			st.exitQuest(True)
-			st.playSound("ItemSound.quest_finish")
-		return htmltext
-
-	def onTalk (self, npc, player) :
-		htmltext = Quest.getNoQuestMsg(player)
-		st = player.getQuestState(qn)
-		if not st : return htmltext
-
-		cond = st.getInt("cond")
-
-		if npc.getNpcId() == ARTIUS :
-			first = player.getQuestState("10273_GoodDayToFly")
-			if first and first.getState() == State.COMPLETED and st.getState() == State.CREATED and player.getLevel() >= 78 :
-				htmltext = "32559-01.htm"
-			elif cond == 1 :
-				itemcount = st.getQuestItemsCount(DEADMANS_REMAINS)
-				if itemcount > 0 :
-					st.takeItems(DEADMANS_REMAINS, -1)
-					st.rewardItems(57,itemcount * 2500)
-					st.playSound("ItemSound.quest_itemget")
-					htmltext = "32559-06.htm"
-				else :
-					htmltext = "32559-04.htm"
-			elif cond == 0 :
-				htmltext = "32559-00.htm"
-		return htmltext
-
-	def onKill(self, npc, player, isPet) :
-		st = player.getQuestState(qn)
-		if not st : return
-
-		if st.getInt("cond") == 1 and npc.getNpcId() in MOBS :
-			numItems, chance = divmod(DROP_CHANCE * Config.RATE_QUEST_DROP,100)
-			if self.getRandom(100) < chance :
-				numItems += 1
-			if numItems :
-				st.giveItems(DEADMANS_REMAINS,1)
-				st.playSound("ItemSound.quest_itemget")
-		return
-
-QUEST	= Quest(701,qn,"Proof of Existence")
-
-QUEST.addStartNpc(ARTIUS)
-QUEST.addTalkId(ARTIUS)
-
-for i in MOBS :
-	QUEST.addKillId(i)

+ 5 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-01.html

@@ -0,0 +1,5 @@
+<html><body>Trader Ian:<br>
+Come in! What can I do for you?<br>
+Ah yes, a payment from Woodley! That's 300,000 Adena, right?<br>
+<a action="bypass -h Quest Q00033_MakeAPairOfDressShoes 30164-02.html">"Here it is."</a>
+</body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-02.html

@@ -0,0 +1,3 @@
+<html><body>Trader Ian:<br>
+Humph! Only 300,000 Adena for the excellent item I made for him? I suppose I'll accept it this time! Tell Mr. Woodley that his balance is paid off, but next time, I'll have to charge a late fee!
+</body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-03.html

@@ -0,0 +1,3 @@
+<html><body>Trader Ian:<br>
+So, Mr. Woodley sent you? Where is his payment? Did you drop it by any chance? Please check your pockets!
+</body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30164-04.html

@@ -0,0 +1,3 @@
+<html><body>Trader Ian:<br>
+You haven't seen Mr. Woodley?  When you do, tell him that I'll accept his payment this time, but next time he's late, I'll charge him a late fee.
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-0.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-01.htm

@@ -1,5 +1,5 @@
 <html><body>Trader Woodley:<br>
 Welcome. What can I do for you? Looking for formal shoes?<br>
 If you want the shoes to match the order you placed with Leikar, I need some of the same material. Bring it, then I can start.<br>
-<a action="bypass -h Quest 33_MakeAPairOfDressShoes 30838-1.htm">Quest</a>
+<a action="bypass -h Quest Q00033_MakeAPairOfDressShoes 30838-03.htm">Quest</a>
 </body></html>

+ 4 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-02.html

@@ -0,0 +1,4 @@
+<html><body>Trader Woodley:<br>
+Welcome. What can I do for you? Looking for formal shoes? Come back when you have enough class to shop here!<br>
+(This quest may only be undertaken by a character of level 60 or above.)
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-1.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-03.htm

@@ -1,3 +1,3 @@
 <html><body>Trader Woodley:<br>
-If you get some of the same material from your order with Leikar, I can make you shoes to match
+If you get some of the same material from your order with Leikar, I can make you shoes to match.
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-04.html

@@ -0,0 +1,3 @@
+<html><body>Trader Woodley:<br>
+Welcome. If you get some of the same material from your order with Leikar, I can make you shoes to match.
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-2.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-05.html

@@ -1,5 +1,5 @@
 <html><body>Trader Woodley:<br>
 Leikar's short on fabric?<br>
 It's hard to make something using the color but not the fabric. Can you help?<br>
-<a action="bypass -h Quest 33_MakeAPairOfDressShoes 30838-3.htm">I'll try.</a>
+<a action="bypass -h Quest Q00033_MakeAPairOfDressShoes 30838-06.html">"I'll try."</a>
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-06.html

@@ -0,0 +1,3 @@
+<html><body>Trader Woodley:<br>
+I need 200 leather and 600 thread for the shoes. You also have to pay for them. It's about five hundred thousand Adena. Don't forget!
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-4.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-07.html

@@ -1,4 +1,4 @@
 <html><body>Trader Woodley:<br>
 You brought it all! Give me two hundred thousand Adena and we'll call it good.<br>
-<a action="bypass -h Quest 33_MakeAPairOfDressShoes 30838-5.htm">Here's the money and the goods.</a>
+<a action="bypass -h Quest Q00033_MakeAPairOfDressShoes 30838-09.html">"Here's the money and the goods."</a>
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-08.html

@@ -0,0 +1,3 @@
+<html><body>Trader Woodley:<br>
+Look like you don't have all the materials. I know that they are not something that ordinary people should expect to obtain, but you're not exactly an ordinary person, eh? Please go get them for me.
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-5.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-09.html

@@ -1,3 +1,3 @@
 <html><body>Trader Woodley:<br>
-This will take a while to make. Deliver three hundred thousand adena to Trader Ian for the materials.
+This will take a while to make. Deliver three hundred thousand Adena to Trader Ian for the materials.
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-10.html

@@ -0,0 +1,3 @@
+<hrml><body>Trader Woodley:<br>
+I know these materials are hard to get now, but hurry!
+</body></hrml>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-11.html

@@ -0,0 +1,3 @@
+<html><body>Trader Woodley:<br>
+I'm still working on the shoes. Did you deliver three hundred thousand Adena to Ian?
+</body></html>

+ 5 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-12.html

@@ -0,0 +1,5 @@
+<html><body>Trader Woodley:<br>
+What did Ian say?<br>
+I'll respect his requests.<br>
+<a action="bypass -h Quest Q00033_MakeAPairOfDressShoes 30838-13.html">"Can I have the shoes?"</a>
+</body></html>

+ 0 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/30838-7.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/30838-13.html


+ 4 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/31520-01.html

@@ -0,0 +1,4 @@
+<html><body>Leikar:<br>
+Have you already been to Mr. Woodley? Even Mr. Woodley couldn't have made a pair of formal dress shoes so quickly! Did something happen that I need to know about?<br>
+<a action="bypass -h Quest Q00033_MakeAPairOfDressShoes 31520-02.html">"I need the materials for the Formal Wear."</a>
+</body></html>

+ 1 - 1
L2J_DataPack_BETA/dist/game/data/scripts/quests/33_MakeAPairOfDressShoes/31520-1.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/31520-02.html

@@ -1,3 +1,3 @@
 <html><body>Leikar:<br>
-Oh! We need the fabric for the formal wear so that we can match the color of the shoes. Tell Mr. Woodley that I don't have any fabric to give him now and he should use his best judgement regarding the shoes. Tell him to make them the same as before, he'll understand.
+Oh! We need the fabric for the Formal Wear so that we can match the color of the shoes. Tell Mr. Woodley that I don't have any fabric to give him now and he should use his best judgement regarding the shoes. Tell him to make them the same as before, he'll understand.
 </body></html>

+ 3 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/31520-03.html

@@ -0,0 +1,3 @@
+<html><body>Leikar:<br>
+You haven't left yet? I can't get new fabric... Tell Mr. Woodley to use the same color as before for the shoes.
+</body></html>

+ 187 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00033_MakeAPairOfDressShoes/Q00033_MakeAPairOfDressShoes.java

@@ -0,0 +1,187 @@
+/*
+ * Copyright (C) 2004-2013 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.Q00033_MakeAPairOfDressShoes;
+
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.itemcontainer.PcInventory;
+import com.l2jserver.gameserver.model.quest.Quest;
+import com.l2jserver.gameserver.model.quest.QuestState;
+import com.l2jserver.gameserver.model.quest.State;
+
+/**
+ * Make a Pair of Dress Shoes (33)
+ * @author malyelfik
+ */
+public class Q00033_MakeAPairOfDressShoes extends Quest
+{
+	// NPCs
+	private static final int IAN = 30164;
+	private static final int WOODLEY = 30838;
+	private static final int LEIKAR = 31520;
+	// Items
+	private static final int LEATHER = 1882;
+	private static final int THREAD = 1868;
+	private static final int DRESS_SHOES_BOX = 7113;
+	// Misc
+	private static final int MIN_LEVEL = 60;
+	private static final int LEATHER_COUNT = 200;
+	private static final int THREAD_COUNT = 600;
+	private static final int ADENA_COUNT = 500000;
+	private static final int ADENA_COUNT2 = 200000;
+	private static final int ADENA_COUNT3 = 300000;
+	
+	private Q00033_MakeAPairOfDressShoes(int questId, String name, String descr)
+	{
+		super(questId, name, descr);
+		addStartNpc(WOODLEY);
+		addTalkId(WOODLEY, IAN, LEIKAR);
+	}
+	
+	@Override
+	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+	{
+		final QuestState st = player.getQuestState(getName());
+		if (st == null)
+		{
+			return null;
+		}
+		
+		String htmltext = event;
+		switch (event)
+		{
+			case "30838-03.htm":
+				st.startQuest();
+				break;
+			case "30838-06.html":
+				st.setCond(3, true);
+				break;
+			case "30838-09.html":
+				if ((st.getQuestItemsCount(LEATHER) >= LEATHER_COUNT) && (st.getQuestItemsCount(THREAD) >= THREAD_COUNT) && (player.getAdena() >= ADENA_COUNT2))
+				{
+					st.takeItems(LEATHER, LEATHER_COUNT);
+					st.takeItems(THREAD, LEATHER_COUNT);
+					st.takeItems(PcInventory.ADENA_ID, ADENA_COUNT2);
+					st.setCond(4, true);
+				}
+				else
+				{
+					htmltext = "30838-10.html";
+				}
+				break;
+			case "30838-13.html":
+				st.giveItems(DRESS_SHOES_BOX, 1);
+				st.exitQuest(false, true);
+				break;
+			case "31520-02.html":
+				st.setCond(2, true);
+				break;
+			case "30164-02.html":
+				if (player.getAdena() < ADENA_COUNT3)
+				{
+					return "30164-03.html";
+				}
+				st.takeItems(PcInventory.ADENA_ID, ADENA_COUNT3);
+				st.setCond(5, true);
+				break;
+			default:
+				htmltext = null;
+				break;
+		}
+		return htmltext;
+	}
+	
+	@Override
+	public String onTalk(L2Npc npc, L2PcInstance player)
+	{
+		String htmltext = getNoQuestMsg(player);
+		final QuestState st = player.getQuestState(getName());
+		if (st == null)
+		{
+			return htmltext;
+		}
+		
+		switch (npc.getNpcId())
+		{
+			case WOODLEY:
+				switch (st.getState())
+				{
+					case State.CREATED:
+						htmltext = (player.getLevel() >= MIN_LEVEL) ? "30838-01.htm" : "30838-02.html";
+						break;
+					case State.STARTED:
+						switch (st.getCond())
+						{
+							case 1:
+								htmltext = "30838-04.html";
+								break;
+							case 2:
+								htmltext = "30838-05.html";
+								break;
+							case 3:
+								htmltext = ((st.getQuestItemsCount(LEATHER) >= LEATHER_COUNT) && (st.getQuestItemsCount(THREAD) >= THREAD_COUNT) && (player.getAdena() >= ADENA_COUNT)) ? "30838-07.html" : "30838-08.html";
+								break;
+							case 4:
+								htmltext = "30838-11.html";
+								break;
+							case 5:
+								htmltext = "30838-12.html";
+								break;
+						}
+						break;
+					case State.COMPLETED:
+						htmltext = getAlreadyCompletedMsg(player);
+						break;
+				}
+				break;
+			case LEIKAR:
+				if (st.isStarted())
+				{
+					if (st.isCond(1))
+					{
+						htmltext = "31520-01.html";
+					}
+					else if (st.isCond(2))
+					{
+						htmltext = "31520-03.html";
+					}
+				}
+				break;
+			case IAN:
+				if (st.isStarted())
+				{
+					if (st.isCond(4))
+					{
+						htmltext = "30164-01.html";
+					}
+					else if (st.isCond(5))
+					{
+						htmltext = "30164-04.html";
+					}
+				}
+				break;
+		}
+		return htmltext;
+	}
+	
+	public static void main(String[] args)
+	{
+		new Q00033_MakeAPairOfDressShoes(33, Q00033_MakeAPairOfDressShoes.class.getSimpleName(), "Make a Pair of Dress Shoes");
+	}
+}

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-01.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-01.htm

@@ -1,9 +1,5 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
+<html><body>War Mage Artius:<br>
 We've recently seen a drop in the morale of the soldiers of Gracia. There is a rumor that some soldiers who ventured near the Seed of Immotality saw <font color="LEVEL">something strange</font>. Perhaps it was a ghost or an evil spirit; some say they saw a beautiful woman. But when they approached it, it disappeared -- only to appear suddenly elsewhere and attack them! Now our soldiers are frightened to venture outside the Barrier Orb. Pitiful, isn't it?<br>
 Perhaps you could go out and determine the truth of these rumors. How about it? Will you help me?<br>
-<a action="bypass -h Quest 701_Proof_Of_Existence 32559-02.htm">"What should I do?"</a><br>
-</body>
-</html>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-03.htm">"What should I do?"</a>
+</body></html>

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-00.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-02.htm

@@ -1,9 +1,5 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
+<html><body>War Mage Artius:<br>
 We've recently seen a drop in the morale of the soldiers of Gracia. There is a rumor that some soldiers who ventured near the Seed of Immotality saw <font color="LEVEL">something strange</font>. Perhaps it was a ghost or an evil spirit; some say they saw a beautiful woman. But when they approached it, it disappeared -- only to appear suddenly elsewhere and attack them! Now our soldiers are frightened to venture outside the Barrier Orb. Pitiful, isn't it?<br>
 If you were a more experienced adventurer, perhaps you could go out and determine the truth of these rumors.<br>
-(Only characters who are level 78 and above and have completed the "Good Day for Flying" quest may undertake this quest.)<br>
-</body>
-</html>
+(Only characters who are level 78 and above and have completed the "Good Day for Flying" quest may undertake this quest.)
+</body></html>

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-02.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-03.htm

@@ -1,9 +1,5 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
+<html><body>War Mage Artius:<br>
 We think that what the soldiers saw might have been a monster called <font color="LEVEL">Banshee Queen Enira</font>. If so, that would be a dangerous enemy. In can create fear using <font color="LEVEL">Floating Zombies</font> and <font color="LEVEL">Floating Skulls</font>.<br>
 Still, experienced soldiers shouldn't be reduced to a gaggle of frightened children! If I weren't needed here to safeguard the Barrier Orb, I'd go deal with this myself. Since I can't go, I need a skilled adventurer. How about it? With your ability, I'm you can handle whatever you encounter out there.<br>
-<a action="bypass -h Quest 701_Proof_Of_Existence 32559-03.htm">Say yes.</a><br>
-</body>
-</html>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-04.htm">Say yes.</a>
+</body></html>

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-03.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-04.htm

@@ -1,8 +1,4 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
+<html><body>War Mage Artius:<br>
 Excellent!<br>
-Then go defeat <font color="LEVEL">Banshee Queen Enira</font> that lurks near the Seed of Infinity. You should also destroy the <font color="LEVEL">Floating Zombies and Floating Skulls</font> that always accompany this monster. As evidence of your victory, bring back the <font color="LEVEL">Banshee Queen's Eye</font> as well as <font color="LEVEL">Skeletal Remains</font> from the <font color="LEVEL">Floating Zombies and Floating Skulls</font>. I promise you that you will be rewarded for your help. But don't forget that these monsters only appear at night!<br>
-</body>
-</html>
+Then go defeat <font color="LEVEL">Banshee Queen Enira</font> that lurks near the Seed of Infinity. You should also destroy the <font color="LEVEL">Floating Zombies and Floating Skulls</font> that always accompany this monster. As evidence of your victory, bring back the <font color="LEVEL">Banshee Queen's Eye</font> as well as <font color="LEVEL">Skeletal Remains</font> from the <font color="LEVEL">Floating Zombies and Floating Skulls</font>. I promise you that you will be rewarded for your help. But don't forget that these monsters only appear at night!
+</body></html>

+ 4 - 8
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-04.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-05.html

@@ -1,9 +1,5 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
+<html><body>War Mage Artius:<br>
 You haven't left yet?! You promised to go destroy <font color="LEVEL">Banshee Queen Enira</font>. I'll also reward you for destroying the <font color="LEVEL">Floating Skulls and Floating Zombies</font>. Remember, you'll have to go at night. I can't believe an adventurer like you would have second thoughts about this mission!<br>
-<a action="bypass -h Quest 701_Proof_Of_Existence 32559-05.htm">"Not a problem. Leave it to me."</a><br>
-<a action="bypass -h Quest 701_Proof_Of_Existence 32559-quit.htm">"I have a bad feeling about this. Count me out."</a><br>
-</body>
-</html>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-08.html">"Not a problem. Leave it to me."</a><br>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-09.html">"I have a bad feeling about this. Count me out."</a>
+</body></html>

+ 4 - 8
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-06.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-06.html

@@ -1,9 +1,5 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
+<html><body>War Mage Artius:<br>
 Ah! You're back? What's this? You couldn't defeat that vile monster? That's unfortunate, but a promise is a promise. Here's a reward for your other efforts in this matter. But you're not giving up already, are you? Please destroy <font color="LEVEL">Banshee Queen Enira</font>! I'll also reward you for eliminating the <font color="LEVEL">Floating Skulls and Floating Zombies</font>. Just remember, you'll have to go at night. Are you ready?<br>
-<a action="bypass -h Quest 701_Proof_Of_Existence 32559-05.htm">"I'll try again."</a><br>
-<a action="bypass -h Quest 701_Proof_Of_Existence 32559-quit.htm">"I don't really feel like it. I think I'll quit."</a><br>
-</body>
-</html>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-08.html">"I'll try again."</a><br>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-09.html">"I don't really feel like it. I think I'll quit."</a>
+</body></html>

+ 5 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-07.html

@@ -0,0 +1,5 @@
+<html><body>War Mage Artius:<br>
+Oh! You've returned? Ah, you have the Banshee Queen's Eye! Thanks to this proof, I'm sure the soldiers will feel better about the whole situation. Thank you very much! Don't worry about the reward. I will give more for destroying the Floating Skulls and Floating Zombies. Can you also make sure that the <font color="LEVEL">Banshee Queen</font> hasn't reappeared? The power of the Seed of Infinity can resurrect even these creatures, making it necessary to destroy them several times. Any help you can give me will be much appreciated. Remember, you have to hunt them at night. You're not going to stop now, are you?<br>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-08.html">"I'll head back out."</a><br>
+<a action="bypass -h Quest Q00701_ProofOfExistence 32559-09.html">"That's all for me."</a>
+</body></html>

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-05.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-08.html

@@ -1,7 +1,3 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
-Thank you! I will give you a generous reward for the <font color="LEVEL">Banshee Queen's Eye</font> and the <font color="LEVEL">Deadman's Remains</font> you obtained in your hunting. Good luck!<br>
-</body>
-</html>
+<html><body>War Mage Artius:<br>
+Thank you! I will give you a generous reward for the <font color="LEVEL">Banshee Queen's Eye</font> and the <font color="LEVEL">Deadman's Remains</font> you obtained in your hunting. Good luck!
+</body></html>

+ 3 - 7
L2J_DataPack_BETA/dist/game/data/scripts/quests/701_Proof_Of_Existence/32559-quit.htm → L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/32559-09.html

@@ -1,7 +1,3 @@
-<html>
-<head>
-<body>
-War Mage Artius:<br>
-I'm sorry to hear that, but I suppose there's nothing I can say to change your mind. You must have your reasons. Well, good luck to you.<br>
-</body>
-</html>
+<html><body>War Mage Artius:<br>
+I'm sorry to hear that, but I suppose there's nothing I can say to change your mind. You must have your reasons. Well, good luck to you.
+</body></html>

+ 182 - 0
L2J_DataPack_BETA/dist/game/data/scripts/quests/Q00701_ProofOfExistence/Q00701_ProofOfExistence.java

@@ -0,0 +1,182 @@
+/*
+ * Copyright (C) 2004-2013 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.Q00701_ProofOfExistence;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import quests.Q10273_GoodDayToFly.Q10273_GoodDayToFly;
+
+import com.l2jserver.gameserver.model.actor.L2Npc;
+import com.l2jserver.gameserver.model.actor.instance.L2PcInstance;
+import com.l2jserver.gameserver.model.quest.Quest;
+import com.l2jserver.gameserver.model.quest.QuestState;
+import com.l2jserver.gameserver.model.quest.State;
+
+/**
+ * Proof of Existence (701)
+ * @author malyelfik
+ */
+public class Q00701_ProofOfExistence extends Quest
+{
+	// NPC
+	private static final int ARTIUS = 32559;
+	// Items
+	private static final int DEADMANS_REMAINS = 13875;
+	private static final int BANSHEE_QUEENS_EYE = 13876;
+	// Monsters
+	private static final int ENIRA = 25625;
+	private static final Map<Integer, Integer> MOBS = new HashMap<>();
+	static
+	{
+		MOBS.put(22606, 518); // Floating Skull
+		MOBS.put(22607, 858); // Floating Skull
+		MOBS.put(22608, 482); // Floating Zombie
+		MOBS.put(22609, 466); // Floating Zombie
+		MOBS.put(25629, 735); // Floating Skull (Enira's Evil Spirit)
+		MOBS.put(25630, 391); // Floating Zombie (Enira's Evil Spirit)
+	}
+	// Misc
+	private static final int MIN_LEVEL = 78;
+	
+	private Q00701_ProofOfExistence(int questId, String name, String descr)
+	{
+		super(questId, name, descr);
+		addStartNpc(ARTIUS);
+		addTalkId(ARTIUS);
+		addKillId(MOBS.keySet());
+		addKillId(ENIRA);
+		registerQuestItems(DEADMANS_REMAINS, BANSHEE_QUEENS_EYE);
+	}
+	
+	@Override
+	public String onAdvEvent(String event, L2Npc npc, L2PcInstance player)
+	{
+		final QuestState st = player.getQuestState(getName());
+		if (st == null)
+		{
+			return null;
+		}
+		String htmltext = event;
+		switch (event)
+		{
+			case "32559-03.htm":
+			case "32559-08.html":
+				break;
+			case "32559-04.htm":
+				st.startQuest();
+				break;
+			case "32559-09.html":
+				st.exitQuest(true, true);
+				break;
+			default:
+				htmltext = null;
+				break;
+		}
+		return htmltext;
+	}
+	
+	@Override
+	public String onKill(L2Npc npc, L2PcInstance player, boolean isPet)
+	{
+		final L2PcInstance member = getRandomPartyMember(player, 1);
+		if (member == null)
+		{
+			return super.onKill(npc, player, isPet);
+		}
+		final QuestState st = member.getQuestState(getName());
+		if (npc.getNpcId() == ENIRA)
+		{
+			final int chance = getRandom(1000);
+			final int count;
+			if (chance < 708)
+			{
+				count = getRandom(2) + 1;
+			}
+			else if (chance < 978)
+			{
+				count = getRandom(3) + 3;
+			}
+			else if (chance < 994)
+			{
+				count = getRandom(4) + 6;
+			}
+			else if (chance < 998)
+			{
+				count = getRandom(4) + 10;
+			}
+			else
+			{
+				count = getRandom(5) + 14;
+			}
+			st.giveItems(BANSHEE_QUEENS_EYE, count);
+			st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
+		}
+		else if (getRandom(1000) < MOBS.get(npc.getNpcId()))
+		{
+			st.giveItems(DEADMANS_REMAINS, 1);
+			st.playSound(QuestSound.ITEMSOUND_QUEST_ITEMGET);
+		}
+		return super.onKill(npc, player, isPet);
+	}
+	
+	@Override
+	public String onTalk(L2Npc npc, L2PcInstance player)
+	{
+		String htmltext = getNoQuestMsg(player);
+		final QuestState st = player.getQuestState(getName());
+		if (st == null)
+		{
+			return htmltext;
+		}
+		
+		switch (st.getState())
+		{
+			case State.CREATED:
+				final QuestState qs = player.getQuestState(Q10273_GoodDayToFly.class.getSimpleName());
+				htmltext = ((player.getLevel() >= MIN_LEVEL) && (qs != null) && qs.isCompleted()) ? "32559-01.htm" : "32559-02.htm";
+				break;
+			case State.STARTED:
+				if (st.hasQuestItems(BANSHEE_QUEENS_EYE))
+				{
+					st.giveAdena((st.getQuestItemsCount(DEADMANS_REMAINS) * 2500) + (st.getQuestItemsCount(BANSHEE_QUEENS_EYE) * 50000) + 23835, true);
+					st.takeItems(BANSHEE_QUEENS_EYE, -1);
+					st.takeItems(DEADMANS_REMAINS, -1);
+					htmltext = "32559-07.html";
+				}
+				else if (st.hasQuestItems(DEADMANS_REMAINS))
+				{
+					st.giveAdena(st.getQuestItemsCount(DEADMANS_REMAINS) * 2500, true);
+					st.takeItems(DEADMANS_REMAINS, -1);
+					htmltext = "32559-06.html";
+				}
+				else
+				{
+					htmltext = "32559-05.html";
+				}
+				break;
+		}
+		return htmltext;
+	}
+	
+	public static void main(String[] args)
+	{
+		new Q00701_ProofOfExistence(701, Q00701_ProofOfExistence.class.getSimpleName(), "Proof of Existence");
+	}
+}

+ 2 - 0
L2J_DataPack_BETA/dist/sql/game/updates/20130210update.sql

@@ -0,0 +1,2 @@
+UPDATE character_quests SET name='Q00033_MakeAPairOfDressShoes' WHERE name='33_MakeAPairOfDressShoes';
+UPDATE character_quests SET name='Q00701_ProofOfExistence' WHERE name='701_Proof_Of_Existence';