Jump to content
  • 0

Problem with battleground


Olaf

Question


  • Group:  Members
  • Topic Count:  2
  • Topics Per Day:  0.00
  • Content Count:  6
  • Reputation:   0
  • Joined:  07/14/14
  • Last Seen:  

Hello ,

I am using Flavius Team Deathmatch,  the score won't decrease when someone (croix or guillaume) has been killed? the score still the same and i have 0 error i dont know how to fix that.

 

The script :

// ==============================================================================
// BattleGround System - Flavius TD - Flavius Team Deathmatch
// ==============================================================================
// By Suke / s4zuk3
// ==============================================================================
// Registration NPC's
// *********************************************************************
bat_room,150,158,4	script	Registration::Fl1R_Guillaume	418,{
	end;
OnInit:
	waitingroom "Battle Station 2 Players",2,"Flavius_BG1::OnGuillaumeJoin",1;
	end;
OnEnterBG:
	set $@FlaviusBG1_id1, waitingroom2bg("bat_b01",390,10,"Flavius_BG1::OnGuillaumeQuit","");
	end;
}

bat_room,155,158,0	script	Registration::Fl1R_Croix	414,{
	end;
OnInit:
	waitingroom "Battle Station 2 Players",2,"Flavius_BG1::OnCroixJoin",1;
	end;
OnEnterBG:
	set $@FlaviusBG1_id2, waitingroom2bg("bat_b01",10,290,"Flavius_BG1::OnCroixQuit","");
	end;
}
// Battleground Engine
// *********************************************************************
- script Flavius_BG1 -1,{
end;
OnInit:
disablenpc "Guillaume Vintenar#fl1";
disablenpc "Croix Vintenar#fl1";
disablenpc "Therapist in battle#fl11";
disablenpc "Therapist in battle#fl12";
end;
OnGuillaumeQuit:
OnCroixQuit:
	if($@FlaviusBG1 != 1) {end;}
	if(Bat_Team == 2) {
	for(set .@i,0; .@i < getarraysize($@bg_red$); set .@i,.@i+1){
	if($@bg_red$[.@i] == strcharinfo(0)) {break;}
	}
	deletearray $@bg_red$[.@i],1;
	set $@td_a,$@td_a-1;
	end;
	} else if(Bat_Team == 1) {
	for(set .@i,0; .@i < getarraysize($@bg_blue$); set .@i,.@i+1){
	if($@bg_blue$[.@i] == strcharinfo(0)) {break;}
	}
	deletearray $@bg_blue$[.@i],1;
	set $@td_b,$@td_b-1;
	end;
	}
	else { end; }
end;

OnGuillaumeJoin:
OnCroixJoin:
  if( $@FlaviusBG1 == 1 ){
if( $@Guill < 30 && $@Croi < 30){
set .@Guillaume, getwaitingroomstate(0,"Fl1R_Guillaume");
set .@Croix, getwaitingroomstate(0,"Fl1R_Croix");
if (.@Guillaume!=0 && .@Croix!=0){
set $@Guill, ($@Guill + 1);
set $@Croi, ($@Croi + 1);
waitingroom2bg_single($@FlaviusBG1_id1,"bat_b01",311,224,"Fl1R_Guillaume");
waitingroom2bg_single($@FlaviusBG1_id2,"bat_b01",87,75,"Fl1R_Croix");
mapannounce "bat_room","Battleground -- Flavius Team Deathmatch [80-99] G: " + $@Guill + "/30, C: " + $@Croi + "/30 in Progress!!",1,0x006400;
  end;
}
}
}
if( $@FlaviusBG1 == 0 ){
  donpcevent "Flavius_BG1::OnReadyCheck";
  end;
}
OnReadyCheck:
if( $@FlaviusBG1 )
  end;
set .@Guillaume, getwaitingroomstate(0,"Fl1R_Guillaume");
set .@Croix, getwaitingroomstate(0,"Fl1R_Croix");

	 if( .@Guillaume < 1 || .@Croix < 1 ){

if( .@Guillaume >=4  && .@Croix >=4 && !agitcheck() && $@FLTD_Flood < gettimetick(2) )
	{
	announce "Battleground -- Flavius Team Deathmatch [80-99] G: " + .@Guillaume + "/3, C: " + .@Croix + "/3",bc_all,0x006400;
	set $@FLTD_Flood, gettimetick(2) + 15;
	end;
	}
  mapannounce "bat_room","Battleground -- Flavius Team Deathmatch [80-99] G: " + .@Guillaume + "/3, C: " + .@Croix + "/3",1,0x006400;
  end;
}
//

  // BG Variables
set $@FlaviusBG1, 1;
set $@FlaviusBG1_Victory, 0;
set .Guillaume_Score, 99;
set .Croix_Score, 99;
// Prepare NPC
donpcevent "#gfl1_respawn::OnBGStart";
donpcevent "#cfl1_respawn::OnBGStart";
donpcevent "#fltd_regroup::OnBGStart";
enablenpc "Therapist in battle#fl11";
enablenpc "Therapist in battle#fl12";
disablenpc "Guillaume Vintenar#fl1";
disablenpc "Croix Vintenar#fl1";
// Build and Warp Teams
donpcevent "Fl1R_Guillaume::OnEnterBG";
donpcevent "Fl1R_Croix::OnEnterBG";
// Vamos contando :3
set $@Guill, 10;
set $@Croi, 10;
announce "Battleground -- Flavius Team Deathmatch [80-99] has started!",0,0x006400;
initnpctimer;
// Death!!
OnRoundStart:
if( $@FlaviusBG1 != 1 ) end;
bg_updatescore "bat_b01",.Guillaume_Score,.Croix_Score;
areapercentheal "bat_b01",382,2,397,17,100,100;
areapercentheal "bat_b01",2,282,17,297,100,100;
bg_warp $@FlaviusBG1_id1,"bat_b01",311,224;
bg_warp $@FlaviusBG1_id2,"bat_b01",87,75;
sleep 2000;
if( $@FlaviusBG1 != 1 ) end;
mapannounce "bat_b01","The Battle of Flavius Team Deathmatch has begun!!",1,0x006400;
bg_updatescore "bat_b01",.Guillaume_Score,.Croix_Score;
end;
OnPCDieEvent:
if( $@FlaviusBG1 == 1 )
{
	 getmapxy (mapname$,.@mapx,.@mapy,0,strcharinfo(0));
	 if ( mapname$ != "bat_b01") end;
	  if( Bat_Team == 1) {
	  set .Croix_Score, .Croix_Score -1;
	  bg_updatescore "bat_b01",.Guillaume_Score,.Croix_Score;
	  if (.Croix_Score < 1) donpcevent "Flavius_BG1::OnCroixTDWin";
	  end;
	  }
	  if ( Bat_Team == 2) {
		 set .Guillaume_Score, .Guillaume_Score -1;
		 bg_updatescore "bat_b01",.Guillaume_Score,.Croix_Score;
		 if (.Guillaume_Score < 1) donpcevent "Flavius_BG1::OnGuillaumeTDWin";
		 end;
		 }
	}
end;
OnGuillaumeTDWin:
set $@FlaviusBG1, 2;
set $@FlaviusBG1_Victory, 1;
mapannounce "bat_b01","The Guillaume Army has won the battle of Flavius Team Deathmatch",1,0x0000FF;
stopnpctimer;
sleep 2000;
donpcevent "Flavius_BG1::OnMatchEnd";
end;

OnCroixTDWin:
set $@FlaviusBG1, 2;
set $@FlaviusBG1_Victory, 2;
mapannounce "bat_b01","The Croix Army has won the battle of Flavius Team Deathmatch",1,0xFF0000;
stopnpctimer;
sleep 2000;
donpcevent "Flavius_BG1::OnMatchEnd";
end;

OnTimer900000:
	if ($@FlaviusBG1 != 1) end;
mapannounce "bat_b01","Battle of Flavius Team Deathmatch will ends in 5 minutes",1,0x006400;
end;
OnTimer1140000:
	if ($@FlaviusBG1 != 1) end;
mapannounce "bat_b01","Battle of Flavius Team Deathmatch will ends in 1 minute",1,0x006400;
end;
OnTimer1200000:
	if ($@FlaviusBG1 != 1) end;
if( .Croix_Score > .Guillaume_Score )
{
  mapannounce "bat_b01","The Croix army has won the Battle of Flavius Team Deathmatch!",1,0xFF0000;
  donpcevent "Flavius_BG1::OnCroixTDWin";
}
else if( .Croix_Score < .Guillaume_Score )
{
  mapannounce "bat_b01","The Guillaume army has won the Battle of Flavius Team Deathmatch!",1,0x0000FF;
  donpcevent "Flavius_BG1::OnGuillaumeTDWin";
}
else
{
  mapannounce "bat_b01","The Battle of Flavius Team Deathmatch is over. The time is out, this is a Tie",1,0x006400;
  set $@FlaviusBG1, 2;
  set $@FlaviusBG1_Victory, 3;
  stopnpctimer;
  sleep 2000;
}

OnMatchEnd:
donpcevent "#gfl1_respawn::OnBGStop";
donpcevent "#cfl1_respawn::OnBGStop";
donpcevent "#fltd_regroup::OnBGStop";
disablenpc "Therapist in battle#fl11";
disablenpc "Therapist in battle#fl12";
enablenpc "Guillaume Vintenar#fl1";
enablenpc "Croix Vintenar#fl1";
bg_warp $@FlaviusBG1_id1,"bat_b01",390,10;
bg_warp $@FlaviusBG1_id2,"bat_b01",10,290;
deletearray $@bg_red$;
	deletearray $@bg_blue$;
	set $@td_a,0;
	set $@td_b,0;
sleep 3000;
mapannounce "bat_b01","Battle of Flavius Team Deathmatch will close in 1 minute!",1,0x006400;
initnpctimer;
end;
OnTimer30000:
if( $@FlaviusBG1 == 2 )
  mapannounce "bat_b01","Battle of Flavius Team Deathmatch will close in 30 seconds!",1,0x006400;
end;
OnTimer50000:
if( $@FlaviusBG1 == 2 )
  mapannounce "bat_b01","Battle of Flavius Team Deathmatch will close in 10 seconds!",1,0x006400;
end;
OnTimer60000:
if( $@FlaviusBG1 != 2 ) end;
OnReset:
stopnpctimer;
set .Guillaume_Score, 99;
set .Croix_Score, 99;
set $@FlaviusBG1_Victory, 0;
// NPC's
disablenpc "Guillaume Vintenar#fl1";
disablenpc "Croix Vintenar#fl1";
disablenpc "Therapist in battle#fl11";
disablenpc "Therapist in battle#fl12";
if( $@FlaviusBG1_id1 ) { bg_destroy $@FlaviusBG1_id1; set $@FlaviusBG1_id1, 0; }
if( $@FlaviusBG1_id2 ) { bg_destroy $@FlaviusBG1_id2; set $@FlaviusBG1_id2, 0; }
sleep 1000;
mapwarp "bat_b01","bat_room",155,150;
sleep 2000;
bg_updatescore "bat_b01",.Guillaume_Score,.Croix_Score;
set $@FlaviusBG1, 0;
donpcevent "Flavius_BG1::OnReadyCheck";
end;
}

