Advertisement
xabugaspt

Untitled

Jun 17th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.79 KB | None | 0 0
  1. quest dragon_soul begin
  2. state start begin
  3. when levelup or letter with pc.level >= 30 begin
  4. send_letter(gameforge.dragon_soul._1010_sendLetter)
  5. local v = find_npc_by_vnum(20001)
  6.  
  7. if 0 != v then
  8. target.vid("__TARGET__", v, mob_name(20001))
  9. end
  10. end
  11. when info or button begin
  12. say(gameforge.dragon_soul._1020_say)
  13. end
  14.  
  15. when 20001.chat.gameforge.dragon_soul._1030_npcChat with pc.level >= 30 begin
  16. target.delete("__TARGET__")
  17.  
  18. say_title(mob_name(20001))
  19. say(gameforge.dragon_soul._1040_say)
  20. set_state(state_learning)
  21. end
  22. end
  23. state state_learning begin
  24. when letter begin
  25. send_letter(gameforge.dragon_soul._1050_sendLetter)
  26. end
  27. when info or button begin
  28. say(gameforge.dragon_soul._1060_say)
  29. end
  30. when kill begin
  31. if npc.is_pc() then
  32. return
  33. end
  34. local limit = level+1 then
  35. if pc.count_item(30270) < 10 then
  36. local random_number = math.random(1 , 1)
  37. if random_number == 1 then
  38. game.drop_item_with_ownership(30270)
  39. end
  40. end
  41. when 20001.chat.gameforge.dragon_soul._1050_sendLetter begin
  42. say_title(mob_name(20001))
  43. if pc.count_item(30270) >= 10 then
  44. say(gameforge.dragon_soul._1070_say)
  45. pc.remove_item(30270, 10)
  46. ds.give_qualification()
  47. char_log(pc.get_player_id(), 'DS_QUALIFICATION', 'SUCCESS')
  48. pc.give_item2(50255)
  49. local today = math.floor(get_global_time() / 18000)
  50. pc.setf("dragon_soul", "eye_timestamp", today)
  51. pc.setf("dragon_soul", "eye_left", 9)
  52. set_state(state_farming)
  53. else
  54. say(gameforge.dragon_soul._1080_say)
  55. end
  56. end
  57. state state_farming begin
  58. when letter begin
  59. send_letter(gameforge.dragon_soul._1090_sendLetter)
  60. end
  61. when info or button begin
  62. say(string.format(gameforge.dragon_soul._1100_say, pc.getf("dragon_soul", "eye_left")))
  63. end
  64. when kill begin
  65. if npc.is_pc() then
  66. return
  67. end
  68.  
  69. local eye_left = pc.getf("dragon_soul", "eye_left")
  70. local haved_gemstone_number = pc.count_item(30270)
  71. local limit = level+11 then
  72. if eye_left > haved_gemstone_number / 10 then
  73. local random_number = math.random(1 , 1)
  74. if random_number == 1 then
  75. game.drop_item_with_ownership(30270)
  76. end
  77. end
  78. end
  79. end
  80. when 30270.pick begin
  81. local eye_left = pc.getf("dragon_soul", "eye_left")
  82. if eye_left <= 0 then
  83. return
  84. end
  85. if pc.count_item(30270) >= 10 then
  86. pc.setf("dragon_soul", "eye_left", eye_left - 1)
  87. pc.remove_item(30270, 10)
  88. pc.give_item2(50255)
  89. if 1 == eye_left then
  90. notice_multiline(gameforge.dragon_soul._1110_notice, notice)
  91. set_state(state_closed_season)
  92. end
  93. end
  94. end
  95. when 20001.chat.gameforge.dragon_soul._1120_npcChat begin
  96. say_title(mob_name(20001))
  97. local today = math.floor(get_global_time() / 18000)
  98. if today == pc.getf("dragon_soul", "eye_timestamp") then
  99. say(gameforge.dragon_soul._1130_say)
  100. else
  101. say(gameforge.dragon_soul._1140_say)
  102. pc.setf("dragon_soul", "eye_timestamp", today)
  103. pc.setf("dragon_soul", "eye_left", 10)
  104. end
  105. end
  106. state state_closed_season begin
  107. when letter begin
  108. send_letter(gameforge.dragon_soul._1150_sendLetter)
  109. end
  110. when info or button begin
  111. say(gameforge.dragon_soul._1160_say)
  112. local today = math.floor(get_global_time() / 18000)
  113. if today == pc.getf("dragon_soul", "eye_timestamp") then
  114. say(gameforge.dragon_soul._1170_say)
  115. else
  116. say(gameforge.dragon_soul._1180_say)
  117. end
  118. end
  119. when 20001.chat.gameforge.dragon_soul._1090_sendLetter begin
  120. say_title(mob_name(20001))
  121. local today = math.floor(get_global_time() / 18000)
  122. if today == pc.getf("dragon_soul", "eye_timestamp") then
  123. say(gameforge.dragon_soul._1130_say)
  124. else
  125. say(gameforge.dragon_soul._1140_say)
  126. pc.setf("dragon_soul", "eye_timestamp", today)
  127. pc.setf("dragon_soul", "eye_left", 10)
  128. set_state(state_farming)
  129. end
  130. end
  131. end
  132. -- deprecated states. so, jump to new state.
  133. state state_1 begin
  134. when login begin
  135. set_state(state_learning)
  136. end
  137. end
  138. state state_2 begin
  139. when login begin
  140. set_state(state_learning)
  141. end
  142. end
  143. state state_3 begin
  144. when login begin
  145. set_state(state_closed_season)
  146. end
  147. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement