Jump to content
  • 0

Party vs Party Help Pls.


xilence01

Question


  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  177
  • Reputation:   4
  • Joined:  05/23/12
  • Last Seen:  

Hello rAthena, can anyone edit this script? I want the party who chooses "red team" will changes the party member's @ccolor to "520" and the party who chooses "blue team" will changes the party member's @ccolor to "521".

Hope you understand me. Thanks.

//===== eAthena Script =======================================//
//= Party vs Party Npc			//
//===== Originally By: =======================================//
//= icabit69			  //
//===== Credits for help goes to: ============================//
//= Rahuldev345							  //
//= Emistry			   //
//===== Edited by: ===========================================//
//= MrVandalBus			  //
//==============================================================//
//Warning! Dont edit unless you know what you are doing!
//Updates:
//* Fix the prize after the battle (Map 'valkyrie' instead of 'bat_b01')
//* Easier to edit
//* If the team loses, the players will be ressurected (If dead of course)
//* Bug Exploit Thingy (only Lvl 60 GM can warp to there)
valkyrie,49,49,0 script teamwarprize -1,2,2,{
OnTouch:
getitem 20078,15; //edit the prize <item>,<amount>
warp "prontera",156,191;
close;
}
prontera,155,166,4 script Party vs Party (5v5)::teamwar 796,{
if (getgmlevel() >= 99){
menu "standard menu",standard,"reset",lend1;
}
standard:
set $@members,5; // number of party members change this to your party size you want
set $@start,0;
getpartymember(getcharid(1));
set @partymembercount,$@partymembercount;
if ( $@start==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) {
 mes "Hello "+strcharinfo(0)+" what do you want?";
 if (($@TeamID1!=0) && ($@TeamID2!=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($@TeamID1) + "] :Blue Team - [" + GetPartyName($@TeamID2) + "]"))
{
case 1: mes "[  Team War  ]";
  if ($@TeamID1==0 || getpartyname($@TeamID1)=="null")
  {
   getpartymember(getcharid(1)),1;
   getpartymember(getcharid(1)),2;
   copyarray $@partymembercidt1[0],$@partymembercid[0],$@members;
   copyarray $@partymemberaid1[0],$@partymemberaid[0],$@members;
	for (set .@i,0; .@i<$@members; set .@i,.@i+1) {
	 if(isloggedin($@partymemberaid1[.@i],$@partymembercidt1[.@i]))  set .@count,.@count+1;
	}
	if(.@count < $@members) {
	 mes "You need all your party members to be online to Register";
	 close;
	}
   set $@TeamID1, getcharid(1);
   initnpctimer;
   mes "Your Party is now subscribed, good luck!";
   announce "Team 1 : [ " +getpartyname($@TeamID1)+ " ] has sign up For the Team War!",bc_blue|bc_map;
   doevent "teamwar::OnSubscriptionTeam";
   close;
  } else {
   mes "I'm sorry! Another Team has sign up before you...";
   close;
  }
case 2: mes "[  Team War  ]";
 if ($@TeamID2==0 || getpartyname($@TeamID2)=="null")
 {
  getpartymember(getcharid(1)),1;
  getpartymember(getcharid(1)),2;
  copyarray $@partymembercidt2[0],$@partymembercid[0],$@members;
  copyarray $@partymemberaid2[0],$@partymemberaid[0],$@members;
   for (set .@i,0; .@i<$@members; set .@i,.@i+1) {
	if(isloggedin($@partymemberaid2[.@i],$@partymembercidt2[.@i])) set .@count,.@count+1;
   }
   if(.@count < $@members) {
	mes "You need all your party members to be online to Register";
	close;
   }
  set $@TeamID2, getcharid(1);
  initnpctimer;
  mes "Your Party is now subscribed, good luck!";
  announce "Team 2 : [ " +getpartyname($@TeamID2)+ " ] has sign up For the Team War!",bc_blue|bc_map;
  doevent "teamwar::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($@TeamID2),1;
 getpartymember($@TeamID2),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 "Team War : "+getpartyname($@TeamID2)+"are not all online the match has been canceled",0;
 announce "Team War : registration for 2 new teams are now available",0;
 goto lend;
 close;
 }
 getpartymember($@TeamID1),1;
 getpartymember($@TeamID1),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 "Team War : "+getpartyname($@TeamID1)+"are not all online the match has been canceled",0;
 announce "Team War : registration for 2 new teams are now available",0;
 goto lend;
 close;
 }
if($@TeamID1!=0 && $@TeamID2!=0){
 announce "Team War : We have 2 Teams signed up now : "+getpartyname($@TeamID1)+" and "+getpartyname($@TeamID2)+".",bc_blue|bc_map;
 set @win1, 0;
 set @win2, 0;
 goto Onstart;
}
end;
OnTimer50000:
if (($@TeamID1!=0) && ($@TeamID2!=0)) {
 end;
}
stopnpctimer;
set $@TeamID1, 0;
set $@TeamID1, 0;
announce "Team War : we lack teams to start registration for two teams are now available",0;
end;

OnStart:
warpparty "guild_vs4",7,49,$@TeamID1;
warpparty "guild_vs4",92,49,$@TeamID2;
set $@start,1;
end;
lend:
stopnpctimer;
set $@TeamID1,0;
set $@TeamID2,0;
set $@start,0;
set @win1,0;
set @win2,0;
set @partymembercount,$@members;
end;
lend1:
stopnpctimer;
set $@TeamID1,0;
set $@TeamID2,0;
set $@start,0;
set @win1,0;
set @win2,0;
set @partymembercount,$@members;
announce "Team War has been reset, you may register your team now",0;
close;
end;
OnTimer250000:
Announce "Team War : No Party won due to time limit!",0;
mapwarp "guild_vs4","prontera",156,203;
goto lend;
end;

OnPCDieEvent:
OnPCLogoutEvent:
if(strcharinfo(3) != "guild_vs4") end;
warp "prontera",156,203;
 for(set .@i, 0; .@i < $@members; set .@i, .@i + 1) {
  if ( $@partymembercidt1[.@i] == getcharid(0)) {
deletearray $@partymembercidt1[.@i], 1;
if( getarraysize($@partymembercidt1) == 0 ) {
 set @win2,$@partymembercount;
 goto onwin;
}
  }
  if ( $@partymembercidt2[.@i] == getcharid(0) ) {
deletearray $@partymembercidt2[.@i], 1;
if( getarraysize($@partymembercidt2)  == 0 ) {
 set @win1,$@partymembercount;
 goto onwin;
}
  }
 }
end;

onwin:
if (@win1==0)
{
 warpparty "valkyrie",49,49,$@TeamID2;
 warpparty "valkyrie",45,45,$@TeamID1;
 Announce "Team War :"+GetPartyName($@TeamID2)+" won againts "+GetPartyName($@TeamID1)+"",0;
 goto lend;
 end;
}
if (@win2==0)
{
 warpparty "valkyrie",49,49,$@TeamID1;
 warpparty "valkyrie",45,45,$@TeamID2;
 Announce "Team War :"+GetPartyName($@TeamID1)+" won againts "+GetPartyName($@TeamID2)+"",0;
 goto lend;
 end;
}
end;
}
guild_vs4 mapflag nosave
guild_vs4 mapflag nomemo
guild_vs4 mapflag nobranch
guild_vs4 mapflag pvp_noguild
guild_vs4 mapflag nocommand 60
guild_vs4 mapflag noicewall
guild_vs4 mapflag pvp
valkyrie mapflag nosave
valkyrie mapflag nomemo
valkyrie mapflag nobranch
valkyrie mapflag nocommand 60
valkyrie mapflag pvp_noparty
valkyrie mapflag nowarpto 99 //Change the GM level if you desire to
valkyrie mapflag nowarp 99 //Change the GM level if you desire to
valkyrie,45,45,0 script alive -1,2,2,{
OnTouch:
atcommand "@alive";
warp "prontera",156,191;
close;
}

PS: Sorry for Bad english.

BTW: ( @ccolor 520 = red ) and ( @ccolor 521 = blue ) in my server palletes.

BUMP

Edited by Emistry
Please use [CODEBOX] or Attachments for long contents.
Link to comment
Share on other sites

9 answers to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  60
  • Topics Per Day:  0.01
  • Content Count:  562
  • Reputation:   219
  • Joined:  11/22/11
  • Last Seen:  

setlook <look type>,<look value>;

if(isloggedin($@partymemberaidc2[.@i],$@partymembercidtc2[.@i])) set .@countx,.@countx+1;

--->

if(attachrid($@partymemberaidc2[.@i],$@partymembercidtc2[.@i])){ set .@countx,.@countx+1; setlook...}

---

just want to show attachrid and setlook

yes, I know my answer isn't good, but I'm lazy to answer completely. :3

Edited by goddameit
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  177
  • Reputation:   4
  • Joined:  05/23/12
  • Last Seen:  

setlook <look type>,<look value>;

can you give some example for this ser?

change cloth color to "520"

is this correct?

setlook 7,520; ?

does this command compatible with eathena?

thanks for your answer

setlook <look type>,<look value>;

can you give some example for this ser?

change cloth color to "520"

is this correct?

setlook 7,520; ?

does this command compatible with eathena?

thanks for your answer

Oh i get it. thanks

i just added setlook after

copyarray $@partymemberaid1[0],$@partymemberaid[0],$@members;

for all the members change pallete.

Thanks mr.goddameit. Pls close this topic =))