// View oponentes en el mapa <3
- script viewtd -,{
end;
OnPCLoadMapEvent:
	if($@FlaviusBG1 != 1) {end;}
	if(Bat_Team == 2) {
	getmapxy .@MAPNAME$,.@X,.@Y,0,strcharinfo(0);
	while(.@MAPNAME$ == "bat_b01"){
	if($@FlaviusBG1 != 1) {end;}
	getmapxy .@MAPNAME$,.@X,.@Y,0,strcharinfo(0);
	if(.@MAPNAME$ != "bat_b01") { end;}
	for(set .@i,0; .@i < getarraysize($@bg_red$); set .@i,.@i+1){
	if($@bg_red$[.@i] == strcharinfo(0)) { set .@ontd,1; break;}
	}
	if(.@ontd != 1) {
	setarray $@bg_red$[$@td_a],strcharinfo(0);
	set $@td_a,$@td_a+1; }
	set .@j,0;
	for (set .@i,0; .@i < getarraysize($@bg_blue$); set .@i,.@i+1){
		set .@j,.@j+1;
		getmapxy(.mapES$, .xI, .yI,0,$@bg_blue$[.@i]);
		viewpoint 1,.xI,.yI,.@j,0x0000ff;
	} // cierre for
	sleep2 1000;
	} // cierre while
	} else if(Bat_Team == 1) {
	getmapxy .@MAPNAME$,.@X,.@Y,0,strcharinfo(0);
	while(.@MAPNAME$ == "bat_b01"){
	if($@FlaviusBG1 != 1) {end;}
	getmapxy .@MAPNAME$,.@X,.@Y,0,strcharinfo(0);
	if(.@MAPNAME$ != "bat_b01") { end;}
	for(set .@i,0; .@i < getarraysize($@bg_blue$); set .@i,.@i+1){
	if($@bg_blue$[.@i] == strcharinfo(0)) { set .@ontd,1; break;}
	}
	if(.@ontd != 1) {
	setarray $@bg_blue$[$@td_b],strcharinfo(0);
	set $@td_b,$@td_b+1; }
	set .@j,0;
	for (set .@i,0; .@i < getarraysize($@bg_red$); set .@i,.@i+1){
		set .@j,.@j+1;
		getmapxy(.mapES$, .xE, .yE,0,$@bg_red$[.@i]);
		viewpoint 1,.xE,.yE,.@j,0xff0000;
	} // cierre for
	sleep2 1000;
	} // cierre while
	}
	else { end; }
	}
