HOW TO REMOVE THE MONSTER AND CRSYTAL ??? i want party vs party only PLEASE HELP ME .
- script bg_emp#control -1,{OnInit: setarray .rewarditem, 29003, 5; // reward to the winning team set .winningscore, 3; // final score to win set .eventlasting, 20 * 60; // abort the system if there's no progress, 20 mins * seconds set .register_lasting, 1 * 60; // 3 minutes to joins, else abort registration, 10 mins * seconds sleep 1; disablenpc .rednpcname$; disablenpc .bluenpcname$; end;OnStart: if ( getwaitingroomstate( 0, .rednpcname$ ) < .minplayer2start || getwaitingroomstate( 0, .bluenpcname$ ) < .minplayer2start ) end; set .red, waitingroom2bg( "bat_a01", 171,346, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead", .rednpcname$ ); copyarray .team1aid, $@arenamembers, $@arenamembersnum; set .blue, waitingroom2bg( "bat_a01", 162,50, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead", .bluenpcname$ ); copyarray .team2aid, $@arenamembers, $@arenamembersnum; .inprogress = 2; bg_warp .red, "bat_a01", 171,346; bg_warp .blue, "bat_a01", 162,50; setwall "bat_a01", 154,51, 6, 4, 0, "bg_emp_town_blue"; setwall "bat_a01", 164,347, 6, 4, 0, "bg_emp_town_red"; bg_updatescore "bat_a01", 0, 0; sleep 6000; if ( .inprogress == 0 ) goto L_Abort; mapannounce "bat_a01", "Rules are simple. The first one to break the opponent's emperium will get a score.", 0; sleep 3000; if ( .inprogress == 0 ) goto L_Abort; mapannounce "bat_a01", "Score "+ .winningscore +" rounds to win ! ... GET READY", 0; sleep 2000; if ( .inprogress == 0 ) goto L_Abort; while (1) { for ( .@i = 5; .@i > 0; .@i-- ) { mapannounce "bat_a01", .@i +"", 0; sleep 1000; if ( .inprogress == 0 ) goto L_Abort; } if ( .score[1] == .winningscore -1 && .score[2] == .winningscore -1 ) mapannounce "bat_a01", "Final Round start!", 0; else mapannounce "bat_a01", "Round "+ .round++ +" start!", 0; bg_monster .red,"bat_a01",157,346, "--ja--",1915, strnpcinfo(3)+"::OnRedDown"; bg_monster .blue,"bat_a01",148,50, "--ja--",1914, strnpcinfo(3)+"::OnBlueDown"; bg_monster .red,"bat_a01",171,346, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",171,346, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",171,346, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",162,50, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",162,50, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",162,50, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; //Outside bg_monster .red,"bat_a01",193,271, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",193,271, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",193,271, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",177,123, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",177,123, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",177,123, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; //Outside Left Side bg_monster .red,"bat_a01",279,235, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",279,235, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",279,235, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",279,235, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",279,235, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .red,"bat_a01",279,235, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",268,163, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",268,163, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",268,163, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",268,163, "--ja--",1285, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",268,163, "--ja--",1286, strnpcinfo(3)+"::Onguardian"; bg_monster .blue,"bat_a01",268,163, "--ja--",1287, strnpcinfo(3)+"::Onguardian"; delwall "bg_emp_town_red"; delwall "bg_emp_town_blue"; sleep .eventlasting * 1000; if ( .inprogress == 0 ) goto L_Abort; .score[ .winside ]++; bg_updatescore "bat_a01", .score[1], .score[2]; killmonster "bat_a01", strnpcinfo(3)+"::OnRedDown"; killmonster "bat_a01", strnpcinfo(3)+"::OnBlueDown"; killmonster "bat_a01", strnpcinfo(3)+"::Onguardian"; if ( .winside ) mapannounce "bat_a01", .empkiller$ +" has Destroy "+( ( .winside == 1 )?"Blue":"Red" )+"'s side Emperium. "+( ( .winside == 1 )?"Red":"Blue" )+" team score a point !", 0; if ( .score[1] == .winningscore || .score[2] == .winningscore || !.winside ) break; sleep 5000; if ( .inprogress == 0 ) goto L_Abort; bg_warp .red, "bat_a01", 171,346; bg_warp .blue, "bat_a01", 162,50; setwall "bat_a01", 154,51, 6, 4, 0, "bg_emp_town_blue"; setwall "bat_a01", 164,347, 6, 4, 0, "bg_emp_town_red"; .winside = 0; } if ( .winside ) { mapannounce "bat_a01", ( ( .winside == 1 )?"Red":"Blue" )+" side wins !", 0; .@size = getarraysize( getd(".team"+ .winside +"aid") ); for ( .@i = 0; .@i < .@size; .@i++ ) getitem .rewarditem[0], .rewarditem[1], getd(".team"+ .winside +"aid["+ .@i +"]" ); goto L_Abort; } else mapannounce "bat_a01", "Time Out. Aborting the match.", 0; goto L_Abort; sleep 5000;L_Abort: bg_warp .red, "prontera", 155,182; bg_warp .blue, "prontera", 158,182; bg_destroy .red; bg_destroy .blue; set $@startE,0; set $@TeamRed,0; set $@TeamBlue,0; killmonster "bat_a01", strnpcinfo(3)+"::OnRedDown"; killmonster "bat_a01", strnpcinfo(3)+"::OnBlueDown"; killmonster "bat_a01", strnpcinfo(3)+"::Onguardian"; delwall "bg_emp_town_red"; delwall "bg_emp_town_blue"; deletearray .team1aid; deletearray .team2aid; .round = .winside = .score[2] = .score[1] = .inprogress = 0; end;OnRedDown: callsub L_EmpDown, 2;OnBlueDown: callsub L_EmpDown, 1;L_EmpDown: .empkiller$ = strcharinfo(0); .winside = getarg(0); awake strnpcinfo(3);OnRedDead:OnBlueDead: sleep2 1500; percentheal 100,100; sc_start SC_BASILICA,5000,1; end;Onguardian: end;OnRedQuit: callsub L_quit, .red, "Red", "Blue", 2;OnBlueQuit: callsub L_quit, .blue, "Blue", "Red", 1;L_quit: if ( bg_get_data( getarg(0), 0 ) ) end; mapannounce "bat_a01", "All "+ getarg(1) +" team members has Quit ! "+ getarg(2) +" side wins !", 0; .@size = getarraysize( getd(".team"+ getarg(3) +"aid") ); for ( .@i = 0; .@i < .@size; .@i++ ) getitem .rewarditem[0], .rewarditem[1], getd(".team"+ getarg(3) +"aid["+ .@i +"]" ); goto L_Abort;OnAutoAbort: sleep .register_lasting * 1000; delwaitingroom .rednpcname$; delwaitingroom .bluenpcname$; disablenpc .rednpcname$; disablenpc .bluenpcname$; set $@startE,0; set $@TeamRed,0; set $@TeamBlue,0; mapwarp "quiz_01","prontera",156,191; if ( .inprogress == 1 ) { .inprogress = 0; announce "battleground has self-aborted because not enough members", 0; } end;}gonryun,151,110,6 script Crystal Wars::crystalwar 456,{ if (getgmlevel() >= 99){ menu "Register Team",standard,"Reset",lend; }standard: set .@a,7; // number of party members change this to your party size you want set $@members,7; // number of party members change this to your party size you want set getvariableofnpc( .minplayer2start, "bg_emp#control" ), .@a; enablenpc getvariableofnpc( .rednpcname$, "bg_emp#control" ); enablenpc getvariableofnpc( .bluenpcname$, "bg_emp#control" ); donpcevent getvariableofnpc( .rednpcname$, "bg_emp#control" ) +"::OnStart"; donpcevent getvariableofnpc( .bluenpcname$, "bg_emp#control" ) +"::OnStart"; set getvariableofnpc( .inprogress, "bg_emp#control" ), 1; set $@startE,0; getpartymember(getcharid(1)); set @partymembercount,$@partymembercount; if ( $@startE == 1 ) { mes "The Sign Ups are currently unavailable because a match is in progress. Don't hesitate to try again in a few minutes!"; close; } if ( @partymembercount == $@members ) { if ( $@TeamRed == getcharid(1) ) { mes "Do you wish to sign out your team in crystal wars?"; next; if (select("I Give up ~.","Never Say Quit !!")==2) close; announce "Team 1 : [ " + getpartyname($@TeamRed) + " ] has sign out. We need another Party to sign up now!",bc_yellow|bc_map; set $@TeamRed, 0; close; } if ($@TeamID2==getcharid(1)) { mes "Do you wish to sign out your team in crystal wars?"; next; if (select("I Give up ~.","Never Say Quit !!")==2) close; announce "Team 2 : [ " + getpartyname($@TeamBlue) + " ] has sign out. We need another Party to sign up now!",bc_yellow|bc_map; set $@TeamBlue, 0; close; } mes "Hello "+strcharinfo(0)+" what do you want?"; if (($@TeamRed!=0) && ($@TeamBlue!=0)) { mes "The Sign Ups are currently unavailable because a match is in progress. Don't hesitate to try again in a few minutes!"; close; } if ( getpartyleader(getcharid(1),2) != getcharid(0) ) { mes "Only party leader have the right to sign up / out from the game with me.."; close; } mes "Choose your team to register."; switch(select("Red Team - [" + GetPartyName($@TeamRed) + "] :Blue Team - [" + GetPartyName($@TeamBlue) + "]")) { case 1: mes "[ Crystal War ]"; if ($@TeamRed==0 || getpartyname($@TeamRed)=="null") { getpartymember(getcharid(1)),1; getpartymember(getcharid(1)),2; copyarray $@partymembercidt1[0],$@partymembercid[0],$@members; copyarray $@partymemberaidt1[0],$@partymemberaid[0],$@members; for (set .@i,0; .@i<$@members; set .@i,.@i+1) { if(isloggedin($@partymemberaidt1[.@i],$@partymembercidt1[.@i])) set .@count,.@count+1; } if(.@count < $@members) { mes "You need all your party members to be online to Register"; close; } set $@TeamRed, getcharid(1); initnpctimer; mes "Your Party is now subscribed, good luck!"; announce "Team 1 : [ " +getpartyname($@TeamRed)+ " ] has sign up For the Crystal Wars!",bc_blue|bc_map; donpcevent "bg_emp#control::OnAutoAbort"; doevent "crystalwar::OnSubscriptionTeam"; close; } else { mes "I'm sorry! Another Team has sign up before you..."; close; } case 2: mes "[ Crystal War ]"; if ($@TeamBlue==0 || getpartyname($@TeamBlue)=="null") { getpartymember(getcharid(1)),1; getpartymember(getcharid(1)),2; copyarray $@partymembercidt2[0],$@partymembercid[0],$@members; copyarray $@partymemberaidt2[0],$@partymemberaid[0],$@members; for (set .@i,0; .@i<$@members; set .@i,.@i+1) { if(isloggedin($@partymemberaidt2[.@i],$@partymembercidt2[.@i])) set .@count,.@count+1; } if(.@count < $@members) { mes "You need all your party members to be online to Register"; close; } set $@TeamBlue, getcharid(1); initnpctimer; mes "Your Party is now subscribed, good luck!"; announce "Team 2 : [ " +getpartyname($@TeamBlue)+ " ] has sign up For the Crystal Wars!",bc_blue|bc_map; donpcevent "bg_emp#control::OnAutoAbort"; doevent "crystalwar::OnSubscriptionTeam"; close; } else { mes "I'm sorry! Another Team has sign up before you..."; close; } } } else { mes "[Event Handler]"; mes "Please contact your party leader."; mes "Your team must have a party consisting of "+$@members+" members."; close; }OnSubscriptionTeam: getpartymember($@TeamBlue),1; getpartymember($@TeamBlue),2; copyarray $@partymembercidtc2[0],$@partymembercid[0],$@members; copyarray $@partymemberaidc2[0],$@partymemberaid[0],$@members; for (set .@i,0; .@i<$@members; set .@i,.@i+1) { if(isloggedin($@partymemberaidc2[.@i],$@partymembercidtc2[.@i])) set .@countx,.@countx+1; } if(.@countx < $@members) { announce "Crystal War : "+getpartyname($@TeamBlue)+"are not all online the match has been canceled",0; announce "Crystal War : Registration for [2] New Team is now Available",0; goto lend; } if ( $@TeamBlue && $@partymembercount != $@members ) { announce getpartyname($@TeamBlue) +" has extra party members, Registration is now Reset!", 0; goto lend; } getpartymember($@TeamRed),1; getpartymember($@TeamRed),2; copyarray $@partymembercidtc1[0],$@partymembercid[0],$@members; copyarray $@partymemberaidc1[0],$@partymemberaid[0],$@members; for (set .@i,0; .@i<$@members; set .@i,.@i+1) { if(isloggedin($@partymemberaidc1[.@i],$@partymembercidtc1[.@i])) set .@countz,.@countz+1; } if(.@countz < $@members) { announce "Crystal War : "+getpartyname($@TeamRed)+"are not all online the match has been canceled",0; announce "Crystal War : Registration for [2] New Team is now Available",0; goto lend; } if ( $@TeamRed && $@partymembercount != $@members ) { announce getpartyname($@TeamRed) +" has extra party members !", 0; goto lend; } if($@TeamRed!=0 && $@TeamBlue!=0){ announce "Crystal War : We have 2 Teams signed up now : "+getpartyname($@TeamRed)+" and "+getpartyname($@TeamBlue)+".",bc_blue|bc_map; warpparty "quiz_01",37,74,$@TeamRed; warpparty "quiz_01",73,73,$@TeamBlue; setcell "quiz_01",34,81,40,81,cell_walkable,0; setcell "quiz_01",70,81,76,81,cell_walkable,0; } end;lend: stopnpctimer; set $@TeamRed,0; set $@TeamBlue,0; set $@startE,0; set @partymembercount,$@members; awake "bg_emp#control"; killmonster "bat_a01", strnpcinfo(3)+"::OnRedDown"; killmonster "bat_a01", strnpcinfo(3)+"::OnBlueDown"; delwaitingroom getvariableofnpc( .rednpcname$, "bg_emp#control" ); delwaitingroom getvariableofnpc( .bluenpcname$, "bg_emp#control" ); disablenpc getvariableofnpc( .rednpcname$, "bg_emp#control" ); disablenpc getvariableofnpc( .bluenpcname$, "bg_emp#control" ); announce "Thanks for playing",0; end;}quiz_01,37,74,5 script Red side#bg_emp 100,{ end;OnStart: waitingroom "Red side", getvariableofnpc( .minplayer2start, "bg_emp#control" ) +1, "bg_emp#control::OnStart", getvariableofnpc( .minplayer2start, "bg_emp#control" ); end;OnInit: set getvariableofnpc( .rednpcname$, "bg_emp#control" ), strnpcinfo(0); end;}quiz_01,73,76,5 script Blue side#bg_emp 100,{ end;OnStart: waitingroom "Blue side", getvariableofnpc( .minplayer2start, "bg_emp#control" ) +1, "bg_emp#control::OnStart", getvariableofnpc( .minplayer2start, "bg_emp#control" ); end;OnInit: set getvariableofnpc( .bluenpcname$, "bg_emp#control" ), strnpcinfo(0); end;}bat_a01 mapflag battleground 2bat_a01 mapflag nosave SavePointbat_a01 mapflag nowarpbat_a01 mapflag nowarptobat_a01 mapflag noteleportbat_a01 mapflag nomemobat_a01 mapflag nopenaltybat_a01 mapflag nobranchbat_a01 mapflag noicewall
Edited by Mhalicot Title has been Modified, Please read Hercules rules for more info.
HOW TO REMOVE THE MONSTER AND CRSYTAL ??? i want party vs party only PLEASE HELP ME .
Edited by MhalicotTitle has been Modified, Please read Hercules rules for more info.
Share this post
Link to post
Share on other sites