Beispiel #1
0
        public bool IsValidAttackableObject(AttackableUnit unit)
        {
            //Valid check
            if (!unit.IsValidAutoRange())
            {
                return(false);
            }

            if (unit is Obj_AI_Hero || unit is Obj_AI_Turret || unit.Type == GameObjectType.obj_BarracksDampener || unit.Type == GameObjectType.obj_HQ)
            {
                return(true);
            }

            //J4 flag
            if (unit.Name.Contains("Beacon"))
            {
                return(false);
            }

            var minion = unit as Obj_AI_Minion;

            if (minion == null)
            {
                return(false);
            }

            var name = minion.UnitSkinName.ToLower();

            if (!this.Config["Misc"]["attackPlants"].Enabled && name.Contains("sru_plant_"))
            {
                return(false);
            }

            if (!this.Config["Misc"]["attackWards"].Enabled && name.Contains("ward"))
            {
                return(false);
            }

            if (this.GangPlank != null)
            {
                if (name.Contains("gangplankbarrel"))
                {
                    if (!this.Config["Misc"]["attackBarrels"].Enabled)
                    {
                        return(false);
                    }

                    //dont attack ally barrels
                    if (this.GangPlank.IsAlly)
                    {
                        return(false);
                    }
                }
            }

            return(true);
        }
Beispiel #2
0
        public bool IsValidAttackableObject(AttackableUnit unit)
        {
            //Valid check
            if (!unit.IsValidAutoRange())
            {
                return(false);
            }

            if (unit is Obj_AI_Hero || unit is Obj_AI_Turret || unit.Type == GameObjectType.obj_BarracksDampener || unit.Type == GameObjectType.obj_HQ)
            {
                return(true);
            }

            //J4 flag
            if (unit.Name.Contains("Beacon"))
            {
                return(false);
            }

            var mBase = unit as Obj_AI_Base;

            if (mBase == null || !mBase.IsFloatingHealthBarActive)
            {
                return(false);
            }


            var minion = unit as Obj_AI_Minion;

            if (minion == null)
            {
                return(false);
            }


            var name = minion.UnitSkinName.ToLower();

            if (name.Contains("zyraseed"))
            {
                return(false);
            }

            if (!Config["Farming"]["AttackPlants"].Enabled && name.Contains("sru_plant_"))
            {
                return(false);
            }

            if (!Config["Farming"]["AttackWards"].Enabled && name.Contains("ward"))
            {
                return(false);
            }

            if (this.GangPlank == null)
            {
                return(true);
            }

            if (!name.Contains("gangplankbarrel"))
            {
                return(true);
            }

            if (!Config["Farming"]["AttackBarrels"].Enabled)
            {
                return(false);
            }

            //dont attack ally barrels
            return(!this.GangPlank.IsAlly);
        }