// Battleground rewards
// *********************************************************************
bat_b01,390,13,5 script Guillaume Vintenar#fl1 419,{
if( $@FlaviusBG1_Victory )
{
  if( $@FlaviusBG1_Victory == Bat_Team )
  { // Victory
   mes "[Swandery]";
   mes "Blessed Guillaume!!";
   mes "Let's enjoy our glorious victory!";
   mes "" + strcharinfo(0) + ", its a sign reflecting victory";
   close2;
   set .@Reward,18;
  }
  else
  { // Derrota
   mes "[Swandery]";
   mes "You lost, but you're dedicated to this battle.";
   mes "This is a reward for your great dedication by Guillaume Marollo!";
   mes "Just take this defeat a lesson, and later you would definitely learn.";
   close2;
   set .@Reward,6;
  }
  set Flavius_BG_Tick, gettimetick(2) + 300;  //setquest 2070;
  getitem 7829, .@Reward;
  set .@ontd,0;
  bg_leave;
  warp "bat_room",155,150;
  end;
}
end;
}
bat_b01,10,293,5 script Croix Vintenar#fl1 415,{
if( $@FlaviusBG1_Victory )
{
  if( $@FlaviusBG1_Victory == Bat_Team )
  { // Victory
   mes "[Swandery]";
   mes "Blessed Croax!!";
   mes "Let's enjoy our glorious victory!";
   mes "" + strcharinfo(0) + ", its a sign reflecting victory";
   close2;
   set .@Reward, 18;
  }
  else
  { // Derrota
   mes "[Swandery]";
   mes "Oh, " + strcharinfo(0) + ". Don't be sad.";
   mes "Even though we didn't win, we did our best.";
   mes "This is a Royal gift from Croix, and please don't forget this battle. We can win the next.";
   close2;
   set .@Reward, 6;
  }
  set Flavius_BG_Tick, gettimetick(2) + 300; //setquest 2070;
  getitem 7829, .@Reward;
  set .@ontd,0;
  bg_leave;
  warp "bat_room",155,150;
  end;
}
end;
}
// Battleground Therapist
// *********************************************************************
bat_b01,390,13,5 script Therapist in battle#fl12 95,{
mes "[Therapist in battle]";
mes "Just close your eyes, and take a deep breathe.";
mes "You can be free from pain.";
specialeffect2 312;
if (select("Close:Repairman")==1){
   close;
   }
