コード例 #1
0
ファイル: JungleTracker.cs プロジェクト: wx8829110/WUYANZZZ
        /// <summary>
        ///     Games the object_ on create.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param>
        private static void GameObject_OnCreate(GameObject sender, EventArgs args)
        {
            if (sender.Type != GameObjectType.obj_AI_Minion)
            {
                return;
            }

            var camp =
                JungleCamps.FirstOrDefault(
                    x => x.MobNames.Select(y => y.ToLower()).Any(z => z.Equals(sender.Name.ToLower())));

            if (camp == null)
            {
                return;
            }

            camp.ObjectsAlive.Add(sender.Name);
            camp.ObjectsDead.Remove(sender.Name);

            if (camp.ObjectsAlive.Count != camp.MobNames.Length)
            {
                return;
            }

            camp.Dead            = false;
            camp.NextRespawnTime = 0;
        }
コード例 #2
0
ファイル: JungleTracker.cs プロジェクト: wx8829110/WUYANZZZ
        /// <summary>
        ///     Games the object_ on delete.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="args">The <see cref="System.EventArgs" /> instance containing the event data.</param>
        private void GameObject_OnDelete(GameObject sender, EventArgs args)
        {
            if (sender.Type != GameObjectType.obj_AI_Minion)
            {
                return;
            }

            var camp =
                JungleCamps.FirstOrDefault(
                    x => x.MobNames.Select(y => y.ToLower()).Any(z => z.Equals(sender.Name.ToLower())));

            if (camp == null)
            {
                return;
            }

            camp.ObjectsDead.Add(sender.Name);
            camp.ObjectsAlive.Remove(sender.Name);

            if (camp.ObjectsDead.Count != camp.MobNames.Length && camp.MobsAreChildren)
            {
                return;
            }

            camp.Dead            = true;
            camp.NextRespawnTime = Game.Time + camp.RespawnTime / 1000f - 3;
            CampDied?.Invoke(this, camp);
        }
コード例 #3
0
        private static void GameObject_OnDelete(GameObject sender, EventArgs args)
        {
            if (!sender.Name.StartsWith(Game.MapId == GameMapId.SummonersRift ? "SRU" : "TT"))
            {
                return;
            }
            if (Root["enabled"].GetValue <bool>() == false)
            {
                return;
            }
            if (sender.ObjectType != GameObjectType.obj_AI_Minion)
            {
                return;
            }

            var camp = JungleCamps.FirstOrDefault(
                x => x.MobNames.Select(y => y.ToLower()).Any(z => z.Equals(sender.Name.ToLower())));

            if (camp == null)
            {
                return;
            }

            camp.ObjectsDead.Add(sender.Name);
            camp.ObjectsAlive.Remove(sender.Name);

            if (camp.ObjectsDead.Count == camp.MobNames.Length)
            {
                camp.Dead            = true;
                camp.NextRespawnTime = Environment.TickCount + camp.RespawnTime - 3000;
            }
        }
コード例 #4
0
 private static void UpdateCamps(int networkID, int campID, byte emptyType)
 {
     if (emptyType != 3)
     {
         JungleCamps jungleCamp = GetJungleCampByID(campID);
         if (jungleCamp != null)
         {
             jungleCamp.nextRespawnTime = (int)Game.Time + jungleCamp.respawnTime;
         }
     }
 }
コード例 #5
0
 public static JungleCamp ClosestCamp(this Unit unit)
 {
     return(JungleCamps.FindClosestCamp(unit.Position));
 }
コード例 #6
0
ファイル: Program.cs プロジェクト: Zuena/Ensagebeminee
 private static JungleCamps CheckMeepo(Meepo clone)
 {
     var a = new JungleCamps();
     return JungleCamps.Where(x => x.meepos != null).Aggregate(a, (current, x) => (x.meepos.Handle == clone.Handle ? x : current));
 }
コード例 #7
0
 /// <summary>
 ///     The closest camp.
 /// </summary>
 /// <param name="entity">
 ///     The entity.
 /// </param>
 /// <returns>
 ///     The <see cref="JungleCamp" />.
 /// </returns>
 public static JungleCamp ClosestCamp(this Entity entity)
 {
     return(JungleCamps.FindClosestCamp(entity.Position));
 }
コード例 #8
0
ファイル: JungleStacker.cs プロジェクト: IdcNoob/Ensage
 public void OnLoad()
 {
     hero = ObjectManager.LocalHero;
     heroTeam = hero.Team;
     jungleCamps = new JungleCamps(heroTeam);
     Camp.DisplayOverlay = menu.IsEnabled;
     Camp.Debug = Controllable.Debug = menu.IsDebugEnabled;
     controllableUnits.Add(new Controllable(hero, true));
     sleeper = new Sleeper();
 }