Advertisement
Guest User

Untitled

a guest
Mar 20th, 2020
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.36 KB | None | 0 0
  1.  
  2. set_compiler_opt base_event_type(@NTYPE_NPC_EVENT)
  3.  
  4. class transform_teacher : citizen {
  5. parameter:
  6. string fnHi1 = "";
  7. string fnHi2 = "";
  8. int quest_num = -1;
  9. int flag_subjob_start = 10255;
  10. int flag_subjob_end = 10266;
  11. int fee_delete_subjob = 10000000;
  12. int skill_acquire = 4;
  13. int multisell = -1;
  14. int skill_acquire2 = 5;
  15. int skill_book_id1 = 0;
  16. int skill_book_id15 = 0;
  17. int skill_book_id16 = 10612;
  18. string fnHi3 = "master_transformation008.htm";
  19. string fnHi4 = "master_transformation008.htm";
  20. string fnHi5 = "master_transformation007.htm";
  21. string fnHi6 = "master_transformation009no.htm";
  22. string fnHi7 = "master_transformation008no.htm";
  23. string fnHi8 = "master_transformation010no.htm";
  24.  
  25. handler:
  26. EventHandler MENU_SELECTED(talker,ask,reply,i0,i1)
  27. {
  28. if( ask == -299 )
  29. {
  30. if( reply == 0 )
  31. {
  32. if( GetOneTimeQuestFlag(talker, quest_num) )
  33. {
  34. ShowEtcSkillList(talker, skill_acquire, "");
  35. }
  36. else
  37. {
  38. ShowPage(talker, fnHi1);
  39. }
  40. }
  41. else if( reply == 1 )
  42. {
  43. if( GetOneTimeQuestFlag(talker, quest_num) )
  44. {
  45. if( multisell > -1 )
  46. {
  47. ShowMultisell(multisell, talker);
  48. }
  49. }
  50. else
  51. {
  52. ShowPage(talker, fnHi2);
  53. }
  54. }
  55. }
  56. else if( ask == -282 )
  57. {
  58. if( reply == 0 )
  59. {
  60. i0 = 0;
  61. i1 = 0;
  62. if( talker.subjob_id != 0 )
  63. {
  64. ShowPage(talker, fnHi3);
  65. return;
  66. }
  67. for( i0 = skill_book_id1; i0 < skill_book_id15 + 1; ++i0 )
  68. {
  69. if( OwnItemCount(talker, i0) > 0 )
  70. {
  71. i1 = i1 + 1;
  72. }
  73. }
  74. if( OwnItemCount(talker, skill_book_id16) > 0 )
  75. {
  76. i1 = i1 + 1;
  77. }
  78. if( i1 == 0 )
  79. {
  80. ShowPage(talker, fnHi4);
  81. return;
  82. }
  83. if( GetOneTimeQuestFlag(talker, quest_num) == 0 )
  84. {
  85. ShowPage(talker, fnHi5);
  86. return;
  87. }
  88. ShowEtcSkillList(talker, skill_acquire2, "");
  89. }
  90. else if( reply == 1 )
  91. {
  92. i0 = 0;
  93. i1 = 0;
  94. if( talker.subjob_id != 0 )
  95. {
  96. ShowPage(talker, fnHi3);
  97. return;
  98. }
  99. if( OwnItemCount(talker, @adena) < fee_delete_subjob )
  100. {
  101. ShowPage(talker, fnHi7);
  102. return;
  103. }
  104. if( GetOneTimeQuestFlag(talker, quest_num) == 0 )
  105. {
  106. ShowPage(talker, fnHi5);
  107. return;
  108. }
  109. for( i0 = flag_subjob_start; i0 < flag_subjob_end + 1; ++i0 )
  110. {
  111. if( GetOneTimeQuestFlag(talker, i0) == 1 )
  112. {
  113. i1 = i1 + 1;
  114. }
  115. }
  116. if( i1 == 0 )
  117. {
  118. ShowPage(talker, fnHi8);
  119. return;
  120. }
  121. DeleteItem1(talker, @adena, fee_delete_subjob);
  122. for( i0 = skill_book_id1; i0 < skill_book_id15 + 1; ++i0 )
  123. {
  124. if( OwnItemCount(talker, i0) > 0 )
  125. {
  126. DeleteItem1(talker, i0, OwnItemCount(talker, i0));
  127. }
  128. }
  129. if( OwnItemCount(talker, skill_book_id16) > 0 )
  130. {
  131. DeleteItem1(talker, skill_book_id16, OwnItemCount(talker, skill_book_id16));
  132. }
  133. for( i0 = flag_subjob_start; i0 < flag_subjob_end + 1; ++i0 )
  134. {
  135. if( GetOneTimeQuestFlag(talker, i0) == 1 )
  136. {
  137. SetOneTimeQuestFlag(talker, i0, 0);
  138. }
  139. }
  140. DeleteAcquireSkills(talker, skill_acquire2);
  141. AddLogByNpc(899, talker, fee_delete_subjob, 0);
  142. ShowPage(talker, fnHi6);
  143. }
  144. }
  145. }
  146.  
  147. EventHandler ONE_SKILL_SELECTED(talker,skill_name_id,need_quest,i0)
  148. {
  149. ShowGrowEtcSkillMessage(talker, skill_name_id, i0, "");
  150. }
  151. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement