ev_agit_event.txt 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. //===== eAthena Script =======================================
  2. //= War of Emperium - WoE Auto-Start
  3. //===== By: ==================================================
  4. //= kalen (1.0)
  5. //= 1.1 by Akaru and ho|yAnge|
  6. //===== Current Version: =====================================
  7. //= 1.8b
  8. //===== Compatible With: =====================================
  9. //= eAthena 0.1+; RO Episode 4+
  10. //===== Description: =========================================
  11. //= Auto Start for War of Emperium
  12. //=============================================
  13. //= gettime(3): Gets hour (24 hour time)
  14. //= gettime(4): Gets day of week 1=Monday, 2=Tuesday,
  15. //= 3=Wednesday, 4=Thursday, etc.
  16. //===== Additional Comments: =================================
  17. //= v1.1a changed OnInit to OnAgitInit.[kobra_k88]
  18. //= v1.2 added gettime checks. removed $AgitStarted var.[kobra_k88]
  19. //= v1.3 Moved treasure spawn time here.[kobra_k88]
  20. //= v1.3a Implemented Shadowlady's idea to allow for different
  21. //= start/stop times on different days.[kobra_k88]
  22. //= 1.4 Fixed treasure chests spawn! We had to unroll some loops
  23. //= Now they appear in castles from 00:01 to 00:24. [Lupus]
  24. //= 1.5 Fixed WOE end messages on non-WOE days, by Avaj
  25. //= 1.5a missing tabs [KarLaeda]
  26. //= 1.6 Corrected multiple "WoE has begun" announces [ultramage]
  27. //= 1.7 Commented out the WoE start and end announces. [L0ne_W0lf]
  28. //= 1.8 Castle owners displayed when WoE starts and finished. [L0ne_W0lf]
  29. //= 1.8a Will now report unoccupied castles at start/end. [L0ne_W0lf]
  30. //= 1.8b Whoops. Fixed a mistake :D [L0ne_W0lf]
  31. //============================================================
  32. //| To know how to set up WoE times, go to doc\woe_time_explanation.txt
  33. // WoE Start/Stop times
  34. //======================================
  35. - script Agit_Event -1,{
  36. end;
  37. OnClock2100: //start time for Tues(2), Thurs(4)
  38. OnClock2300: //end time for Tues(2), Thurs(4)
  39. OnClock1600: //start time for Sat(6)
  40. OnClock1800: //end time for Sat(6)
  41. OnAgitInit:
  42. // starting time checks
  43. if((gettime(4)==2) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
  44. if((gettime(4)==4) && (gettime(3)>=21 && gettime(3)<23)) goto L_Start;
  45. if((gettime(4)==6) && (gettime(3)>=16 && gettime(3)<18)) goto L_Start;
  46. // end time checks
  47. if((gettime(4)==2) && (gettime(3)==23)) goto L_End;
  48. if((gettime(4)==4) && (gettime(3)==23)) goto L_End;
  49. if((gettime(4)==6) && (gettime(3)==18)) goto L_End;
  50. end;
  51. L_End:
  52. if (agitcheck()) {
  53. //Announce "The War Of Emperium is over!",8;
  54. AgitEnd;
  55. goto L_DisplayOwners;
  56. }
  57. end;
  58. L_Start:
  59. if (!agitcheck()) {
  60. //Announce "The War Of Emperium has begun!",8;
  61. AgitStart;
  62. goto L_DisplayOwners;
  63. }
  64. end;
  65. L_DisplayOwners:
  66. setarray .@maps$[0],"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05";
  67. setarray .@maps$[5],"gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05";
  68. setarray .@maps$[10],"payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05";
  69. setarray .@maps$[15],"prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05";
  70. for( set .@i, 0; .@i <= 19; set .@i, .@i+1 ) {
  71. if (GetCastleData(.@maps$[.@i],1)) {
  72. Announce "The [" + GetCastleName(.@maps$[.@i]) + "] castle has been conquered by the [" + GetGuildName(GetCastleData(.@maps$[.@i],1)) + "] guild.",bc_all;
  73. }
  74. else {
  75. Announce "The [" + GetCastleName(.@maps$[.@i]) + "] castle is currently unoccupied.",bc_all;
  76. }
  77. }
  78. end;
  79. }
  80. // Treasure Spawn Time
  81. //========================================
  82. - script TreasSpawn -1,{
  83. end;
  84. // Please explain the relevence of this to me?
  85. // Why are we spawning chests per zone on 1 minute intervals?
  86. // They should al spawn at the same time in the same castle.
  87. // Is there a reason for this? Am I reading something wrong?
  88. OnClock0001:
  89. callfunc "F_GldTreas","aldeg_cas01","A01",$boxNumA01,$@bxA01,$@boxIdA01,1324,114,218,123,227,0;
  90. callfunc "F_GldTreas","aldeg_cas02","A02",$boxNumA02,$@bxA02,$@boxIdA02,1326,130,226,138,235,0;
  91. callfunc "F_GldTreas","aldeg_cas03","A03",$boxNumA03,$@bxA03,$@boxIdA03,1328,220,264,229,273,0;
  92. callfunc "F_GldTreas","aldeg_cas04","A04",$boxNumA04,$@bxA04,$@boxIdA04,1330,80,8,89,17,0;
  93. callfunc "F_GldTreas","aldeg_cas05","A05",$boxNumA05,$@bxA05,$@boxIdA05,1332,58,8,65,15,0;
  94. end;
  95. OnClock0002:
  96. callfunc "F_GldTreas","gefg_cas01","G01",$boxNumG01,$@bxG01,$@boxIdG01,1334,150,108,158,114,0;
  97. callfunc "F_GldTreas","gefg_cas02","G02",$boxNumG02,$@bxG02,$@boxIdG02,1336,136,112,145,118,0;
  98. callfunc "F_GldTreas","gefg_cas03","G03",$boxNumG03,$@bxG03,$@boxIdG03,1338,266,286,275,293,0;
  99. callfunc "F_GldTreas","gefg_cas04","G04",$boxNumG04,$@bxG04,$@boxIdG04,1340,112,114,119,123,0;
  100. callfunc "F_GldTreas","gefg_cas05","G05",$boxNumG05,$@bxG05,$@boxIdG05,1342,140,106,147,113,0;
  101. end;
  102. OnClock0003:
  103. callfunc "F_GldTreas","payg_cas01","Py01",$boxNumPy01,$@bxPy01,$@boxIdPy01,1344,286,4,295,13,0;
  104. callfunc "F_GldTreas","payg_cas02","Py02",$boxNumPy02,$@bxPy02,$@boxIdPy02,1346,140,140,148,149,0;
  105. callfunc "F_GldTreas","payg_cas03","Py03",$boxNumPy03,$@bxPy03,$@boxIdPy03,1348,154,164,162,173,0;
  106. callfunc "F_GldTreas","payg_cas04","Py04",$boxNumPy04,$@bxPy04,$@boxIdPy04,1350,142,44,151,51,0;
  107. callfunc "F_GldTreas","payg_cas05","Py05",$boxNumPy05,$@bxPy05,$@boxIdPy05,1352,152,128,160,135,0;
  108. end;
  109. OnClock0004:
  110. callfunc "F_GldTreas","prtg_cas01","Pt01",$boxNumPt01,$@bxPt01,$@boxIdPt01,1354,6,204,15,213,0;
  111. callfunc "F_GldTreas","prtg_cas02","Pt02",$boxNumPt02,$@bxPt02,$@boxIdPt02,1356,198,224,207,233,0;
  112. callfunc "F_GldTreas","prtg_cas03","Pt03",$boxNumPt03,$@bxPt03,$@boxIdPt03,1358,184,128,193,135,0;
  113. callfunc "F_GldTreas","prtg_cas04","Pt04",$boxNumPt04,$@bxPt04,$@boxIdPt04,1360,266,158,275,167,0;
  114. callfunc "F_GldTreas","prtg_cas05","Pt05",$boxNumPt05,$@bxPt05,$@boxIdPt05,1362,272,174,279,181,0;
  115. end;
  116. OnClock0005:
  117. callfunc "F_GldTreas","nguild_alde","N01",$boxNumN01,$@bxN01,$@boxIdN01,1324,114,218,123,227,0;
  118. callfunc "F_GldTreas","nguild_gef","N02",$boxNumN02,$@bxN02,$@boxIdN02,1334,150,108,158,114,0;
  119. callfunc "F_GldTreas","nguild_pay","N03",$boxNumN03,$@bxN03,$@boxIdN03,1344,286,4,295,13,0;
  120. callfunc "F_GldTreas","nguild_prt","N04",$boxNumN04,$@bxN04,$@boxIdN04,1354,6,204,15,213,0;
  121. end;
  122. }