public void AddPlayer(Characters.Character character) { Send(string.Concat("GM|+", character.PatternDisplayChar())); character.NClient.Send(string.Concat("fC", Fights.Count)); //Fight lock (Characters) Characters.Add(character); if (Characters.Count > 0) { character.NClient.Send(string.Concat("GM", CharactersPattern())); } if (Npcs.Count > 0) { character.NClient.Send(string.Concat("GM", NPCsPattern())); } if (MonstersGroups.Count > 0) { character.NClient.Send(string.Concat("GM", MonstersGroupsPattern())); } if (Collector != null && !Collector.IsInFight) { character.NClient.Send(string.Concat("GM", Collector.PatternMap())); } if (Fights.Count > 0) { character.NClient.Send(FormatFightCount()); foreach (Fight fight in Fights) { if (fight.State == FightState.STARTING) { character.NClient.Send(fight.FormatFlagShow()); character.NClient.Send(fight.FormatFlagFighter(fight.Team1.GetFighters())); character.NClient.Send(fight.FormatFlagFighter(fight.Team2.GetFighters())); if (fight.Team1.IsToggle(ToggleType.LOCK)) { character.NClient.Send("Go+A" + fight.Team1.ID); } if (fight.Team1.IsToggle(ToggleType.HELP)) { character.NClient.Send("Go+H" + fight.Team1.ID); } if (fight.Team1.IsToggle(ToggleType.PARTY)) { character.NClient.Send("Go+P" + fight.Team1.ID); } if (fight.Team1.IsToggle(ToggleType.SPECTATOR)) { character.NClient.Send("Go+S" + fight.Team1.ID); } if (fight.Team2.IsToggle(ToggleType.LOCK)) { character.NClient.Send("Go+A" + fight.Team2.ID); } if (fight.Team2.IsToggle(ToggleType.HELP)) { character.NClient.Send("Go+H" + fight.Team2.ID); } if (fight.Team2.IsToggle(ToggleType.PARTY)) { character.NClient.Send("Go+P" + fight.Team2.ID); } if (fight.Team2.IsToggle(ToggleType.SPECTATOR)) { character.NClient.Send("Go+S" + fight.Team2.ID); } } } } }