Edited by xilence01
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  18
  • Topics Per Day:  0.00
  • Content Count:  2044
  • Reputation:   682
  • Joined:  10/09/12
  • Last Seen:  

that will only setlook on the player who are 1st index in getpartymember

still need to attachrid all of them

//===== eAthena Script =======================================//
//= Party vs Party Npc            //
//===== Originally By: =======================================//
//= icabit69              //
//===== Credits for help goes to: ============================//
//= Rahuldev345                              //
//= Emistry               //
//===== Edited by: ===========================================//
//= MrVandalBus              //
//==============================================================//
//Warning! Dont edit unless you know what you are doing!
//Updates:
//* Fix the prize after the battle (Map 'valkyrie' instead of 'bat_b01')
//* Easier to edit
//* If the team loses, the players will be ressurected (If dead of course)
//* Bug Exploit Thingy (only Lvl 60 GM can warp to there)
valkyrie,49,49,0 script teamwarprize -1,2,2,{
OnTouch:
getitem 20078,15; //edit the prize <item>,<amount>
warp "prontera",156,191;
   close;
}
prontera,155,166,4 script Party vs Party (5v5)::teamwar 796,{
if (getgmlevel() >= 99){
menu "standard menu",standard,"reset",lend1;
}
standard:
set $@members,5; // number of party members change this to your party size you want
set $@start,0;
getpartymember(getcharid(1));
set @partymembercount,$@partymembercount;
if ( $@start==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) {
 mes "Hello "+strcharinfo(0)+" what do you want?";
 if (($@TeamID1!=0) && ($@TeamID2!=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($@TeamID1) + "] :Blue Team - [" + GetPartyName($@TeamID2) + "]"))
   {
   case 1: mes "[  Team War  ]";
     if ($@TeamID1==0 || getpartyname($@TeamID1)=="null")
     {
      getpartymember(getcharid(1)),1;
      getpartymember(getcharid(1)),2;
      copyarray $@partymembercidt1[0],$@partymembercid[0],$@members;
      copyarray $@partymemberaid1[0],$@partymemberaid[0],$@members;
       for (set .@i,0; .@i<$@members; set .@i,.@i+1) {
        if(isloggedin($@partymemberaid1[.@i],$@partymembercidt1[.@i]))  set .@count,.@count+1;
       }
       if(.@count < $@members) {
        mes "You need all your party members to be online to Register";
        close;
       }
      set $@TeamID1, getcharid(1);
      initnpctimer;
      mes "Your Party is now subscribed, good luck!";
      announce "Team 1 : [ " +getpartyname($@TeamID1)+ " ] has sign up For the Team War!",bc_blue|bc_map;
      doevent "teamwar::OnSubscriptionTeam";
      close;
     } else {
      mes "I'm sorry! Another Team has sign up before you...";
      close;
     }
   case 2: mes "[  Team War  ]";
    if ($@TeamID2==0 || getpartyname($@TeamID2)=="null")
    {
     getpartymember(getcharid(1)),1;
     getpartymember(getcharid(1)),2;
     copyarray $@partymembercidt2[0],$@partymembercid[0],$@members;
     copyarray $@partymemberaid2[0],$@partymemberaid[0],$@members;
      for (set .@i,0; .@i<$@members; set .@i,.@i+1) {
       if(isloggedin($@partymemberaid2[.@i],$@partymembercidt2[.@i])) set .@count,.@count+1;
      }
      if(.@count < $@members) {
       mes "You need all your party members to be online to Register";
       close;
      }
     set $@TeamID2, getcharid(1);
     initnpctimer;
     mes "Your Party is now subscribed, good luck!";
     announce "Team 2 : [ " +getpartyname($@TeamID2)+ " ] has sign up For the Team War!",bc_blue|bc_map;
     doevent "teamwar::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($@TeamID2),1;
 getpartymember($@TeamID2),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 "Team War : "+getpartyname($@TeamID2)+"are not all online the match has been canceled",0;
 announce "Team War : registration for 2 new teams are now available",0;
 goto lend;
 close;
 }
   for ( .@i, 0; .@i < $@members; .@i++ ) {
       if ( isloggedin( $@partymemberaidc2[.@i], $@partymembercidtc2[.@i] ) ) {
           attachrid $@partymemberaidc2[.@i];
           set pvp3vs3_ori_look, getlook(7);
           setlook 7, 521;
       }
   }
 getpartymember($@TeamID1),1;
 getpartymember($@TeamID1),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 "Team War : "+getpartyname($@TeamID1)+"are not all online the match has been canceled",0;
 announce "Team War : registration for 2 new teams are now available",0;
 goto lend;
 close;
 }
   for ( .@i, 0; .@i < $@members; .@i++ ) {
       if ( isloggedin( $@partymemberaidc1[.@i], $@partymembercidtc1[.@i] ) ) {
           attachrid $@partymemberaidc1[.@i];
           set pvp3vs3_ori_look, getlook(7);
           setlook 7, 520;
       }
   }
if($@TeamID1!=0 && $@TeamID2!=0){
 announce "Team War : We have 2 Teams signed up now : "+getpartyname($@TeamID1)+" and "+getpartyname($@TeamID2)+".",bc_blue|bc_map;
 set @win1, 0;
 set @win2, 0;
 goto onstart;
}
end;
OnTimer50000:
if (($@TeamID1!=0) && ($@TeamID2!=0)) {
 end;
}
stopnpctimer;
set $@TeamID1, 0;
set $@TeamID1, 0;
announce "Team War : we lack teams to start registration for two teams are now available",0;
end;

onstart:
warpparty "guild_vs4",7,49,$@TeamID1;
warpparty "guild_vs4",92,49,$@TeamID2;
set $@start,1;
end;
lend:
stopnpctimer;
set $@TeamID1,0;
set $@TeamID2,0;
set $@start,0;
set @win1,0;
set @win2,0;
set @partymembercount,$@members;
end;
lend1:
stopnpctimer;
set $@TeamID1,0;
set $@TeamID2,0;
set $@start,0;
set @win1,0;
set @win2,0;
set @partymembercount,$@members;
announce "Team War has been reset, you may register your team now",0;
close;
end;
OnTimer250000:
Announce "Team War : No Party won due to time limit!",0;
mapwarp "guild_vs4","prontera",156,203;
goto lend;
end;

OnPCDieEvent:
OnPCLogoutEvent:
if(strcharinfo(3) != "guild_vs4") end;
setlook 7, pvp3vs3_ori_look;
pvp3vs3_ori_look = 0;
warp "prontera",156,203;
 for(set .@i, 0; .@i < $@members; set .@i, .@i + 1) {
  if ( $@partymembercidt1[.@i] == getcharid(0)) {
   deletearray $@partymembercidt1[.@i], 1;
   if( getarraysize($@partymembercidt1) == 0 ) {
    set @win2,$@partymembercount;
    goto onwin;
   }
  }
  if ( $@partymembercidt2[.@i] == getcharid(0) ) {
   deletearray $@partymembercidt2[.@i], 1;
   if( getarraysize($@partymembercidt2)  == 0 ) {
    set @win1,$@partymembercount;
    goto onwin;
   }
  }
 }
end;

onwin:
if (@win1==0)
{
 warpparty "valkyrie",49,49,$@TeamID2;
 warpparty "valkyrie",45,45,$@TeamID1;
 Announce "Team War :"+GetPartyName($@TeamID2)+" won againts "+GetPartyName($@TeamID1)+"",0;
 goto lend;
 end;
}
if (@win2==0)
{
 warpparty "valkyrie",49,49,$@TeamID1;
 warpparty "valkyrie",45,45,$@TeamID2;
 Announce "Team War :"+GetPartyName($@TeamID1)+" won againts "+GetPartyName($@TeamID2)+"",0;
 goto lend;
 end;
}
end;
}
guild_vs4 mapflag nosave
guild_vs4 mapflag nomemo
guild_vs4 mapflag nobranch
guild_vs4 mapflag pvp_noguild
guild_vs4 mapflag nocommand 60
guild_vs4 mapflag noicewall
guild_vs4 mapflag pvp
valkyrie mapflag nosave
valkyrie mapflag nomemo
valkyrie mapflag nobranch
valkyrie mapflag nocommand 60
valkyrie mapflag pvp_noparty
valkyrie mapflag nowarpto 99 //Change the GM level if you desire to
valkyrie mapflag nowarp 99 //Change the GM level if you desire to
valkyrie,45,45,0 script alive -1,2,2,{
OnTouch:
atcommand "@alive";
warp "prontera",156,191;
   close;
}

more like this

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  177
  • Reputation:   4
  • Joined:  05/23/12
  • Last Seen:  

that will only setlook on the player who are 1st index in getpartymember

still need to attachrid all of them

//===== eAthena Script =======================================//
//= Party vs Party Npc			//
//===== Originally By: =======================================//
//= icabit69			  //
//===== Credits for help goes to: ============================//
//= Rahuldev345							  //
//= Emistry			   //
//===== Edited by: ===========================================//
//= MrVandalBus			  //
//==============================================================//
//Warning! Dont edit unless you know what you are doing!
//Updates:
//* Fix the prize after the battle (Map 'valkyrie' instead of 'bat_b01')
//* Easier to edit
//* If the team loses, the players will be ressurected (If dead of course)
//* Bug Exploit Thingy (only Lvl 60 GM can warp to there)
valkyrie,49,49,0 script teamwarprize -1,2,2,{
OnTouch:
getitem 20078,15; //edit the prize <item>,<amount>
warp "prontera",156,191;
close;
}
prontera,155,166,4 script Party vs Party (5v5)::teamwar 796,{
if (getgmlevel() >= 99){
menu "standard menu",standard,"reset",lend1;
}
standard:
set $@members,5; // number of party members change this to your party size you want
set $@start,0;
getpartymember(getcharid(1));
set @partymembercount,$@partymembercount;
if ( $@start==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) {
 mes "Hello "+strcharinfo(0)+" what do you want?";
 if (($@TeamID1!=0) && ($@TeamID2!=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($@TeamID1) + "] :Blue Team - [" + GetPartyName($@TeamID2) + "]"))
{
case 1: mes "[  Team War  ]";
  if ($@TeamID1==0 || getpartyname($@TeamID1)=="null")
  {
   getpartymember(getcharid(1)),1;
   getpartymember(getcharid(1)),2;
   copyarray $@partymembercidt1[0],$@partymembercid[0],$@members;
   copyarray $@partymemberaid1[0],$@partymemberaid[0],$@members;
	for (set .@i,0; .@i<$@members; set .@i,.@i+1) {
	 if(isloggedin($@partymemberaid1[.@i],$@partymembercidt1[.@i]))  set .@count,.@count+1;
	}
	if(.@count < $@members) {
	 mes "You need all your party members to be online to Register";
	 close;
	}
   set $@TeamID1, getcharid(1);
   initnpctimer;
   mes "Your Party is now subscribed, good luck!";
   announce "Team 1 : [ " +getpartyname($@TeamID1)+ " ] has sign up For the Team War!",bc_blue|bc_map;
   doevent "teamwar::OnSubscriptionTeam";
   close;
  } else {
   mes "I'm sorry! Another Team has sign up before you...";
   close;
  }
case 2: mes "[  Team War  ]";
 if ($@TeamID2==0 || getpartyname($@TeamID2)=="null")
 {
  getpartymember(getcharid(1)),1;
  getpartymember(getcharid(1)),2;
  copyarray $@partymembercidt2[0],$@partymembercid[0],$@members;
  copyarray $@partymemberaid2[0],$@partymemberaid[0],$@members;
   for (set .@i,0; .@i<$@members; set .@i,.@i+1) {
	if(isloggedin($@partymemberaid2[.@i],$@partymembercidt2[.@i])) set .@count,.@count+1;
   }
   if(.@count < $@members) {
	mes "You need all your party members to be online to Register";
	close;
   }
  set $@TeamID2, getcharid(1);
  initnpctimer;
  mes "Your Party is now subscribed, good luck!";
  announce "Team 2 : [ " +getpartyname($@TeamID2)+ " ] has sign up For the Team War!",bc_blue|bc_map;
  doevent "teamwar::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($@TeamID2),1;
 getpartymember($@TeamID2),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 "Team War : "+getpartyname($@TeamID2)+"are not all online the match has been canceled",0;
 announce "Team War : registration for 2 new teams are now available",0;
 goto lend;
 close;
 }
for ( .@i, 0; .@i < $@members; .@i++ ) {
	if ( isloggedin( $@partymemberaidc2[.@i], $@partymembercidtc2[.@i] ) ) {
		attachrid $@partymemberaidc2[.@i];
		set pvp3vs3_ori_look, getlook(7);
		setlook 7, 521;
	}
}
 getpartymember($@TeamID1),1;
 getpartymember($@TeamID1),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 "Team War : "+getpartyname($@TeamID1)+"are not all online the match has been canceled",0;
 announce "Team War : registration for 2 new teams are now available",0;
 goto lend;
 close;
 }
for ( .@i, 0; .@i < $@members; .@i++ ) {
	if ( isloggedin( $@partymemberaidc1[.@i], $@partymembercidtc1[.@i] ) ) {
		attachrid $@partymemberaidc1[.@i];
		set pvp3vs3_ori_look, getlook(7);
		setlook 7, 520;
	}
}
if($@TeamID1!=0 && $@TeamID2!=0){
 announce "Team War : We have 2 Teams signed up now : "+getpartyname($@TeamID1)+" and "+getpartyname($@TeamID2)+".",bc_blue|bc_map;
 set @win1, 0;
 set @win2, 0;
 goto onstart;
}
end;
OnTimer50000:
if (($@TeamID1!=0) && ($@TeamID2!=0)) {
 end;
}
stopnpctimer;
set $@TeamID1, 0;
set $@TeamID1, 0;
announce "Team War : we lack teams to start registration for two teams are now available",0;
end;

onstart:
warpparty "guild_vs4",7,49,$@TeamID1;
warpparty "guild_vs4",92,49,$@TeamID2;
set $@start,1;
end;
lend:
stopnpctimer;
set $@TeamID1,0;
set $@TeamID2,0;
set $@start,0;
set @win1,0;
set @win2,0;
set @partymembercount,$@members;
end;
lend1:
stopnpctimer;
set $@TeamID1,0;
set $@TeamID2,0;
set $@start,0;
set @win1,0;
set @win2,0;
set @partymembercount,$@members;
announce "Team War has been reset, you may register your team now",0;
close;
end;
OnTimer250000:
Announce "Team War : No Party won due to time limit!",0;
mapwarp "guild_vs4","prontera",156,203;
goto lend;
end;

OnPCDieEvent:
OnPCLogoutEvent:
if(strcharinfo(3) != "guild_vs4") end;
setlook 7, pvp3vs3_ori_look;
pvp3vs3_ori_look = 0;
warp "prontera",156,203;
 for(set .@i, 0; .@i < $@members; set .@i, .@i + 1) {
  if ( $@partymembercidt1[.@i] == getcharid(0)) {
deletearray $@partymembercidt1[.@i], 1;
if( getarraysize($@partymembercidt1) == 0 ) {
 set @win2,$@partymembercount;
 goto onwin;
}
  }
  if ( $@partymembercidt2[.@i] == getcharid(0) ) {
deletearray $@partymembercidt2[.@i], 1;
if( getarraysize($@partymembercidt2)  == 0 ) {
 set @win1,$@partymembercount;
 goto onwin;
}
  }
 }
end;

onwin:
if (@win1==0)
{
 warpparty "valkyrie",49,49,$@TeamID2;
 warpparty "valkyrie",45,45,$@TeamID1;
 Announce "Team War :"+GetPartyName($@TeamID2)+" won againts "+GetPartyName($@TeamID1)+"",0;
 goto lend;
 end;
}
if (@win2==0)
{
 warpparty "valkyrie",49,49,$@TeamID1;
 warpparty "valkyrie",45,45,$@TeamID2;
 Announce "Team War :"+GetPartyName($@TeamID1)+" won againts "+GetPartyName($@TeamID2)+"",0;
 goto lend;
 end;
}
end;
}
guild_vs4 mapflag nosave
guild_vs4 mapflag nomemo
guild_vs4 mapflag nobranch
guild_vs4 mapflag pvp_noguild
guild_vs4 mapflag nocommand 60
guild_vs4 mapflag noicewall
guild_vs4 mapflag pvp
valkyrie mapflag nosave
valkyrie mapflag nomemo
valkyrie mapflag nobranch
valkyrie mapflag nocommand 60
valkyrie mapflag pvp_noparty
valkyrie mapflag nowarpto 99 //Change the GM level if you desire to
valkyrie mapflag nowarp 99 //Change the GM level if you desire to
valkyrie,45,45,0 script alive -1,2,2,{
OnTouch:
atcommand "@alive";
warp "prontera",156,191;
close;
}

more like this

I see, can i have a favor?

may you paste it on pastebin or any other paste tool?.

because the "tabs" are missing. hehe

Thanks.

Bump~

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  18
  • Topics Per Day:  0.00
  • Content Count:  2044
  • Reputation:   682
  • Joined:  10/09/12
  • Last Seen:  

you don't have a test server to write scripts ?

I thought usually everyone that wants to learn how to write scripts should know how to setup your own test server ...

tab-fixing should be done by yourself ... and we usually doesn't spoon feed this kind of stuffs ...

also, did I get the feeling I gave you the answer and you took it for granted ?

have you learn what are the stuffs that I have edited ?

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  177
  • Reputation:   4
  • Joined:  05/23/12
  • Last Seen:  

Sorry,

Well i tried to fix the "tabs" but i can't click the npc.

here it is : http://pastebin.com/kK3cJMMt

=(( Help pls. i tried to checked mapserver here is the errors found.

Got this error

[Error]:

script error on npc/custom/ptvspt.txt line 123

parse_line: expect command, missing function name or calling undeclared func

tion

118 : announce "Team War : registration for 2 new teams are no

w available",0;

119 : goto lend;

120 : close;

121 : }

122 :

* 123 : for ( '.'@i, 0; .@i < $@members; .@i++ ) {

124 : if ( isloggedin( $@partymemberaidc2[.@i], $@partymemberc

idtc2[.@i] ) ) {

125 : attachrid $@partymemberaidc2[.@i];

126 : set pvp3vs3_ori_look, getlook(7);

127 : setlook 7, 521;

128 : }

Edited by xilence01
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  205
  • Reputation:   19
  • Joined:  10/12/12
  • Last Seen:  

Replace line 123 with what follows:

for ( set .@i, 0; .@i < $@members; set .@i, .@i + 1 ) {

Also, you are using eAthena aren't you? Please specify it, 'cause some rA codes doesn't work on eA.

Edited by Ryokem
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  54
  • Topics Per Day:  0.01
  • Content Count:  177
  • Reputation:   4
  • Joined:  05/23/12
  • Last Seen:  

another error : [Error]:

script error on npc/custom/ptvspt.txt line 202

parse_line: expect command, missing function name or calling undeclared func

tion

197 :

198 : OnPCDieEvent:

199 : OnPCLogoutEvent:

200 : if(strcharinfo(3) != "guild_vs4") end;

201 : setlook 7, pvp3vs3_ori_look;

* 202 : 'p'vp3vs3_ori_look = 0;

Replace line 123 with what follows:

for ( set .@i, 0; .@i < $@members; set .@i, .@i + 1 ) {

Also, you are using eAthena aren't you? Please specify it, 'cause some rA codes doesn't work on eA.

Yes, i'm using eathena.

Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  93
  • Topics Per Day:  0.02
  • Content Count:  10015
  • Reputation:   2348
  • Joined:  10/28/11
  • Last Seen:  

set pvp3vs3_ori_look,0;

find all those similar part ...and edit it like what i show above...


you should specify you are using what emulator when you post a topic..

it feel like wasting of time when we script something that work fine ...but then suddenly you pop out and said..it is not working because...you are not using the same emulator as we are...

next time if you are requesting a script...you should specify that you are using eA / 3Ceam ...

Edited by Emistry
Link to comment
Share on other sites

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...