Ejemplo n.º 1
0
        protected virtual void ComputeFightTargets(AgentData agentData, List <CombatItem> combatItems)
        {
            foreach (int id in GetUniqueTargetIDs())
            {
                RegroupTargetsByID(id, agentData, combatItems);
            }
            List <int> ids = GetFightTargetsIDs();

            foreach (int id in ids)
            {
                List <AgentItem> agents = agentData.GetNPCsByID(id);
                foreach (AgentItem agentItem in agents)
                {
                    Targets.Add(new NPC(agentItem));
                }
            }
            List <ParseEnum.TrashIDS> ids2 = GetTrashMobsIDS();
            var aList = agentData.GetAgentByType(AgentItem.AgentType.NPC).Where(x => ids2.Contains(ParseEnum.GetTrashIDS(x.ID))).ToList();

            //aList.AddRange(agentData.GetAgentByType(AgentItem.AgentType.Gadget).Where(x => ids2.Contains(ParseEnum.GetTrashIDS(x.ID))));
            foreach (AgentItem a in aList)
            {
                var mob = new NPC(a);
                TrashMobs.Add(mob);
            }
        }
Ejemplo n.º 2
0
        protected void ComputeFightTargets(AgentData agentData, List <CombatItem> combatItems)
        {
            foreach (ushort id in GetUniqueTargetIDs())
            {
                RegroupTargetsByID(id, agentData, combatItems);
            }
            List <ushort> ids = GetFightTargetsIDs();

            foreach (ushort id in ids)
            {
                List <AgentItem> agents = agentData.GetAgentsByID(id);
                foreach (AgentItem agentItem in agents)
                {
                    Targets.Add(new Target(agentItem));
                }
            }
            List <ParseEnum.TrashIDS> ids2  = GetTrashMobsIDS();
            List <AgentItem>          aList = agentData.GetAgentByType(AgentItem.AgentType.NPC).Where(x => ids2.Contains(ParseEnum.GetTrashIDS(x.ID))).ToList();

            foreach (AgentItem a in aList)
            {
                Mob mob = new Mob(a);
                TrashMobs.Add(mob);
            }
        }
Ejemplo n.º 3
0
        public void InitTrashMobCombatReplay(ParsedLog log, int pollingRate)
        {
            List <ParseEnum.TrashIDS> ids   = GetTrashMobsIDS();
            List <AgentItem>          aList = log.AgentData.GetAgentByType(AgentItem.AgentType.NPC).Where(x => ids.Contains(ParseEnum.GetTrashIDS(x.ID))).ToList();

            foreach (AgentItem a in aList)
            {
                Mob mob = new Mob(a);
                mob.InitCombatReplay(log, pollingRate, true, false);
                TrashMobs.Add(mob);
            }
        }
        protected FightLogic(ushort triggerID, AgentData agentData)
        {
            TriggerID          = triggerID;
            HasCombatReplayMap = GetCombatMap() != null;
            MechanicList       = new List <Mechanic>()
            {
                new PlayerStatusMechanic(SkillItem.DeathId, "Dead", new MechanicPlotlySetting("x", "rgb(0,0,0)"), "Dead", 0),
                new PlayerStatusMechanic(SkillItem.DownId, "Downed", new MechanicPlotlySetting("cross", "rgb(255,0,0)"), "Downed", 0),
                new PlayerStatusMechanic(SkillItem.ResurrectId, "Resurrect", new MechanicPlotlySetting("cross-open", "rgb(0,255,255)"), "Res", 0),
                new PlayerStatusMechanic(SkillItem.AliveId, "Got up", new MechanicPlotlySetting("cross", "rgb(0,255,0)"), "Got up", 0),
                new PlayerStatusMechanic(SkillItem.DCId, "Disconnected", new MechanicPlotlySetting("x", "rgb(120,120,120)"), "DC", 0),
                new PlayerStatusMechanic(SkillItem.RespawnId, "Respawn", new MechanicPlotlySetting("cross", "rgb(120,120,255)"), "Resp", 0)
            };
            _basicMechanicsCount = MechanicList.Count;
            List <ParseEnum.TrashIDS> ids   = GetTrashMobsIDS();
            List <AgentItem>          aList = agentData.GetAgentByType(AgentItem.AgentType.NPC).Where(x => ids.Contains(ParseEnum.GetTrashIDS(x.ID))).ToList();

            foreach (AgentItem a in aList)
            {
                Mob mob = new Mob(a);
                TrashMobs.Add(mob);
            }
        }