i check your post and can't understand allQuote:
Check My Edited Post ... w la2 msh Import Void .. mn esmaha ya3ny Import de eli htda5al el teams 3shan yla3bo b3d ..
Translation :-
No .. Import void as its name refer to .. it just Send the Two Teams into Arena Map
public void Export()
{
foreach (Client.GameState teammate1 in Player1.Entity.Owner.Team.Teammates)
{
foreach (Client.GameState teammate2 in Player2.Entity.Owner.Team.Teammates)
{
teammate1.InArenaMatch = Player1.InArenaMatch;
teammate2.InArenaMatch = Player2.InArenaMatch;
Player1.InArenaMatch = Player2.InArenaMatch = false;
var arr = Watcherss.ToArray();
foreach (Client.GameState client in arr)
QualifyEngine2.DoLeave(client);
arr = null;
Win(Winner, Loser);
Inside = false;
Player1.Entity.Teleport(Player1.Entity.PreviousMapID, Player1.Entity.PrevX, Player1.Entity.PrevY);
Player2.Entity.Teleport(Player2.Entity.PreviousMapID, Player2.Entity.PrevX, Player2.Entity.PrevY);
Console.WriteLine(55 + "");
Loser.Entity.Ressurect();
Winner.Entity.Ressurect();
Player1.ArenaTeam.AcceptBox = Player2.ArenaTeam.AcceptBox = false;
Player1.ArenaTeam.AcceptBoxShow = Player2.ArenaTeam.AcceptBoxShow = Player2.ArenaTeam.AcceptBoxShow.AddHours(2);
Player1.ArenaTeam.PlayWith = Player2.ArenaTeam.PlayWith = 0;
ArenaTeamSignup sign = new ArenaTeamSignup();
sign.DialogID = ArenaTeamSignup.MainIDs.Dialog2;
Loser.Send(sign.BuildPacket());
sign.OptionID = ArenaTeamSignup.DialogButton.Win;
Winner.Send(sign.BuildPacket());
QualifierList2.Groups.Remove(ID);
Player1.Entity.PKMode = P1Mode;
Player1.Send(new Data(true) { UID = Player1.Entity.UID, ID = Data.ChangePKMode, dwParam = (uint)Player1.Entity.PKMode });
Player2.Entity.PKMode = P2Mode;
Player2.Send(new Data(true) { UID = Player2.Entity.UID, ID = Data.ChangePKMode, dwParam = (uint)Player2.Entity.PKMode });
Player1.QualifierGroups = null;
Player2.QualifierGroups = null;
if (dynamicMap != null)
dynamicMap.Dispose();
}
}
}
#region Arena Team Qualifier (2241-2247)
case 2244://Request Arena Winner List
{
//Code snippet that belongs to RCE
Game.ConquerStructures.Society.ArenaTeamSignup.Statistics.ShowWiners(client);
break;
}
case 2243://Request Arena ranking List
{
//Code snippet that belongs to Ultimation
ushort PageIndex = BitConverter.ToUInt16(packet, 10);
Game.ConquerStructures.Society.ArenaTeamSignup.Statistics.ShowRankingPage(packet[10], PageIndex, client);
break;
}
case 2242:
{
//Code snippet that belongs to Ultimation
ushort PageIndex = BitConverter.ToUInt16(packet, 10);
Game.ConquerStructures.Society.QualifyEngine2.RequestGroupList(client, PageIndex);
break;
}
case 2241://Arena Team Signup!
{
uint DialogID = BitConverter.ToUInt32(packet, 4);
uint ButtonID = BitConverter.ToUInt32(packet, 8);
switch (DialogID)
{
case 4:
{
switch (ButtonID)
{
case 0:
{
Game.ConquerStructures.Society.QualifyEngine2.DoQuit(client);
break;
}
}
break;
}
case 0:
{
if (client.Entity.MapID != 1098 && client.Entity.MapID != 6001 && client.Entity.MapID != 6000 && client.Entity.MapID != 6002)
{
Game.ConquerStructures.Society.QualifyEngine2.DoSignup(client);
client.Send(packet);
}
else
{
client.Send(ServerBase.Constants.Teleportout);
}
}
break;
case 1: Game.ConquerStructures.Society.QualifyEngine2.DoQuit(client); client.Send(packet); break;
case 3:
{
switch (ButtonID)
{
case 2: Game.ConquerStructures.Society.QualifyEngine2.DoGiveUp(client); break;
case 1: Game.ConquerStructures.Society.QualifyEngine2.DoAccept(client); break;
}
break;
}
case 5:
{
if (client.ArenaTeam.ArenaPointTeam <= 1500)
if (client.Entity.Money >= 9000000)
{
client.Entity.Money -= 9000000;
client.ArenaTeam.ArenaPointTeam += 1500;
client.Send(client.ArenaTeam);
}
break;
}
case 11://Win/Lose Dialog
{
switch (ButtonID)
{
case 0: Game.ConquerStructures.Society.QualifyEngine2.DoSignup(client); break;
}
break;
}
}
break;
}
case 2245:
{
client.ArenaTeam.Send(client);
break;
}
case 2247:
{
if (client.Map.BaseID == 6001 || client.Map.ID == 6000 || client.Map.ID == 6002)
return;
ushort Type = BitConverter.ToUInt16(packet, 10);
uint Fighter = BitConverter.ToUInt32(packet, 16);
if (Type == 0)
{
if (ServerBase.Kernel.GamePool.ContainsKey(Fighter))
{
Client.GameState Client = ServerBase.Kernel.GamePool[Fighter];
if (Client.QualifierGroups != null)
{
if (Client.QualifierGroups.Inside)
{
if (!Client.QualifierGroups.Done)
{
Client.QualifierGroups.BeginWatching(client);
}
}
}
}
}
else if (Type == 1)
{
Game.ConquerStructures.Society.QualifyEngine2.DoLeave(client);
}
else if (Type == 4)
{
string name = "";
for (int c = 22; c < packet.Length; c++)
{
if (packet[c] != 0)
name += (char)packet[c];
else
break;
}
Game.ConquerStructures.Society.QualifyEngine2.DoCheer(client, name);
}
break;
}
#endregion
Quote:
Check My Edited Post ... w la2 msh Import Void .. mn esmaha ya3ny Import de eli htda5al el teams 3shan yla3bo b3d ..
Translation :-
No .. Import void as its name refer to .. it just Send the Two Teams into Arena Map
Shadowman : I put everything in Thread in order to assist me in developing the solution properly without errorQuote:
Fekret eah ya ged3an mana 7atetloko el code .. 7ata msh 3rfen ht7oto el code fain .. sry i helped u guyz Enough
Quote:
ma3ldesh ya shadow :) ana ha7awel ma3ah ahoh
anta 3ayazhom yamsho men al arena emta ?
lama kolhom fehom yamot sa7 ?
yab2a t7otaha fel attack handlers maslan ? b nested conditions
hat3mal 3 level nested if conditions
if killed entity flag == player flag
if (hit points >= 0) aw if (attack >= hit points)
if team arena map list contain al map beta3hom
teleport bara
w momken t7otaha fel die method (3ala ma atzakar kanet bett3amlaha raise lama 7ad bymawt 7ad)
w hat3mal kman check law homa mayten 3alshan t3malhom rev abl mat3malhom teleport
3alshan law 3amlt rev ba3d ma ta3mal teleport hayro7o ll city default reving coords
w ma3lesh 7awal abl mats2al tafkar w tashof law feh 7aga fel source 3andak orayba men aly anta 3ayzo w dawar 3aleha w 7ot break point w shof al source bya3malha azay
w zay momken ta3mal aly alak 3aleh shadow ano anta ta7ot kol al teams aly 3amla sign up aly anta hat3malhom match f list
aw momken ashal men keda lama wa7ed yamot ta3mal scan
tagyb al map men killer map property
hat3mal scan
for each player in sever
if player map property == killer map
add player to gamestate entity directory
w kol lama wa7ed yamot 2a3mal nafs al scan
for each player in sever
if player map property == killer map
if player team != null , player is team leader
2a3mal foreach loop for each player in this team , law fehom wa7ed alive 2a3mal break w set entity bool property true , law kolhom mayten set that bool to false
law al bool true break , law al bool false revhom kolhom w announce winners w tele them back to previous map with previous x and previous y
leh bool property ? 3alashan anta mesh hayb2a 3andak arena wa7da dol kaza arena f nafs al wa2t
leh team arena map list ? 3alshan anta hat3mal new map each new match w mesh 1 arena l kol al server
leh hat3mal scan 3ala al server kolo ? 3alshan anta lazem ta3mal scan 3alshan t3mal check 3ala al players entity map id
momken ta3mal directory b <entity,mapid> 3alshan tab2a hyea 1 directory w feha al map ids
kol mahtfakar fel 7akayea w kol hatb2a programmer ashtar hat3rf ta3mal al quest a7san