Advertisement
Guest User

Untitled

a guest
Mar 26th, 2015
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.66 KB | None | 0 0
  1. class amber : raid_boss_type4
  2. {
  3. parameter:
  4. int AbsorbRate11 = 50; // 50%
  5. int AbsorbRate12 = 50; // 50%
  6. int AbsorbRate13 = 50; // 50%
  7. int AbsorbRate14 = 50; // 50%
  8. int AbsorbRate15 = 0; // 0%
  9. int AbsorbRate16 = 0; // 0%
  10. int AllParty = 1; // 1 - allparty, 0 - one from party
  11.  
  12. handler:
  13. EventHandler MY_DYING(always_list,code_info,i0,i1,i2,i3,i9,i4,i5,i6,last_attacker,lparty,member,random1_list,target)
  14. {
  15. always_list = AllocCodeInfoList();
  16. random1_list = AllocCodeInfoList();
  17. target = last_attacker; if( target.master) target = target.master;
  18. if( IsNull( lparty ) == 0 ) {
  19. for( i9 = 0; i9 < lparty.member_count; ++i9 ) {
  20. target = myself.GetMemberOfParty( lparty, i9 );
  21. if( myself.HaveMemo( target, @put_the_power_in_your_blade ) == 1 && myself.DistFromMe( target) <= 1500 ) {
  22. always_list.SetInfo( 0, target );
  23. }
  24. }
  25. } else {
  26. if( myself.HaveMemo( target, @put_the_power_in_your_blade ) == 1 && myself.DistFromMe( target) <= 1500 ) {
  27. always_list.SetInfo( 0, target );
  28. }
  29. }
  30.  
  31. while(IsNull(code_info = always_list.Next()) == 0) {
  32. select (code_info.code) {
  33. case 0: {
  34. myself.SetCurrentQuestID(@put_the_power_in_your_blade );
  35. if (AllParty==1) {
  36. while( IsNull( target = code_info.Next() ) == 0 ) {
  37. if( IsNull( target) == 0 && myself.DistFromMe( target ) <= 1500 ) {
  38. if( myself.GetCurrentTick() - target.quest_last_reward_time > 1 ) {
  39. target.quest_last_reward_time = myself.GetCurrentTick();
  40. i1 = myself.OwnItemCount( target, @blue_soul_crystal_0 ) +
  41. myself.OwnItemCount( target, @blue_soul_crystal_1 ) +
  42. myself.OwnItemCount( target, @blue_soul_crystal_2 ) +
  43. myself.OwnItemCount( target, @blue_soul_crystal_3 ) +
  44. myself.OwnItemCount( target, @blue_soul_crystal_4 ) +
  45. myself.OwnItemCount( target, @blue_soul_crystal_5 ) +
  46. myself.OwnItemCount( target, @blue_soul_crystal_6 ) +
  47. myself.OwnItemCount( target, @blue_soul_crystal_7 ) +
  48. myself.OwnItemCount( target, @blue_soul_crystal_8 ) +
  49. myself.OwnItemCount( target, @blue_soul_crystal_9 ) +
  50. myself.OwnItemCount( target, @blue_soul_crystal_10 ) +
  51. myself.OwnItemCount( target, @blue_soul_crystal_11 ) +
  52. myself.OwnItemCount( target, @blue_soul_crystal_12 ) +
  53. myself.OwnItemCount( target, @blue_soul_crystal_13 ) +
  54. myself.OwnItemCount( target, @blue_soul_crystal_stage_14 ) +
  55. myself.OwnItemCount( target, @blue_soul_crystal_stage_15 ) +
  56. myself.OwnItemCount( target, @blue_soul_crystal_stage_16 ) +
  57.  
  58. myself.OwnItemCount( target, @red_soul_crystal_0 ) +
  59. myself.OwnItemCount( target, @red_soul_crystal_1 ) +
  60. myself.OwnItemCount( target, @red_soul_crystal_2 ) +
  61. myself.OwnItemCount( target, @red_soul_crystal_3 ) +
  62. myself.OwnItemCount( target, @red_soul_crystal_4 ) +
  63. myself.OwnItemCount( target, @red_soul_crystal_5 ) +
  64. myself.OwnItemCount( target, @red_soul_crystal_6 ) +
  65. myself.OwnItemCount( target, @red_soul_crystal_7 ) +
  66. myself.OwnItemCount( target, @red_soul_crystal_8 ) +
  67. myself.OwnItemCount( target, @red_soul_crystal_9 ) +
  68. myself.OwnItemCount( target, @red_soul_crystal_10 ) +
  69. myself.OwnItemCount( target, @red_soul_crystal_11 ) +
  70. myself.OwnItemCount( target, @red_soul_crystal_12 ) +
  71. myself.OwnItemCount( target, @red_soul_crystal_13 ) +
  72. myself.OwnItemCount( target, @red_soul_crystal_stage_14 ) +
  73. myself.OwnItemCount( target, @red_soul_crystal_stage_15 ) +
  74. myself.OwnItemCount( target, @red_soul_crystal_stage_16 ) +
  75.  
  76. myself.OwnItemCount( target, @green_soul_crystal_0 ) +
  77. myself.OwnItemCount( target, @green_soul_crystal_1 ) +
  78. myself.OwnItemCount( target, @green_soul_crystal_2 ) +
  79. myself.OwnItemCount( target, @green_soul_crystal_3 ) +
  80. myself.OwnItemCount( target, @green_soul_crystal_4 ) +
  81. myself.OwnItemCount( target, @green_soul_crystal_5 ) +
  82. myself.OwnItemCount( target, @green_soul_crystal_6 ) +
  83. myself.OwnItemCount( target, @green_soul_crystal_7 ) +
  84. myself.OwnItemCount( target, @green_soul_crystal_8 ) +
  85. myself.OwnItemCount( target, @green_soul_crystal_9 ) +
  86. myself.OwnItemCount( target, @green_soul_crystal_10 ) +
  87. myself.OwnItemCount( target, @green_soul_crystal_11 ) +
  88. myself.OwnItemCount( target, @green_soul_crystal_12 ) +
  89. myself.OwnItemCount( target, @green_soul_crystal_13 ) +
  90. myself.OwnItemCount( target, @green_soul_crystal_stage_14 ) +
  91. myself.OwnItemCount( target, @green_soul_crystal_stage_15 ) +
  92. myself.OwnItemCount( target, @green_soul_crystal_stage_16 );
  93.  
  94. if (i1 > 1) {
  95. myself.ShowSystemMessage( target, 977);
  96. } else
  97. if (i1 == 0) {
  98. myself.ShowSystemMessage( target, 1265);
  99. } else
  100. if (i1 == 1) {
  101. i1 = 0;
  102. i2 = 0;
  103. i9 = 0;
  104.  
  105. if (i1 == 0) {
  106. i4 = myself.OwnItemCount( target, @green_soul_crystal_10);
  107. i5 = myself.OwnItemCount( target, @red_soul_crystal_10);
  108. i6 = myself.OwnItemCount( target, @blue_soul_crystal_10);
  109. if ((i4+i5+i6)>0) {
  110. if (Rand(1000) < AbsorbRate11) {
  111. if (i4 == 1) { i1 = @green_soul_crystal_11 ; i2 = @green_soul_crystal_10 ; }
  112. else
  113. if (i5 == 1) { i1 = @red_soul_crystal_11 ; i2 = @red_soul_crystal_10 ; }
  114. else
  115. if (i6 == 1) { i1 = @blue_soul_crystal_11 ; i2 = @blue_soul_crystal_10 ; }
  116. } else { i1 = 0; }
  117. }
  118. }
  119.  
  120. if (i1 == 0) {
  121. i4 = myself.OwnItemCount( target, @green_soul_crystal_11);
  122. i5 = myself.OwnItemCount( target, @red_soul_crystal_11);
  123. i6 = myself.OwnItemCount( target, @blue_soul_crystal_11);
  124. if ((i4+i5+i6)>0) {
  125. if (Rand(1000) < AbsorbRate12) {
  126. if (i4 == 1) { i1 = @green_soul_crystal_12 ; i2 = @green_soul_crystal_11 ; }
  127. else
  128. if (i5 == 1) { i1 = @red_soul_crystal_12 ; i2 = @red_soul_crystal_11 ; }
  129. else
  130. if (i6 == 1) { i1 = @blue_soul_crystal_12 ; i2 = @blue_soul_crystal_11 ; }
  131. } else { i1 = 0; }
  132. }
  133. }
  134.  
  135. if (i1 == 0) {
  136. i4 = myself.OwnItemCount( target, @green_soul_crystal_12);
  137. i5 = myself.OwnItemCount( target, @red_soul_crystal_12);
  138. i6 = myself.OwnItemCount( target, @blue_soul_crystal_12);
  139. if ((i4+i5+i6)>0) {
  140. if (Rand(1000) < AbsorbRate13) {
  141. if (i4 == 1) { i1 = @green_soul_crystal_13 ; i2 = @green_soul_crystal_12 ; }
  142. else
  143. if (i5 == 1) { i1 = @red_soul_crystal_13 ; i2 = @red_soul_crystal_12 ; }
  144. else
  145. if (i6 == 1) { i1 = @blue_soul_crystal_13 ; i2 = @blue_soul_crystal_12 ; }
  146. } else { i1 = 0; }
  147. }
  148. }
  149.  
  150. if (i1 == 0) {
  151. i4 = myself.OwnItemCount( target, @green_soul_crystal_13);
  152. i5 = myself.OwnItemCount( target, @red_soul_crystal_13);
  153. i6 = myself.OwnItemCount( target, @blue_soul_crystal_13);
  154. if ((i4+i5+i6)>0) {
  155. if (Rand(1000) < AbsorbRate14) {
  156. if (i4 == 1) { i1 = @green_soul_crystal_stage_14 ; i2 = @green_soul_crystal_13 ; }
  157. else
  158. if (i5 == 1) { i1 = @red_soul_crystal_stage_14 ; i2 = @red_soul_crystal_13 ; }
  159. else
  160. if (i6 == 1) { i1 = @blue_soul_crystal_stage_14 ; i2 = @blue_soul_crystal_13 ; }
  161. } else { i1 = 0; }
  162. }
  163. }
  164.  
  165. if (i1 == 0) {
  166. i4 = myself.OwnItemCount( target, @green_soul_crystal_stage_14);
  167. i5 = myself.OwnItemCount( target, @red_soul_crystal_stage_14);
  168. i6 = myself.OwnItemCount( target, @blue_soul_crystal_stage_14);
  169. if ((i4+i5+i6)>0) {
  170. if (Rand(1000) < AbsorbRate15) {
  171. if (i4 == 1) { i1 = @green_soul_crystal_stage_15 ; i2 = @green_soul_crystal_stage_14 ; }
  172. else
  173. if (i5 == 1) { i1 = @red_soul_crystal_stage_15 ; i2 = @red_soul_crystal_stage_14 ; }
  174. else
  175. if (i6 == 1) { i1 = @blue_soul_crystal_stage_15 ; i2 = @blue_soul_crystal_stage_14 ; }
  176. } else { i1 = 0; }
  177. }
  178. }
  179.  
  180. if (i1 == 0) {
  181. i4 = myself.OwnItemCount( target, @green_soul_crystal_stage_15);
  182. i5 = myself.OwnItemCount( target, @red_soul_crystal_stage_15);
  183. i6 = myself.OwnItemCount( target, @blue_soul_crystal_stage_15);
  184. if ((i4+i5+i6)>0) {
  185. if (Rand(1000) < AbsorbRate16) {
  186. if (i4 == 1) { i1 = @green_soul_crystal_stage_16 ; i2 = @green_soul_crystal_stage_15 ; }
  187. else
  188. if (i5 == 1) { i1 = @red_soul_crystal_stage_16 ; i2 = @red_soul_crystal_stage_15 ; }
  189. else
  190. if (i6 == 1) { i1 = @blue_soul_crystal_stage_16 ; i2 = @blue_soul_crystal_stage_15 ; }
  191. } else { i1 = 0; }
  192. }
  193. }
  194.  
  195. if(i1 > 0) {
  196. myself.DeleteItem1( target, i2, 1);
  197. myself.GiveItem1( target, i1, 1);
  198. myself.SoundEffect( target, "ItemSound.quest_itemget");
  199. myself.ShowSystemMessage( target, 974);
  200. } else myself.ShowSystemMessage( target, 1264);
  201.  
  202. }
  203. }
  204. }
  205. }
  206. } else {
  207. target = code_info.RandomSelectOne( );
  208. if( IsNull( target) == 0 && myself.DistFromMe( target ) <= 1500 ) {
  209. if( myself.GetCurrentTick() - target.quest_last_reward_time > 1 ) {
  210. target.quest_last_reward_time = myself.GetCurrentTick();
  211. i1 = myself.OwnItemCount( target, @blue_soul_crystal_0 ) +
  212. myself.OwnItemCount( target, @blue_soul_crystal_1 ) +
  213. myself.OwnItemCount( target, @blue_soul_crystal_2 ) +
  214. myself.OwnItemCount( target, @blue_soul_crystal_3 ) +
  215. myself.OwnItemCount( target, @blue_soul_crystal_4 ) +
  216. myself.OwnItemCount( target, @blue_soul_crystal_5 ) +
  217. myself.OwnItemCount( target, @blue_soul_crystal_6 ) +
  218. myself.OwnItemCount( target, @blue_soul_crystal_7 ) +
  219. myself.OwnItemCount( target, @blue_soul_crystal_8 ) +
  220. myself.OwnItemCount( target, @blue_soul_crystal_9 ) +
  221. myself.OwnItemCount( target, @blue_soul_crystal_10 ) +
  222. myself.OwnItemCount( target, @blue_soul_crystal_11 ) +
  223. myself.OwnItemCount( target, @blue_soul_crystal_12 ) +
  224. myself.OwnItemCount( target, @blue_soul_crystal_13 ) +
  225. myself.OwnItemCount( target, @blue_soul_crystal_stage_14 ) +
  226. myself.OwnItemCount( target, @blue_soul_crystal_stage_15 ) +
  227. myself.OwnItemCount( target, @blue_soul_crystal_stage_16 ) +
  228.  
  229. myself.OwnItemCount( target, @red_soul_crystal_0 ) +
  230. myself.OwnItemCount( target, @red_soul_crystal_1 ) +
  231. myself.OwnItemCount( target, @red_soul_crystal_2 ) +
  232. myself.OwnItemCount( target, @red_soul_crystal_3 ) +
  233. myself.OwnItemCount( target, @red_soul_crystal_4 ) +
  234. myself.OwnItemCount( target, @red_soul_crystal_5 ) +
  235. myself.OwnItemCount( target, @red_soul_crystal_6 ) +
  236. myself.OwnItemCount( target, @red_soul_crystal_7 ) +
  237. myself.OwnItemCount( target, @red_soul_crystal_8 ) +
  238. myself.OwnItemCount( target, @red_soul_crystal_9 ) +
  239. myself.OwnItemCount( target, @red_soul_crystal_10 ) +
  240. myself.OwnItemCount( target, @red_soul_crystal_11 ) +
  241. myself.OwnItemCount( target, @red_soul_crystal_12 ) +
  242. myself.OwnItemCount( target, @red_soul_crystal_13 ) +
  243. myself.OwnItemCount( target, @red_soul_crystal_stage_14 ) +
  244. myself.OwnItemCount( target, @red_soul_crystal_stage_15 ) +
  245. myself.OwnItemCount( target, @red_soul_crystal_stage_16 ) +
  246.  
  247. myself.OwnItemCount( target, @green_soul_crystal_0 ) +
  248. myself.OwnItemCount( target, @green_soul_crystal_1 ) +
  249. myself.OwnItemCount( target, @green_soul_crystal_2 ) +
  250. myself.OwnItemCount( target, @green_soul_crystal_3 ) +
  251. myself.OwnItemCount( target, @green_soul_crystal_4 ) +
  252. myself.OwnItemCount( target, @green_soul_crystal_5 ) +
  253. myself.OwnItemCount( target, @green_soul_crystal_6 ) +
  254. myself.OwnItemCount( target, @green_soul_crystal_7 ) +
  255. myself.OwnItemCount( target, @green_soul_crystal_8 ) +
  256. myself.OwnItemCount( target, @green_soul_crystal_9 ) +
  257. myself.OwnItemCount( target, @green_soul_crystal_10 ) +
  258. myself.OwnItemCount( target, @green_soul_crystal_11 ) +
  259. myself.OwnItemCount( target, @green_soul_crystal_12 ) +
  260. myself.OwnItemCount( target, @green_soul_crystal_13 ) +
  261. myself.OwnItemCount( target, @green_soul_crystal_stage_14 ) +
  262. myself.OwnItemCount( target, @green_soul_crystal_stage_15 ) +
  263. myself.OwnItemCount( target, @green_soul_crystal_stage_16 );
  264.  
  265. if (i1 > 1) {
  266. myself.ShowSystemMessage( target, 977);
  267. } else
  268. if (i1 == 0) {
  269. myself.ShowSystemMessage( target, 1265);
  270. } else
  271. if (i1 == 1) {
  272. i1 = 0;
  273. i2 = 0;
  274. i9 = 0;
  275.  
  276. if (i1 == 0) {
  277. i4 = myself.OwnItemCount( target, @green_soul_crystal_10);
  278. i5 = myself.OwnItemCount( target, @red_soul_crystal_10);
  279. i6 = myself.OwnItemCount( target, @blue_soul_crystal_10);
  280. if ((i4+i5+i6)>0) {
  281. if (Rand(1000) < AbsorbRate11) {
  282. if (i4 == 1) { i1 = @green_soul_crystal_11 ; i2 = @green_soul_crystal_10 ; }
  283. else
  284. if (i5 == 1) { i1 = @red_soul_crystal_11 ; i2 = @red_soul_crystal_10 ; }
  285. else
  286. if (i6 == 1) { i1 = @blue_soul_crystal_11 ; i2 = @blue_soul_crystal_10 ; }
  287. } else { i1 = 0; }
  288. }
  289. }
  290.  
  291. if (i1 == 0) {
  292. i4 = myself.OwnItemCount( target, @green_soul_crystal_11);
  293. i5 = myself.OwnItemCount( target, @red_soul_crystal_11);
  294. i6 = myself.OwnItemCount( target, @blue_soul_crystal_11);
  295. if ((i4+i5+i6)>0) {
  296. if (Rand(1000) < AbsorbRate12) {
  297. if (i4 == 1) { i1 = @green_soul_crystal_12 ; i2 = @green_soul_crystal_11 ; }
  298. else
  299. if (i5 == 1) { i1 = @red_soul_crystal_12 ; i2 = @red_soul_crystal_11 ; }
  300. else
  301. if (i6 == 1) { i1 = @blue_soul_crystal_12 ; i2 = @blue_soul_crystal_11 ; }
  302. } else { i1 = 0; }
  303. }
  304. }
  305.  
  306. if (i1 == 0) {
  307. i4 = myself.OwnItemCount( target, @green_soul_crystal_12);
  308. i5 = myself.OwnItemCount( target, @red_soul_crystal_12);
  309. i6 = myself.OwnItemCount( target, @blue_soul_crystal_12);
  310. if ((i4+i5+i6)>0) {
  311. if (Rand(1000) < AbsorbRate13) {
  312. if (i4 == 1) { i1 = @green_soul_crystal_13 ; i2 = @green_soul_crystal_12 ; }
  313. else
  314. if (i5 == 1) { i1 = @red_soul_crystal_13 ; i2 = @red_soul_crystal_12 ; }
  315. else
  316. if (i6 == 1) { i1 = @blue_soul_crystal_13 ; i2 = @blue_soul_crystal_12 ; }
  317. } else { i1 = 0; }
  318. }
  319. }
  320.  
  321. if (i1 == 0) {
  322. i4 = myself.OwnItemCount( target, @green_soul_crystal_13);
  323. i5 = myself.OwnItemCount( target, @red_soul_crystal_13);
  324. i6 = myself.OwnItemCount( target, @blue_soul_crystal_13);
  325. if ((i4+i5+i6)>0) {
  326. if (Rand(1000) < AbsorbRate14) {
  327. if (i4 == 1) { i1 = @green_soul_crystal_stage_14 ; i2 = @green_soul_crystal_13 ; }
  328. else
  329. if (i5 == 1) { i1 = @red_soul_crystal_stage_14 ; i2 = @red_soul_crystal_13 ; }
  330. else
  331. if (i6 == 1) { i1 = @blue_soul_crystal_stage_14 ; i2 = @blue_soul_crystal_13 ; }
  332. } else { i1 = 0; }
  333. }
  334. }
  335.  
  336. if (i1 == 0) {
  337. i4 = myself.OwnItemCount( target, @green_soul_crystal_stage_14);
  338. i5 = myself.OwnItemCount( target, @red_soul_crystal_stage_14);
  339. i6 = myself.OwnItemCount( target, @blue_soul_crystal_stage_14);
  340. if ((i4+i5+i6)>0) {
  341. if (Rand(1000) < AbsorbRate15) {
  342. if (i4 == 1) { i1 = @green_soul_crystal_stage_15 ; i2 = @green_soul_crystal_stage_14 ; }
  343. else
  344. if (i5 == 1) { i1 = @red_soul_crystal_stage_15 ; i2 = @red_soul_crystal_stage_14 ; }
  345. else
  346. if (i6 == 1) { i1 = @blue_soul_crystal_stage_15 ; i2 = @blue_soul_crystal_stage_14 ; }
  347. } else { i1 = 0; }
  348. }
  349. }
  350.  
  351. if (i1 == 0) {
  352. i4 = myself.OwnItemCount( target, @green_soul_crystal_stage_15);
  353. i5 = myself.OwnItemCount( target, @red_soul_crystal_stage_15);
  354. i6 = myself.OwnItemCount( target, @blue_soul_crystal_stage_15);
  355. if ((i4+i5+i6)>0) {
  356. if (Rand(1000) < AbsorbRate16) {
  357. if (i4 == 1) { i1 = @green_soul_crystal_stage_16 ; i2 = @green_soul_crystal_stage_15 ; }
  358. else
  359. if (i5 == 1) { i1 = @red_soul_crystal_stage_16 ; i2 = @red_soul_crystal_stage_15 ; }
  360. else
  361. if (i6 == 1) { i1 = @blue_soul_crystal_stage_16 ; i2 = @blue_soul_crystal_stage_15 ; }
  362. } else { i1 = 0; }
  363. }
  364. }
  365.  
  366. if(i1 > 0) {
  367. myself.DeleteItem1( target, i2, 1);
  368. myself.GiveItem1( target, i1, 1);
  369. myself.SoundEffect( target, "ItemSound.quest_itemget");
  370. myself.ShowSystemMessage( target, 974);
  371. } else myself.ShowSystemMessage( target, 1264);
  372.  
  373. }
  374. }
  375. }
  376. }
  377. break;
  378. }
  379. }
  380. }
  381.  
  382. code_info = random1_list.RandomSelectOne();
  383. if( IsNull( code_info ) == 0 ) {
  384. }
  385.  
  386. super;
  387. }
  388.  
  389. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement