public Golem(int id) : base(id) { Mode = ParseMode.Benchmark; switch (ArcDPSEnums.GetTargetID(id)) { case ArcDPSEnums.TargetID.MassiveGolem10M: Extension = "MassiveGolem10M"; Icon = "https://wiki.guildwars2.com/images/3/33/Mini_Snuggles.png"; break; case ArcDPSEnums.TargetID.MassiveGolem4M: Extension = "MassiveGolem4M"; Icon = "https://wiki.guildwars2.com/images/3/33/Mini_Snuggles.png"; break; case ArcDPSEnums.TargetID.MassiveGolem1M: Extension = "MassiveGolem1M"; Icon = "https://wiki.guildwars2.com/images/3/33/Mini_Snuggles.png"; break; case ArcDPSEnums.TargetID.VitalGolem: Extension = "VitalGolem"; Icon = "https://wiki.guildwars2.com/images/4/47/Mini_Baron_von_Scrufflebutt.png"; break; case ArcDPSEnums.TargetID.AvgGolem: Extension = "AvgGolem"; Icon = "https://wiki.guildwars2.com/images/c/cb/Mini_Mister_Mittens.png"; break; case ArcDPSEnums.TargetID.StdGolem: Extension = "StdGolem"; Icon = "https://wiki.guildwars2.com/images/8/8f/Mini_Professor_Mew.png"; break; case ArcDPSEnums.TargetID.ConditionGolem: Extension = "ToughGolem"; Icon = "https://wiki.guildwars2.com/images/c/cb/Mini_Mister_Mittens.png"; break; case ArcDPSEnums.TargetID.PowerGolem: Extension = "ResGolem"; Icon = "https://wiki.guildwars2.com/images/c/cb/Mini_Mister_Mittens.png"; break; case ArcDPSEnums.TargetID.LGolem: Extension = "LGolem"; Icon = "https://wiki.guildwars2.com/images/4/47/Mini_Baron_von_Scrufflebutt.png"; break; case ArcDPSEnums.TargetID.MedGolem: Extension = "MedGolem"; Icon = "https://wiki.guildwars2.com/images/c/cb/Mini_Mister_Mittens.png"; break; } EncounterCategoryInformation.Category = FightCategory.Golem; EncounterCategoryInformation.SubCategory = SubFightCategory.Golem; }
// Constructors internal FightData(int id, AgentData agentData, EvtcParserSettings parserSettings, long start, long end) { LogStart = start; LogEnd = end; FightEnd = end - start; TriggerID = id; switch (ArcDPSEnums.GetTargetID(id)) { case ArcDPSEnums.TargetID.Mordremoth: Logic = new Mordremoth(id); break; // case ArcDPSEnums.TargetID.ValeGuardian: Logic = new ValeGuardian(id); break; case ArcDPSEnums.TargetID.Gorseval: Logic = new Gorseval(id); break; case ArcDPSEnums.TargetID.Sabetha: Logic = new Sabetha(id); break; case ArcDPSEnums.TargetID.Slothasor: Logic = new Slothasor(id); break; case ArcDPSEnums.TargetID.Zane: case ArcDPSEnums.TargetID.Berg: case ArcDPSEnums.TargetID.Narella: Logic = new BanditTrio(id); break; case ArcDPSEnums.TargetID.Matthias: Logic = new Matthias(id); break; /*case ParseEnum.TargetIDS.Escort: * Logic = new Escort(id, agentData); * break;*/ case ArcDPSEnums.TargetID.KeepConstruct: Logic = new KeepConstruct(id); break; case ArcDPSEnums.TargetID.Xera: // some TC logs are registered as Xera if (agentData.GetNPCsByID((int)ArcDPSEnums.TrashID.HauntingStatue).Count > 0) { TriggerID = (int)ArcDPSEnums.TrashID.HauntingStatue; Logic = new TwistedCastle((int)ArcDPSEnums.TargetID.DummyTarget); break; } Logic = new Xera(id); break; case ArcDPSEnums.TargetID.Cairn: Logic = new Cairn(id); break; case ArcDPSEnums.TargetID.MursaatOverseer: Logic = new MursaatOverseer(id); break; case ArcDPSEnums.TargetID.Samarog: Logic = new Samarog(id); break; case ArcDPSEnums.TargetID.Deimos: Logic = new Deimos(id); break; case ArcDPSEnums.TargetID.SoullessHorror: Logic = new SoullessHorror(id); break; case ArcDPSEnums.TargetID.Desmina: Logic = new River((int)ArcDPSEnums.TargetID.DummyTarget); break; case ArcDPSEnums.TargetID.BrokenKing: Logic = new BrokenKing(id); break; case ArcDPSEnums.TargetID.SoulEater: Logic = new EaterOfSouls(id); break; case ArcDPSEnums.TargetID.EyeOfFate: case ArcDPSEnums.TargetID.EyeOfJudgement: Logic = new DarkMaze(id); break; case ArcDPSEnums.TargetID.Dhuum: // some eyes logs are registered as Dhuum if (agentData.GetNPCsByID((int)ArcDPSEnums.TargetID.EyeOfFate).Count > 0 || agentData.GetNPCsByID((int)ArcDPSEnums.TargetID.EyeOfJudgement).Count > 0) { TriggerID = (int)ArcDPSEnums.TargetID.EyeOfFate; Logic = new DarkMaze(TriggerID); break; } Logic = new Dhuum(id); break; case ArcDPSEnums.TargetID.ConjuredAmalgamate: case ArcDPSEnums.TargetID.ConjuredAmalgamate_CHINA: case ArcDPSEnums.TargetID.CALeftArm_CHINA: case ArcDPSEnums.TargetID.CARightArm_CHINA: Logic = new ConjuredAmalgamate(id); TriggerID = (int)ArcDPSEnums.TargetID.ConjuredAmalgamate; break; case ArcDPSEnums.TargetID.Kenut: case ArcDPSEnums.TargetID.Nikare: Logic = new TwinLargos(id); break; case ArcDPSEnums.TargetID.Qadim: Logic = new Qadim(id); break; case ArcDPSEnums.TargetID.Freezie: Logic = new Freezie(id); break; case ArcDPSEnums.TargetID.Adina: Logic = new Adina(id); break; case ArcDPSEnums.TargetID.Sabir: Logic = new Sabir(id); break; case ArcDPSEnums.TargetID.PeerlessQadim: Logic = new PeerlessQadim(id); break; // case ArcDPSEnums.TargetID.IcebroodConstruct: Logic = new IcebroodConstruct(id); break; case ArcDPSEnums.TargetID.FraenirOfJormag: Logic = new FraenirOfJormag(id); break; case ArcDPSEnums.TargetID.VoiceOfTheFallen: case ArcDPSEnums.TargetID.ClawOfTheFallen: Logic = new SuperKodanBrothers(id); break; case ArcDPSEnums.TargetID.Boneskinner: Logic = new Boneskinner(id); break; case ArcDPSEnums.TargetID.WhisperOfJormag: Logic = new WhisperOfJormag(id); break; case ArcDPSEnums.TargetID.VariniaStormsounder: Logic = new ColdWar(id); break; // case ArcDPSEnums.TargetID.MAMA: Logic = new MAMA(id); break; case ArcDPSEnums.TargetID.Siax: Logic = new Siax(id); break; case ArcDPSEnums.TargetID.Ensolyss: Logic = new Ensolyss(id); break; case ArcDPSEnums.TargetID.Skorvald: Logic = new Skorvald(id); break; case ArcDPSEnums.TargetID.Artsariiv: Logic = new Artsariiv(id); break; case ArcDPSEnums.TargetID.Arkk: Logic = new Arkk(id); break; case ArcDPSEnums.TargetID.AiKeeperOfThePeak: Logic = new AiKeeperOfThePeak(id); break; // case ArcDPSEnums.TargetID.WorldVersusWorld: Logic = new WvWFight(id, parserSettings.DetailedWvWParse); break; // case ArcDPSEnums.TargetID.MassiveGolem10M: case ArcDPSEnums.TargetID.MassiveGolem4M: case ArcDPSEnums.TargetID.MassiveGolem1M: case ArcDPSEnums.TargetID.VitalGolem: case ArcDPSEnums.TargetID.AvgGolem: case ArcDPSEnums.TargetID.StdGolem: case ArcDPSEnums.TargetID.ConditionGolem: case ArcDPSEnums.TargetID.PowerGolem: case ArcDPSEnums.TargetID.LGolem: case ArcDPSEnums.TargetID.MedGolem: Logic = new Golem(id); break; case ArcDPSEnums.TargetID.Instance: Logic = new Instance(id); break; // default: switch (ArcDPSEnums.GetTrashID(id)) { case ArcDPSEnums.TrashID.HauntingStatue: Logic = new TwistedCastle((int)ArcDPSEnums.TargetID.DummyTarget); break; default: // Unknown Logic = new UnknownFightLogic(id); break; } break; } }