Hello. I tried the Queue BG rewrite by KUBIX link: http://herc.ws/board/topic/12349-queue-bg-rewrite/#entry71761 , but i have this problem with the Battle Recruiter NPC. What should i do please? i can't click on the npc. Thanks in advance! Here's the npc scrip and screenshot of the problem:
function script cleanBgQuests {for(.@i=8500;.@i<8511;.@i++)if((.@i!=8506&& questprogress(.@i, PLAYTIME)))
erasequest .@i;return;}- script Battle_Register FAKE_NPC,{end;OnJoinBG:
mes "^D2691E[Battle Requiter]^000000";
mes "Welcome to the Battleground register service.";next;if(select("Register:Close")==2) close;if( questprogress(8506, PLAYTIME))
erasequest 8506;elseif( questprogress(8506, PLAYTIME)==1){
mes "^D2691E[Battle Requiter]^000000";
mes "You are a Deserter. You can't participate until the indicator goes off";
close;}if( getcharid(4)){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in Battle Group.";
close;}.@qid1= queueiterator( $@Croix_Duplicate );.@qid2= queueiterator( $@Guill_Duplicate );for(.@i=0;.@i<.BG_Max[.Index];.@i++){if( qiget(.@qid1)==(.MultipleCheck==1? getcharid(0):getcharip())|| qiget(.@qid2)==(.MultipleCheck==1? getcharid(0):getcharip())){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue.";
close;}}
cleanBgQuests();switch(.Battle_State){default:case0:case2:
mes "^D2691E[Battle Requiter]^000000";
mes "Queue not available. Try again later or contact your administrator.";
close;case1:// idleif( getarraysize( $@Croix_QID )<.BG_Max[.Index]|| getarraysize( $@Guill_QID )<.BG_Max[.Index]){if( getarraysize( $@Croix_QID )> getarraysize( $@Guill_QID )){if(!queueadd( $@Guill_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()))){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue";
close;}
$@Guill_QID[ $@Guill ]= getcharid(3);
$@Guill ++;if(.debug )
debugmes strcharinfo(0)+" guillame";}elseif( getarraysize( $@Croix_QID )< getarraysize( $@Guill_QID )){if(!queueadd( $@Croix_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()))){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue";
close;}
$@Croix_QID[ $@Croix ]= getcharid(3);
$@Croix ++;if(.debug )
debugmes strcharinfo(0)+" croix";}else{if(!queueadd( $@Croix_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()))){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue";
close;}
$@Croix_QID[ $@Croix ]= getcharid(3);
$@Croix ++;if(.debug )
debugmes strcharinfo(0)+" croix";}
mes "^D2691E[Battle Requiter]^000000";
mes "Added to queue.";
close;}
mes "^D2691E[Battle Requiter]^000000";
mes "Queue is full";
close;case3:// Beginning, other can join.if( getarraysize( $@Croix_QID )<.BG_Max[.Index]|| getarraysize( $@Guill_QID )<.BG_Max[.Index]){if( getarraysize( $@Croix_QID )> getarraysize( $@Guill_QID )){if(!queueadd( $@Guill_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()))){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue";
close;}
$@Guill_QID[ $@Guill ]= getcharid(3);
$@Guill ++;if(.BG_Names$[.Index]=="Conquest")if( $@Guill_BG == getvariableofnpc(.Atacker,"Conquest"))
bg_single( $@Guill_BG,.BG_Map$[.Index],.BG_AtackerX,.BG_AtackerY );else bg_single( $@Guill_BG,.BG_Map$[.Index],.BG_DefenerX,.BG_DefenerY );else
bg_single( $@Guill_BG,.BG_Map$[.Index],.BG_GuillX[.Index],.BG_GuillY[.Index]);if(.debug )
debugmes strcharinfo(0)+" guillame";}elseif( getarraysize( $@Croix_QID )< getarraysize( $@Guill_QID )){if(!queueadd( $@Croix_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()))){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue";
close;}
$@Croix_QID[ $@Croix ]= getcharid(3);
$@Croix ++;if(.BG_Names$[.Index]=="Conquest")if( $@Croix_BG == getvariableofnpc(.Atacker,"Conquest"))
bg_single( $@Croix_BG,.BG_Map$[.Index],.BG_AtackerX,.BG_AtackerY );else bg_single( $@Croix_BG,.BG_Map$[.Index],.BG_DefenerX,.BG_DefenerY );else
bg_single( $@Croix_BG,.BG_Map$[.Index],.BG_CroixX[.Index],.BG_CroixY[.Index]);if(.debug )
debugmes strcharinfo(0)+" croix";}else{if(!queueadd( $@Croix_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()))){
mes "^D2691E[Battle Requiter]^000000";
mes "You already in queue";
close;}
$@Croix_QID[ $@Croix ]= getcharid(3);
$@Croix ++;if(.BG_Names$[.Index]=="Conquest")if( $@Croix_BG == getvariableofnpc(.Atacker,"Conquest"))
bg_single( $@Croix_BG,.BG_Map$[.Index],.BG_AtackerX,.BG_AtackerY );else bg_single( $@Croix_BG,.BG_Map$[.Index],.BG_DefenerX,.BG_DefenerY );else
bg_single( $@Croix_BG,.BG_Map$[.Index],.BG_CroixX[.Index],.BG_CroixY[.Index]);if(.debug )
debugmes strcharinfo(0)+" croix";}
mes "^D2691E[Battle Requiter]^000000";
mes "Added to queue.";
close;}
mes "^D2691E[Battle Requiter]^000000";
mes "Queue is full";
close;}OnInit:// = BG Rewards:
$@BG_RewardID =7773;// (War Badge)
$@BG_WinnerAmount =15;// Reward amount for winning team
$@BG_LooserAmount =10;// Reward amount for loosing team
$@BG_TieAmount =5;// Reward amount for Tie.// = Flavius Score (Kills for end game):
$@Flavius_Score =99;// ===== Multiple Windows checking by ?// = 1 - Disabled// = 2 - IP.MultipleCheck=1;// ===== BG Colors
setarray .BG_Color$[0],"0xDDA0DD","0x7CCD7C","0xFFA500";// ===== BG NPC & Arena Names
setarray .BG_Names$[0],"Rush","Flavius TD","Conquest";
setarray .BG_Arena$[0],"Rush","Flavius_TD","Conquest";// ===== BG Player Amount
setarray .BG_Min[0],2,2,2;
setarray .BG_Max[0],30,30,30;// ===== BG Locations
setarray .BG_Map$[0],"rush_cas04","bat_b03","schg_cas06";// ===== BG X/Y Coordinates
setarray .BG_GuillX[0],270,390,264;
setarray .BG_GuillY[0],292,10,379;
setarray .BG_CroixX[0],270,10,295;
setarray .BG_CroixY[0],288,290,379;
bindatcmd "joinbg", strnpcinfo(0)+"::OnJoinBG",0,99;
bindatcmd "leavebg", strnpcinfo(0)+"::OnLeaveBG",0,99;// ===== Time to flood in seconds..Flood_Time=180;// ===== Enable debug mode?.debug =false;
$@RegNPC$ = strnpcinfo(0)+"::OnBGRotate";OnBGRotate:if((.Index+=1)>( getarraysize(.BG_Names$ )-1)).Index=0;if( $@Croix_Duplicate ) queuedel $@Croix_Duplicate;if( $@Guill_Duplicate ) queuedel $@Guill_Duplicate;if( $@Guill_BG ) bg_destroy $@Guill_BG;if( $@Croix_BG ) bg_destroy $@Croix_BG;// ===== Queue with Gepard ID
$@Croix_Duplicate = queue();
$@Guill_Duplicate = queue();
deletearray $@Croix_QID[0], getarraysize( $@Croix_QID );
deletearray $@Guill_QID[0], getarraysize( $@Guill_QID );.Leavers=0;.Battle_State=1;.BG_Tick =0;.Player2Start=(.BG_Min[.Index]*2)-( queuesize( $@Croix_Duplicate )+ queuesize( $@Guill_Duplicate ));
announce "Battleground -- "+.BG_Names$[.Index]+" -- ("+.Player2Start+") more players to start.", bc_all,.BG_Color$[.Index];
initnpctimer;end;OnTimer30000:.Player2Start=(.BG_Min[.Index]*2)-( queuesize( $@Croix_Duplicate )+ queuesize( $@Guill_Duplicate ));if(.Player2Start<=0){if(.BG_Names$[.Index]=="Conquest"){
donpcevent "Conquest::OnSetRotation";.BG_Map$[.Index]= getvariableofnpc(.Castle$,"Conquest");.BG_GuillX[.Index]= getvariableofnpc(.GX,"Conquest");.BG_GuillY[.Index]= getvariableofnpc(.GY,"Conquest");.BG_CroixX[.Index]= getvariableofnpc(.CX,"Conquest");.BG_CroixY[.Index]= getvariableofnpc(.CY,"Conquest");.BG_DefenerX = getvariableofnpc(.DX,"Conquest");.BG_DefenerY = getvariableofnpc(.DY,"Conquest");.BG_AtackerX = getvariableofnpc(.AX,"Conquest");.BG_AtackerY = getvariableofnpc(.AY,"Conquest");}
$@Guill_BG = bg_create_team(.BG_Map$[.Index],.BG_GuillX[.Index],.BG_GuillY[.Index],.BG_Arena$[.Index]+"::OnGuillameQuit",.BG_Arena$[.Index]+"::OnGuillameDie");
$@Croix_BG = bg_create_team(.BG_Map$[.Index],.BG_CroixX[.Index],.BG_CroixY[.Index],.BG_Arena$[.Index]+"::OnCroixQuit",.BG_Arena$[.Index]+"::OnCroixDie");.Battle_State=2;
freeloop(1);for(.c =0;.c < getarraysize( $@Croix_QID );.c ++){if(!isloggedin( $@Croix_QID[.c ])).Leavers++;else bg_join_team( $@Croix_BG, $@Croix_QID[.c ]);}for(.g =0;.g < getarraysize( $@Guill_QID );.g ++){if(!isloggedin( $@Guill_QID[.g ])).Leavers++;else bg_join_team( $@Guill_BG, $@Guill_QID[.g ]);}
freeloop(0);
announce "Battleground -- "+.BG_Names$[.Index]+" -- Beginning.", bc_all,.BG_Color$[.Index];
donpcevent .BG_Arena$[.Index]+"::OnStartBattleground";.Battle_State=3;
stopnpctimer;end;}if(.BG_Flood < gettimetick(2)){.BG_Tick ++;if(.BG_Tick >=10){
stopnpctimer;
donpcevent strnpcinfo(0)+"::OnBGRotate";end;}
announce "Battleground -- "+.BG_Names$[.Index]+" -- ("+.Player2Start+") more players to start.", bc_all,.BG_Color$[.Index];.BG_Flood = gettimetick(2)+.Flood_Time;}
initnpctimer;end;
f
OnLeaveBG:.@Q_IT1= queueiterator( $@Croix_Duplicate );.@Q_IT2= queueiterator( $@Guill_Duplicate );if( qiget(.@Q_IT1)==(.MultipleCheck==1? getcharid(0):getcharip())){
queueremove( $@Croix_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()));for(.@a=0;.@a< getarraysize( $@Croix_QID );.@a++)if( $@Croix_QID[.@a]== getcharid(3))
deletearray $@Croix_QID[.@a],1;
$@Croix --;}elseif( qiget(.@Q_IT2)==(.MultipleCheck==1? getcharid(0):getcharip())){
queueremove( $@Guill_Duplicate,(.MultipleCheck==1? getcharid(0):getcharip()));for(.@a=0;.@a< getarraysize( $@Guill_QID );.@a++)if( $@Guill_QID[.@a]== getcharid(3))
deletearray $@Guill_QID[.@a],1;
$@Guill --;}else{
message strcharinfo(0),"You are not in queue.";end;}if( getcharid(4)){
bg_leave();
warp "SavePoint",0,0;}end;}
prontera,158,174,3 script BattleRecruiter#Main 4_EP16_SPIEGEL,{
doevent "Battle_Register::OnJoinBG";end;}// ==== NPC Duplicates
prontera,153,173,6 duplicate(BattleRecruiter#Main) Battle Recruiter#A 4_EP16_SPIEGEL
Hello. I tried the Queue BG rewrite by KUBIX link: http://herc.ws/board/topic/12349-queue-bg-rewrite/#entry71761 , but i have this problem with the Battle Recruiter NPC. What should i do please? i can't click on the npc. Thanks in advance! Here's the npc scrip and screenshot of the problem:

Edited by imustluvpainShare this post
Link to post
Share on other sites