protected override void RunImpl() { // Determine the stat type based on the Id offset var statType = (UserStats.StatType)(Id - 0x47); // Lookup stats var stats = GetClient().User.Stats.FirstOrDefault(s => s.Type == statType); if (stats == null) { Console.WriteLine("Unable to find stat type of {0} on user!", statType); return; } ServerBasePacket packet; switch (statType) { case UserStats.StatType.Training: packet = new TrainingInfo(stats); break; case UserStats.StatType.Survival: packet = new SurvivalInfo(stats); break; case UserStats.StatType.TeamSurvival: packet = new TeamSurvivalInfo(stats); break; case UserStats.StatType.TeamBattle: packet = new TeamBattleInfo(stats); break; case UserStats.StatType.Ctf: packet = new CtfInfo(stats); break; case UserStats.StatType.ClanBattle: packet = new ClanBattleInfo(stats); break; case UserStats.StatType.DefensiveBattle: packet = new DefensiveBattleInfo(stats); break; default: return; } GetClient().SendPacket(packet); }
public LoginMessageServer() { ServerStatusCode = LoginStatusCode.Success; Permissions = PermissionStatus.Normal; Clan = new ClanInfo { Id = -1, Name = "NULL", Rank = -1, UserRank = -1, }; ClanBattle = new ClanBattleInfo { Key = "0", ServerId = 0 }; }