next;
	callfunc "repairmain","Repairman";
end;
}
bat_b01,10,293,5 script Therapist in battle#fl11 95,{
mes "[Therapist in battle]";
mes "Just close your eyes, and take a deep breathe.";
mes "You can be free from pain.";
specialeffect2 312;
if (select("Close:Repairman")==1){
   close;
   }
next;
	callfunc "repairmain","Repairman";
end;
}
// Battleground Respawn and Regroup
// *********************************************************************
- script #fltd_regroup -1,{
end;
OnBGStart:
	initnpctimer;
	end;
OnBGStop:
	stopnpctimer;
	end;
OnTimer150000:
	mapannounce "bat_b01","Regroup Team in 30 Seconds...",1,0x006400;
	end;
OnTimer175000:
	mapannounce "bat_b01","Regroup Team in 5 Seconds...",1,0x006400;
	end;
OnTimer180000:
	mapannounce "bat_b01","Regroup Team!!",1,0x006400;
	bg_warp $@FlaviusBG1_id1,"bat_b01",328,150;
bg_warp $@FlaviusBG1_id2,"bat_b01",62,150;
initnpctimer;
end;
}
bat_b01,390,10,0 script #gfl1_respawn 139,{
end;
OnBGStart:
initnpctimer;
end;
OnBGStop:
stopnpctimer;
end;
OnTimer9000:
misceffect 83;
end;
OnTimer10000:
areapercentheal "bat_b01",382,2,397,17,100,100;
set .@mapx,rand(309,327);
set .@mapy,rand(141,159);
areawarp "bat_b01",382,2,397,17,"bat_b01",.@mapx,.@mapy;
initnpctimer;
end;
}
bat_b01,10,290,0 script #cfl1_respawn 139,{
end;
OnBGStart:
initnpctimer;
end;
OnBGStop:
stopnpctimer;
end;
OnTimer9000:
misceffect 83;
end;
OnTimer10000:
areapercentheal "bat_b01",2,282,17,297,100,100;
set .@mapx,rand(72,91);
set .@mapy,rand(141,159);
areawarp "bat_b01",2,282,17,297,"bat_b01",.@mapx,.@mapy;
initnpctimer;
end;
}
// Flags
// *********************************************************************
bat_b01,304,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat1 973
bat_b01,319,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat2 973
bat_b01,304,218,1 duplicate(Guillaume camp#bat) Guillaume camp#bat3 973
bat_b01,319,218,1 duplicate(Guillaume camp#bat) Guillaume camp#bat4 973
bat_b01,304,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat5 973
bat_b01,304,231,1 duplicate(Guillaume camp#bat) Guillaume camp#bat6 973
bat_b01,335,142,1 duplicate(Guillaume camp#bat) Guillaume camp#bat7 973
bat_b01,335,157,1 duplicate(Guillaume camp#bat) Guillaume camp#bat8 973
bat_b01,390,16,1 duplicate(Guillaume camp#bat) Guillaume camp#bat9 973
bat_b01,292,163,1 duplicate(Guillaume camp#bat) Guillaume camp#bat19 973
bat_b01,292,136,1 duplicate(Guillaume camp#bat) Guillaume camp#bat20 973
bat_b01,241,185,1 duplicate(Guillaume camp#bat) Guillaume camp#bat21 973
bat_b01,247,179,1 duplicate(Guillaume camp#bat) Guillaume camp#bat22 973
bat_b01,96,81,1 duplicate(Croix camp#bat) Croix camp#bat1 974
bat_b01,96,68,1 duplicate(Croix camp#bat) Croix camp#bat2 974
bat_b01,79,81,1 duplicate(Croix camp#bat) Croix camp#bat3 974
bat_b01,79,68,1 duplicate(Croix camp#bat) Croix camp#bat4 974
bat_b01,96,81,1 duplicate(Croix camp#bat) Croix camp#bat5 974
bat_b01,96,81,1 duplicate(Croix camp#bat) Croix camp#bat6 974
bat_b01,59,164,1 duplicate(Croix camp#bat) Croix camp#bat7 974
bat_b01,59,137,1 duplicate(Croix camp#bat) Croix camp#bat8 974
bat_b01,10,296,1 duplicate(Croix camp#bat) Croix camp#bat9 974
bat_b01,110,162,1 duplicate(Croix camp#bat) Croix camp#bat18 974
bat_b01,110,137,1 duplicate(Croix camp#bat) Croix camp#bat19 974
bat_b01,152,120,1 duplicate(Croix camp#bat) Croix camp#bat20 974
bat_b01,158,114,1 duplicate(Croix camp#bat) Croix camp#bat21 974
// MapFlags
// *********************************************************************
bat_b01 mapflag battleground 2
bat_b01 mapflag nomemo
bat_b01 mapflag nosave SavePoint
bat_b01 mapflag noteleport
bat_b01 mapflag nowarp
bat_b01 mapflag nowarpto
bat_b01 mapflag noreturn
bat_b01 mapflag nobranch
bat_b01 mapflag nopenalty
bat_b01 mapflag loadevent
// ***********************************************************************

Or there is an another script for battleground death match ?

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...