yuhsing

Untitled

Sep 29th, 2013
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.08 KB | None | 0 0
  1.  
  2. guild_vs4 mapflag loadevent
  3.  
  4. - script KoE -1,{
  5. OnInit:
  6. disablenpc "Exit#KoE";
  7. donpcevent "::OnRevKoE";
  8. end;
  9.  
  10. OnPCLoadMapEvent:
  11. if( !.koe_start && strharinfo(3) == "guild_vs4" ){
  12. mes "You cant enter/teleport/warp in this map after KoE end.";
  13. close2;
  14. warp "SavePoint",0,0;
  15. }
  16. end;
  17.  
  18. OnWhisperGlobal:
  19. if( getgmlevel() < 99 ) end;
  20. else if( compare( @whispervar0$,"on" ) ) goto L_start;
  21. else if( compare( @whispervar0$,"off" ) ) goto L_end;
  22. else if( compare( @whispervar0$,"reset" ) ) goto OnGuildBreak;
  23. else end;
  24.  
  25. OnTreasureBox:
  26. setarray .@X[0],159,154,154,159;
  27. setarray .@Y[0],135,135,130,130;
  28. killmonsterall "payg_cas05";
  29. for( set .@i,0; .@i < getarraysize( .@X ); set .@i,.@i + 1 )
  30. monster "payg_cas05",.@X[.@i],.@Y[.@i],"--ja--",1903,1,"";
  31. end;
  32.  
  33. L_start:
  34. OnMon1700:
  35. OnTue1700:
  36. OnWed1700:
  37. OnThu1700:
  38. OnFri1700:
  39. OnSat1700:
  40. if( !.koe_start ){
  41. koe_toggle(1);
  42. set .@Min,rand( 30,45 );
  43. announce "The King of Emperium - "+getcastlename("guild_vs4")+" has begun!",bc_all,0xFFCCFF;
  44. set .koe_start, 1;
  45. atcommand "@skillon";
  46. disablenpc "Exit#KoE";
  47. // setcastledata "guild_vs4",1,0;
  48. donpcevent "::OnRevKoE";
  49. maprespawnguildid "guild_vs4",getcastledata( "guild_vs4",1 ), 6;
  50. monster "guild_vs4",50,50,"Emperium",1288,1,strnpcinfo(0)+"::OnEmpDead";
  51.  
  52. sleep ( .@Min * 60000 );
  53. koe_toggle(0);
  54. donpcevent
  55. strnpcinfo(0)+"::OnTreasureBox";
  56. announce "The King of Emperium is over!",bc_all,0xFFCCFF;
  57. set .koe_start, 0;
  58. atcommand "@skilloff";
  59. killmonsterall "guild_vs4";
  60. enablenpc "Exit#KoE";
  61. sleep 3000;
  62. mapannounce "guild_vs4","You got 1 minute to claim the prize.",bc_map,0xFFCCFF;
  63. sleep 57000;
  64. disablenpc "Exit#KoE";
  65. maprespawnguildid "guild_vs4",getcastledata( "guild_vs4",1 ), 3;
  66. }
  67. end;
  68.  
  69. OnEmpDead:
  70. setcastledata "guild_vs4",1,getcharid(2);
  71. donpcevent "::OnRevKoE";
  72. announce "The current King of Emperium is the [ "+strcharinfo(2)+" ] guild.",bc_all,0xFFCCFF;
  73. maprespawnguildid "guild_vs4",getcastledata( "guild_vs4",1 ), 6;
  74. if( .koe_start ){
  75. sleep 2000;
  76. // mapwarp "guild_vs4","guild_vs4",50,50;
  77. monster "guild_vs4",50,50,"Emperium",1288,1,strnpcinfo(0)+"::OnEmpDead";
  78. }
  79. end;
  80.  
  81. L_end:
  82. if( .koe_start )
  83. awake strnpcinfo(0);
  84. end;
  85.  
  86. OnGuildBreak:
  87. setcastledata "guild_vs4",1,0;
  88. donpcevent "::OnRevKoE";
  89. announce "KOE Ownership removed.",bc_all,0xFFCCFF;
  90. if( mobcount("guild_vs4",strnpcinfo(0)+"::OnEmpDead") ){
  91. killmonsterall "guild_vs4";
  92. monster "guild_vs4",50,50,"Emperium",1288,1,strnpcinfo(0)+"::OnEmpDead";
  93. }
  94. end;
  95. }
  96.  
  97. // KoE Entrance + Treasure Room
  98. volterra,112,148,4 script King of Emperium#Warp 722,{
  99. mes "[The King]";
  100. if( !getcharid(2) ){
  101. mes "You must have a guild to participate in the ^FF0000King of Emperium Tournament^000000.";
  102. close;
  103. }
  104. mes "Hello.";
  105. mes "Would you like to participate in the ^FF0000King of Emperium Tournament^000000?";
  106. if( !getvariableofnpc( .koe_start,"KoE" ) && getcharid(0) != getguildmasterid( getcastledata( "guild_vs4",1 ) )){
  107. mes "But there is no KOE right now.";
  108. close;
  109. }
  110. switch( select( (( getvariableofnpc( .koe_start,"KoE" ) )?"Participate":"" ),( !getvariableofnpc( .koe_start,"KoE" ) && getcharid(0) == getguildmasterid( getcastledata( "guild_vs4",1 ) )?"Treasure Room":"" ) )){
  111. Case 1:
  112. setarray .@X[0],49,50,50,7;
  113. setarray .@Y[0],92,92,7,49;
  114. set .@Random,rand( getarraysize(.@X) );
  115. warp "guild_vs4",.@X[.@Random],.@Y[.@Random];
  116. end;
  117. Case 2:
  118. warp "payg_cas05",153,136;
  119. end;
  120. default: close;
  121. }
  122. OnRevKoE:
  123. flagemblem getcastledata( "guild_vs4",1 );
  124. end;
  125. }
  126.  
  127. // KoE Exit + Reward
  128. guild_vs4,49,56,5 script Exit#KoE 51,{
  129. mes "[Exit]";
  130. mes "See ya.";
  131. if( getcharid(2) == getcastledata( "guild_vs4",1 ) ){
  132. getitem 20103, 10; // configure prize here
  133. getitem 25020, 2; // configure prize here
  134. set #CASHPOINTS, #CASHPOINTS + 50; // configure cash here
  135. message strcharinfo(0),"You'll receive 10 Event Coins, 2 Event Box and 50 Cash Points!";
  136. }
  137. next;
  138. warp "Save",0,0;
  139. close;
  140. }
  141.  
  142. // Flags
  143. - script koe_flag -1,{
  144. set .@gid, getcastledata( "guild_vs4",1 );
  145. if( .@gid == 0 ) end;
  146. mes "[King of Emperium]";
  147. mes "The Current King of Emperium is the [ ^0055FF"+ getguildname(.@gid) +"^000000 ] guild.";
  148. close;
  149.  
  150. OnRevKoE:
  151. flagemblem getcastledata( "guild_vs4",1 );
  152. end;
  153. }
  154.  
  155.  
  156. // Duplicated Flags
  157. guild_vs4,4,50,6 duplicate(koe_flag) King of Emperium#1 722
  158. guild_vs4,95,50,2 duplicate(koe_flag) King of Emperium#2 722
  159. guild_vs4,49,95,4 duplicate(koe_flag) King of Emperium#3 722
  160. guild_vs4,49,4,0 duplicate(koe_flag) King of Emperium#4 722
  161.  
  162.  
  163. // Mapflags
  164. guild_vs4 mapflag gvg
  165. guild_vs4 mapflag nobranch
  166. guild_vs4 mapflag nomemo
  167. guild_vs4 mapflag nopenalty
  168. guild_vs4 mapflag noreturn
  169. guild_vs4 mapflag nosave SavePoint
  170. guild_vs4 mapflag noteleport
  171. guild_vs4 mapflag gvg_noparty
  172. guild_vs4 mapflag nowarp
  173. guild_vs4 mapflag nowarpto
  174. guild_vs4 mapflag gvg_castle
  175.  
  176. payg_cas05,161,136,0 script KoE#Exit 111,{
  177. mes " ";
  178. mes "There's a small lever. Will you pull it? ";
  179. next;
  180. if(select("Pull.:Do not.") == 2) close;
  181. warp "prontera",155,185;
  182. end;
  183. }
Advertisement
Add Comment
Please, Sign In to add comment