[Release]DisCity NPCs (5165)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [Release]DisCity NPCs (5165)

      first lets define our variables

      in Character.cs search for:

      Quellcode

      1. public Nobility Nobility;


      then add these under it:

      Quellcode

      1. public bool DisCityON = false;
      2. public int DisCityMobs = 0;


      now on to the npc's

      SolarSaint:

      Quellcode

      1. #region SolarSaint
      2. case 3233:
      3. {
      4. if (Control == 0)
      5. {
      6. GC.AddSend(Packets.NPCSay("Our ancestor exerted their utmost efforts and defeated the demons. Since"));
      7. GC.AddSend(Packets.NPCSay("then the world has been kept in peace forhundreds of years. Now the"));
      8. GC.AddSend(Packets.NPCSay("demons have come back and the world is getting into turbulence again."));
      9. GC.AddSend(Packets.NPCLink("Could you tell me more?", 3));
      10. GC.AddSend(Packets.NPCLink("I am here to drive away the evils", 1));
      11. GC.AddSend(Packets.NPCLink("I'd better leave", 255));
      12. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      13. GC.AddSend(Packets.NPCFinish());
      14. }
      15. if (Control == 1)
      16. {
      17. if (GC.MyChar.DisCityON == false)
      18. {
      19. GC.AddSend(Packets.NPCSay("I'm glad to see that you are such a knightly person. Please come next time."));
      20. GC.AddSend(Packets.NPCLink("Ok.", 2));
      21. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      22. GC.AddSend(Packets.NPCFinish());
      23. }
      24. else if (GC.MyChar.DisCityON == true)
      25. {
      26. if (GC.MyChar.Level >= 110)
      27. {
      28. GC.MyChar.Teleport(2021, 291, 475);
      29. }
      30. else
      31. {
      32. GC.AddSend(Packets.NPCSay("Sorry, you are to week to fight thoose monsters, go get level 110 and talk to me latter"));
      33. GC.AddSend(Packets.NPCLink("Okay, I will!", 255));
      34. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      35. GC.AddSend(Packets.NPCFinish());
      36. }
      37. }
      38. }
      39. if (Control == 2)
      40. {
      41. Game.World.SendMsgToAll("SYSTEM", "Find SolarSaint to take the quest from 20:00 to 20:05 every Mon and Wed, from 12:00 to 12:05 every Tues and Thur", 2011, 0);
      42. Game.World.SendMsgToAll("SYSTEM", "You may get Exp. of half of ExpBall as reward as long as you enter the Dis City", 2011, 0);
      43. }
      44. if (Control == 3)
      45. {
      46. GC.AddSend(Packets.NPCSay("The decisive battle between human and demon broke out here. The"));
      47. GC.AddSend(Packets.NPCSay("ferocious battle lasted for seven days andnights. Countless heroes lost their"));
      48. GC.AddSend(Packets.NPCSay("lives. And the justise won. Afterwards we can live in peace for hundreds of"));
      49. GC.AddSend(Packets.NPCSay("years."));
      50. GC.AddSend(Packets.NPCLink("And then?", 4));
      51. GC.AddSend(Packets.NPCLink("Sounds great", 255));
      52. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      53. GC.AddSend(Packets.NPCFinish());
      54. }
      55. if (Control == 4)
      56. {
      57. GC.AddSend(Packets.NPCSay("UltimatePluto, leader of the demons sworn to take revenge in one thousand"));
      58. GC.AddSend(Packets.NPCSay("years before he managed to run away. Toprevent the demons coming back, I"));
      59. GC.AddSend(Packets.NPCSay("have been scouting their land cautiously. Yesterday I found something"));
      60. GC.AddSend(Packets.NPCSay("unwanted.It seems that Ultimate Pluto has come round to endanger humas"));
      61. GC.AddSend(Packets.NPCSay("again."));
      62. GC.AddSend(Packets.NPCLink("What should we do?", 5));
      63. GC.AddSend(Packets.NPCLink("Kool", 255));
      64. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      65. GC.AddSend(Packets.NPCFinish());
      66. }
      67. if (Control == 5)
      68. {
      69. GC.AddSend(Packets.NPCSay("Fortunately UltimatePluto is still unfledged. He must resort to a Battle"));
      70. GC.AddSend(Packets.NPCSay("Formation for the moment. So I am about to organize an army too infiltrate his"));
      71. GC.AddSend(Packets.NPCSay("land and destroy his formation before he becomes stronger."));
      72. GC.AddSend(Packets.NPCLink("I'll join in you", 1));
      73. GC.AddSend(Packets.NPCLink("I'd like to know more", 6));
      74. GC.AddSend(Packets.NPCLink("Sigh, I'm helpless.", 255));
      75. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      76. GC.AddSend(Packets.NPCFinish());
      77. }
      78. if (Control == 6)
      79. {
      80. GC.AddSend(Packets.NPCSay("You must kill UltimatePluto rapidly to get DarkHorn so that I can use it to"));
      81. GC.AddSend(Packets.NPCSay("disable the formation. Before you can do that, you must break into HellGate,"));
      82. GC.AddSend(Packets.NPCSay("enter the HellHall, and fight through the HellCloster. Countless ferocious"));
      83. GC.AddSend(Packets.NPCSay("demonsare watching those strongholds. I'll give you some strategies on"));
      84. GC.AddSend(Packets.NPCSay("breaking through those fortresses if you like."));
      85. GC.AddSend(Packets.NPCLink("I want to know HellGate.", 7));
      86. GC.AddSend(Packets.NPCLink("I want to know HellHall", 8));
      87. GC.AddSend(Packets.NPCLink("I want to know HellCloister", 9));
      88. GC.AddSend(Packets.NPCLink("I want to know BattleFormation", 10));
      89. GC.AddSend(Packets.NPCLink("Thanks. I know how to do", 255));
      90. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      91. GC.AddSend(Packets.NPCFinish());
      92. }
      93. if (Control == 7)
      94. {
      95. GC.AddSend(Packets.NPCSay("HellGate is shielded from poisonous fog, so you can't approach it. But"));
      96. GC.AddSend(Packets.NPCSay("demons do not fear the gas. They may turninto SoulStones after they die. If"));
      97. GC.AddSend(Packets.NPCSay("you get five stones for me, I'll help you break through the gate. To protect"));
      98. GC.AddSend(Packets.NPCSay("the unrelated persons, I'll send the others back as soon as the first 60"));
      99. GC.AddSend(Packets.NPCSay("persons pass through the gate"));
      100. GC.AddSend(Packets.NPCLink("I'd like to know more!", 6));
      101. GC.AddSend(Packets.NPCLink("Thank you", 255));
      102. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      103. GC.AddSend(Packets.NPCFinish());
      104. }
      105. if (Control == 8)
      106. {
      107. GC.AddSend(Packets.NPCSay("HellHall is the very spot where the demons swear their oaths of allegiance to"));
      108. GC.AddSend(Packets.NPCSay("UltimatePluto. Everybody must do his best to make a way out. Due to limited"));
      109. GC.AddSend(Packets.NPCSay("time, I can lead only 30 persons to HellCloister"));
      110. GC.AddSend(Packets.NPCLink("I'd like to know more!", 6));
      111. GC.AddSend(Packets.NPCLink("Thank You", 255));
      112. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      113. GC.AddSend(Packets.NPCFinish());
      114. }
      115. if (Control == 9)
      116. {
      117. GC.AddSend(Packets.NPCSay("You will be divided into two groups to attack from the left and the right flank of"));
      118. GC.AddSend(Packets.NPCSay("HellCloister. Kill the Wraithas many as you can, because you can't reach"));
      119. GC.AddSend(Packets.NPCSay("BattleFormation until the amount of Wraith is decreased to a certain level."));
      120. GC.AddSend(Packets.NPCLink("I'd like to know more!", 6));
      121. GC.AddSend(Packets.NPCLink("Thank You", 255));
      122. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      123. GC.AddSend(Packets.NPCFinish());
      124. }
      125. if (Control == 10)
      126. {
      127. GC.AddSend(Packets.NPCSay("BattleFormation is protected by Syrens. After they are killed out"));
      128. GC.AddSend(Packets.NPCSay("UltimatePluto will appear. Make the besteffort to kill him, get his DarkHorn"));
      129. GC.AddSend(Packets.NPCSay("and give it to me. I can disable the BattleFormation with it. Then I'll sendyou"));
      130. GC.AddSend(Packets.NPCSay("back. But if you fails to do it, we have to retreat and wait for another opportunity"));
      131. GC.AddSend(Packets.NPCLink("I'd like to know more!", 6));
      132. GC.AddSend(Packets.NPCLink("Thank You", 255));
      133. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      134. GC.AddSend(Packets.NPCFinish());
      135. }
      136. break;
      137. }
      138. #endregion
      139. #region Stage 1
      140. case 3298:
      141. {
      142. int NPlayer = 0;
      143. if (Control == 0)
      144. {
      145. GC.AddSend(Packets.NPCSay("With these SoulStones I can help you enter the HellGate shielded from poisonous fogs. Are you ready?"));
      146. GC.AddSend(Packets.NPCLink("I'm ready", 1));
      147. GC.AddSend(Packets.NPCLink("Wait a moment", 255));
      148. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      149. GC.AddSend(Packets.NPCFinish());
      150. }
      151. if (Control == 1)
      152. {
      153. if (GC.MyChar.InventoryContains(723085, 5))
      154. {
      155. GC.MyChar.Teleport(2022, 220, 340);
      156. GC.MyChar.RemoveItem(GC.MyChar.NextItem(723085));
      157. GC.MyChar.RemoveItem(GC.MyChar.NextItem(723085));
      158. GC.MyChar.RemoveItem(GC.MyChar.NextItem(723085));
      159. GC.MyChar.RemoveItem(GC.MyChar.NextItem(723085));
      160. NPlayer += 1;
      161. Game.World.SendMsgToAll("SYSTEM", GC.MyChar.Name + "has through the HellGate and have entered in the HellHall!", 2011, 0);
      162. }
      163. else if (NPlayer >= 1)
      164. {
      165. GC.MyChar.Teleport(2022, 220, 340);
      166. GC.MyChar.RemoveItem(GC.MyChar.NextItem(700011));
      167. GC.MyChar.RemoveItem(GC.MyChar.NextItem(700011));
      168. GC.MyChar.RemoveItem(GC.MyChar.NextItem(700011));
      169. GC.MyChar.RemoveItem(GC.MyChar.NextItem(700011));
      170. GC.MyChar.RemoveItem(GC.MyChar.NextItem(700011));
      171. NPlayer += 1;
      172. }
      173. else
      174. {
      175. GC.AddSend(Packets.NPCSay("Sorry you don't have 5 SoulStones"));
      176. GC.AddSend(Packets.NPCLink("Oh sorrry, will got them!", 255));
      177. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      178. GC.AddSend(Packets.NPCFinish());
      179. }
      180. }
      181. break;
      182. }
      183. #endregion
      184. #region Stage 2
      185. case 3299:
      186. {
      187. int NPlayer2 = 0;
      188. if (Control == 0)
      189. {
      190. if (GC.MyChar.DisCityMobs <= 1301)
      191. {
      192. GC.AddSend(Packets.NPCSay("You'll pass if you kill 1300 monsters in HellHall. Hurry up! Only 30 persons can geet to HellCloister with me."));
      193. GC.AddSend(Packets.NPCLink("I see", 255));
      194. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      195. GC.AddSend(Packets.NPCFinish());
      196. }
      197. if (GC.MyChar.DisCityMobs == 1300)
      198. {
      199. GC.AddSend(Packets.NPCSay("You've killed the 1300 monsters, and you can pass to the HellCloister. Hurry up!"));
      200. GC.AddSend(Packets.NPCLink("YAY", 1));
      201. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      202. GC.AddSend(Packets.NPCFinish());
      203. }
      204. }
      205. if (Control == 1)
      206. {
      207. if (NPlayer2 <= 30)
      208. {
      209. GC.MyChar.Teleport(2023, 297, 649);
      210. NPlayer2 += 1;
      211. Game.World.SendMsgToAll("SYSTEM", GC.MyChar.Name + " has passed through the HellHall and has entered into the HellCloister!", 2011, 0);
      212. }
      213. if (NPlayer2 > 30)
      214. {
      215. GC.AddSend(Packets.NPCSay("sorry but only 30 people may enter this stage better luck next time"));
      216. GC.AddSend(Packets.NPCLink("ok", 255));
      217. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      218. GC.AddSend(Packets.NPCFinish());
      219. }
      220. }
      221. break;
      222. }
      223. #endregion
      224. #region Stage 3
      225. case 3300:
      226. {
      227. int NPlayer2 = 0;
      228. if (Control == 0)
      229. {
      230. GC.AddSend(Packets.NPCSay("Hello! if have more than 10 players in the HellCloister i can send all of them to the UltimatePluto's place!"));
      231. GC.AddSend(Packets.NPCLink("We are here!", 1));
      232. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      233. GC.AddSend(Packets.NPCFinish());
      234. }
      235. if (Control == 1)
      236. {
      237. if (NPlayer2 == 30)
      238. {
      239. GC.MyChar.Teleport(2024, 151, 284);
      240. Game.World.SendMsgToAll("SYSTEM", GC.MyChar.Name + " has passed through the HellCloister and Advanced to the last stage, and is going kill UltimatePluto! Hurry up all!", 2011, 0);
      241. }
      242. else
      243. {
      244. GC.AddSend(Packets.NPCSay("Sorry you do not have 30 players yet!"));
      245. GC.AddSend(Packets.NPCLink("Oh, i will wait", 1));
      246. GC.AddSend(Packets.NPCSetFace(N.Avatar));
      247. GC.AddSend(Packets.NPCFinish());
      248. }
      249. }
      250. break;
      251. }
      252. #endregion
      Alles anzeigen


      for the commands add this:

      Quellcode

      1. if (Cmd[0] == "/dison")
      2. {
      3. foreach (Game.Character C in Game.World.H_Chars.Values)
      4. {
      5. if (GC.MyChar.DisCityON)
      6. Game.World.SendMsgToAll("SYSTEM", "The Dis City quest has been started! Run to ApeMountain and find SolarSaint(530,482)!", 2011, 0);
      7. }
      8. }
      9. if (Cmd[0] == "/disoff")
      10. {
      11. foreach (Game.Character C in Game.World.H_Chars.Values)
      12. {
      13. if (!GC.MyChar.DisCityON)
      14. Game.World.SendMsgToAll("SYSTEM", "The entrance of Dis City quest now is blocked! Who don't get in try your luck next time!", 2011, 0);
      15. }
      16. }
      Alles anzeigen


      in npc.txt at the very bottom add these

      3298 8350 2 0 2021 011 253
      3299 8350 2 0 2022 056 156
      3300 8350 2 0 2023 255 565


      i doubt there in the right spots but i've never done dis so i have no idea where they should be if u want you can just change the npc's to where u want them

      i'm working on the mob spawns and the spawning of ultimate pluto but its gonna take me some time.

      credits to 12tails from Epvp for his discity release for coemu
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )