poring_w01,90,113,0 script Emperium Breaker 1288,{ set .@emp_time,$empbrk_record; set .@emp_m,.@emp_time / 60000; set .@emp_s,.@emp_time / 1000; set .@emp_ms,.@emp_time / 10000; mes "[Emperium Breaker]"; mes "Current record holder is the Player ^5050A0"+$empbrk_master$+"^000000 ."; mes "With an time of ^000080"+.@emp_m+"^000000Minutes ^000080"+.@emp_s+"^000000Seconds ^000080"+.@emp_ms+"^000000Milliseconds until the Emperium got broke."; next; set .@time,empbrk_record; set .@m,.@time / 60000; set .@s,.@time / 1000; set .@ms,.@time / 10000; mes "[Emperium Breaker]"; mes "Your Own Record:"; mes "^000080"+.@m+"^000000m ^000080"+.@s+"^000000s ^000080"+.@ms+"^000000ms"; mes "[Emperium Breaker]"; mes "Would you like to try to set a new record?"; next; if (getgmlevel() >= 20) { menu "Standard Menu",-,"Reset",L_RO,"Reset Rooms",L_RR,"Cancel",L_C; menu "Yes",-,"No",L_C,"Reset",L_R; } else { menu "Yes",-,"No",L_C,"Reset",L_R; } cleararray .arena$[0],"",4; mes "[Emperium Breaker]"; if (getareausers("pvp_n_4-5",94,128,105,139)){ mes "Emp n° ^0000DF1 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^0000DF1 ^00A000 Free^000000"; set .arena$[0],"^0000DFEmperium^000000"; } if (getareausers("pvp_n_4-5",60,94,71,105)){ mes "Emp n° ^B05D002 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^B05D002 ^00A000 Free^000000"; set .arena$[1],"^B05D00Emperium^000000"; } if (getareausers("pvp_n_4-5",94,60,105,71)){ mes "Emp n° ^B00FB03 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^90AF003 ^00A000 Free^000000"; set .arena$[2],"^90AF00Emperium^000000"; } if (getareausers("pvp_n_4-5",128,94,139,105)){ mes "Emp n° ^50AF004 ^FF0000 Busy^000000"; }else{ mes "Emp n° ^500F004 ^00A000 Free^000000"; set .arena$[3],"^500F00Emperium^000000"; } next; switch (select(.arena$[0],.arena$[1],.arena$[2],.arena$[3],"Exit")){ case 1: if (getareausers("pvp_n_4-5",60,94,71,105) == 0){ if($@empr_occupied[0] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[0],1; set $@empbrk_charid[0],getcharid(0); warp "pvp_n_4-5",99,128; initnpctimer "EmpBrk#1"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 2: if (getareausers("pvp_n_4-5",60,94,71,105) == 0){ if($@empr_occupied[1] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[1],1; set $@empbrk_charid[1],getcharid(0); warp "pvp_n_4-5",68,99; initnpctimer "EmpBrk#2"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 3: if (getareausers("pvp_n_4-5",94,60,105,71) == 0){ if($@empr_occupied[2] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[2],1; set $@empbrk_charid[2],getcharid(0); warp "pvp_n_4-5",100,68; initnpctimer "EmpBrk#3"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 4: if (getareausers("pvp_n_4-5",128,94,139,105) == 0){ if($@empr_occupied[3] > 0){ mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; } close2; set $@empr_occupied[3],1; set $@empbrk_charid[3],getcharid(0); warp "pvp_n_4-5",130,99; initnpctimer "EmpBrk#4"; sc_end SC_ALL; end; } mes "[Emperium Breaker]"; mes "This room is currently occupied, please try again later."; close; case 5: close; } L_RO: mes "[Emperium Breaker]"; mes "Are you sure you want to reset the official record?"; next; menu "Yes",-,"No",L_C; set $empbrk_record,0; set $empbrk_master$,""; close; L_R: mes "[Emperium Breaker]"; mes "Are you sure you want to reset your record?"; next; menu "Yes",-,"No",L_C; set empbrk_record,0; close; L_RR: mes "[Emperium Breaker]"; mes "Rooms have been reset."; cleararray $@empr_occupied[0],0,4; close; L_C: close; } - script EmpBrk#1 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#1::OnEmpBreak"; end; OnTimer600000: warpchar "fcity",89,123,$@empbrk_charid[0]; killmonster "pvp_n_4-5","EmpBrk#1::OnEmpBreak"; set $@empr_occupied[0],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#1"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } set $@empr_occupied[0],0; areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "fcity",89,123,$@empbrk_charid[0]; end; OnInit: set .x1,94; set .y1,128; set .x2,105; set .y2,139; set .xe,100; set .ye,134; end; } pvp_n_4-5,99,125,0 script EmpBrk#1_touch -1,3,1,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",99,128; end; } - script EmpBrk#2 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#2::OnEmpBreak"; end; OnTimer600000: warpchar "fcity",89,123,$@empbrk_charid[1]; killmonster "pvp_n_4-5","EmpBrk#2::OnEmpBreak"; set $@empr_occupied[1],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#2"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "fcity",89,123,$@empbrk_charid[1]; set $@empr_occupied[1],0; end; OnInit: set .x1,60; set .y1,94; set .x2,71; set .y2,105; set .xe,65; set .ye,99; end; } pvp_n_4-5,74,99,0 script EmpBrk#2_touch -1,1,3,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",68,99; end; } - script EmpBrk#3 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#3::OnEmpBreak"; end; OnTimer600000: warpchar "fcity",89,123,$@empbrk_charid[2]; killmonster "pvp_n_4-5","EmpBrk#3::OnEmpBreak"; set $@empr_occupied[2],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#3"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "fcity",89,123,$@empbrk_charid[2]; set $@empr_occupied[2],0; end; OnInit: set .x1,94; set .y1,60; set .x2,105; set .y2,71; set .xe,99; set .ye,65; end; } pvp_n_4-5,100,74,0 script EmpBrk#3_touch -1,3,1,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",100,68; end; } - script EmpBrk#4 -1,{ OnTimer5000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area; end; OnTimer8000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area; end; OnTimer9000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area; end; OnTimer10000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area; end; OnTimer11000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area; end; OnTimer12000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area; end; OnTimer13000: areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area; monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#4::OnEmpBreak"; end; OnTimer600000: warpchar "fcity",89,123,$@empbrk_charid[3]; killmonster "pvp_n_4-5","EmpBrk#4::OnEmpBreak"; set $@empr_occupied[3],0; stopnpctimer; end; OnEmpBreak: stopnpctimer; set .current_time,getnpctimer(0,"EmpBrk#4"); set .new_time,.current_time - 13000; if (.new_time < empbrk_record || empbrk_record == 0) { areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area; set empbrk_record,.new_time; } if (.new_time < $empbrk_record || $empbrk_record == 0) { announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all; set $empbrk_record,.new_time; set $empbrk_master$,strcharinfo(0); } set .m,.new_time / 60000; set .s,.new_time / 1000; set .ms,.new_time / 10000; if(.m < 0){ set .m,0; } if(.s < 0){ set .s,0; } areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area; warpchar "fcity",89,123,$@empbrk_charid[3]; set $@empr_occupied[3],0; end; OnInit: set .x1,128; set .y1,94; set .x2,139; set .y2,105; set .xe,134; set .ye,99; end; } pvp_n_4-5,125,100,0 script EmpBrk#4_touch -1,1,3,{ OnTouch: mes "[Emperium Breaker]"; mes "You cannot exit your square!"; close2; warp "pvp_n_4-5",130,99; end; } pvp_n_4-5 mapflag nowarp 20 pvp_n_4-5 mapflag nowarpto 20 pvp_n_4-5 mapflag notrade 20 pvp_n_4-5 mapflag nochat 20 pvp_n_4-5 mapflag nocommand 20 pvp_n_4-5 mapflag novending 20 pvp_n_4-5 mapflag gvg_castle 20 pvp_n_4-5 mapflag nobranch 20 pvp_n_4-5 mapflag noicewall 20 pvp_n_4-5 mapflag noloot 20 pvp_n_4-5 mapflag nomemo 20 pvp_n_4-5 mapflag nosave 20 pvp_n_4-5 mapflag noreturn 20 pvp_n_4-5 mapflag pvp off 20 pvp_n_4-5 mapflag gvg 20