Ejemplo n.º 1
0
 private static void OnGameProcessPacket(GamePacketEventArgs args)
 {
     if(LeagueSharp.Game.Mode != GameMode.Running || OnGameStart == null)
         return;
     OnGameStart(new EventArgs());
     LeagueSharp.Game.OnGameProcessPacket -= OnGameProcessPacket;
 }
Ejemplo n.º 2
0
 static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (config.Item("grabem").GetValue<KeyBind>().Active)
     {
         GamePacket g = new GamePacket(args.PacketData);
         if (g.Header == 0xFE)
         {
             if (Packet.MultiPacket.OnAttack.Decoded(args.PacketData).Type == Packet.AttackTypePacket.TargetedAA)
             {
                 g.Position = 1;
                 var k = ObjectManager.GetUnitByNetworkId<Obj_AI_Base>(g.ReadInteger());
                 if (k is Obj_AI_Hero && k.IsEnemy)
                 {
                     if (Vector3.Distance(k.Position, ObjectManager.Player.Position) <= 925)
                     {
                         //Game.PrintChat(k.Name + " auto'd");
                         List<Vector3> v = new List<Vector3> {k.Position};
                         var l = LeagueSharp.Common.Collision.GetCollision(v, p);
                         if (l.Count == 0)
                         {
                             //Game.PrintChat("casting q");
                             ObjectManager.Player.Spellbook.CastSpell(SpellSlot.Q, k.Position);
                         }
                     }
                 }
             }
         }
     }
 }
Ejemplo n.º 3
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            var packet = new GamePacket(args.PacketData);
            Camp camp;

            switch (packet.Header)
            {
                case 0xC3:
                    packet.Position = 5;
                    var UnitNetworkId = packet.ReadInteger();
                    var CampId = packet.ReadInteger();
                    var EmptyType = packet.ReadByte();
                    var BuffHash = packet.ReadInteger();
                    var respawnTime = packet.ReadFloat();

                    camp = Camps[CampId];
                    if (camp != null)
                        camp.Kill(respawnTime);

                    break;

                case 0xE9:
                    packet.Position = 21;
                    var campId = packet.ReadByte();

                    camp = Camps[campId];
                    if (camp != null)
                        camp.Spawn();

                    break;
            }
        }
Ejemplo n.º 4
0
 private static void GameOnOnSendPacket(GamePacketEventArgs args)
 {
     if (PacketsSentWriter != null)
     {
         PacketsSentWriter.WriteLine("Time: " + Core.GameTickCount + ", GamePacket: " + args.GamePacket);
     }
 }
Ejemplo n.º 5
0
 private static void GameOnOnProcessPacket(GamePacketEventArgs args)
 {
     if (PacketsReceivedWriter != null)
     {
         PacketsReceivedWriter.WriteLine("Time: " + Core.GameTickCount + ", GamePacket: " + args.GamePacket);
     }
 }
Ejemplo n.º 6
0
 public static void OnGameProcessPacket(GamePacketEventArgs args)
 {
     try
     {
         if (Config.Item("db_targ").GetValue<KeyBind>().Active)
         {
             LogPacket(args);
         }
         if (Riven.orbwalker.ActiveMode.ToString() == "Combo")
         {
             if (args.PacketData[0] == 101 && Riven.Q.IsReady())
             {
                // LogPacket(args);
                 GamePacket gp = new GamePacket(args.PacketData);
                 gp.Position = 5;
                 int dType = (int)gp.ReadByte();
                 int targetID = gp.ReadInteger();
                 int source = gp.ReadInteger();
                 if (Riven.Player.NetworkId != source)
                     return;
                 Obj_AI_Hero targ = ObjectManager.GetUnitByNetworkId<Obj_AI_Hero>(targetID);
                 if(dType == 12 || dType == 3)
                     Riven.Q.Cast(targ.Position);
             }
         }
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.ToString());
     }
 }
Ejemplo n.º 7
0
 static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0xC1 || args.PacketData[0] == 0xC2)
     {
         TimeOffset = BitConverter.ToSingle(args.PacketData, 5) - Game.Time;
         new System.Threading.Thread(() =>
         {
             GetTimers();
         }).Start();
     }
     else if (args.PacketData[0] == Packet.S2C.EmptyJungleCamp.Header)
     {
         Byte Camp = args.PacketData[9];
         TimeSpan time = TimeSpan.FromSeconds(jungleRespawns[Camp] - Game.Time - TimeOffset);
         if (time.TotalSeconds < 0)
         {
             if (Camp == 0xC)
                 jungleRespawns[Camp] = Game.Time + TimeOffset + 420;
             else if (Camp == 0x6)
                 jungleRespawns[Camp] = Game.Time + TimeOffset + 360;
             else if (Camp == 0x1 || Camp == 0x4 || Camp == 0x7 || Camp == 0xA)
                 jungleRespawns[Camp] = Game.Time + TimeOffset + 300;
             else
                 jungleRespawns[Camp] = Game.Time + TimeOffset + 100;
         }
     }
 }
Ejemplo n.º 8
0
        private static void PacketHandler(GamePacketEventArgs args)
        {
            var Packetc = new GamePacket(args.PacketData);
            if (Packetc.Header == Packet.C2S.Cast.Header)
            {
                var decodedpacket = Packet.C2S.Cast.Decoded(args.PacketData);
                if (LatestCast.Tick + 500 < Environment.TickCount)
                {
                    LatestCast.Timepass = Environment.TickCount - LatestCast.Tick;
                    LatestCast.Distance = Math.Sqrt(Math.Pow(decodedpacket.ToX - LatestCast.X, 2) + Math.Pow(decodedpacket.ToY - LatestCast.Y, 2));
                    LatestCast.Delay = (LatestCast.Distance * 0.1 * Config.Item("delaytime").GetValue<Slider>().Value);
                    if (Environment.TickCount > LatestCast.Tick + LatestCast.Delay)
                    {
                        args.Process = false;
                    }
                    if (args.Process == true)
                    {
                        LatestCast.Tick = Environment.TickCount;
                        LatestCast.X = decodedpacket.ToX;
                        LatestCast.Y = decodedpacket.ToY;
                    }
                }
            }

        }
Ejemplo n.º 9
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            var data = args.PacketData;
            if (data[0] != Packet.S2C.AddGold.Header)
            {
                return;
            }

            var decoded = Packet.S2C.AddGold.Decoded(data);
            Console.WriteLine(
                @"ReceivingUnit: {0} | SourceUnit {1}", decoded.ReceivingUnit.BaseSkinName,
                decoded.SourceUnit.BaseSkinName);
            if (decoded.ReceivingUnit.IsEnemy)
            {
                _enemyTeamGold += decoded.Gold;
            }
            else if (decoded.ReceivingUnit.IsAlly)
            {
                _myTeamGold += decoded.Gold;
            }
            else
            {
                Console.WriteLine(@"Uhh, Chewy? I think you dun goofed.");
            }
        }
        void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            if (!IsActive())
                return;

            var reader = new BinaryReader(new MemoryStream(args.PacketData));

            byte packetId = reader.ReadByte();
            List<int> packetIds = new List<int>();
            if (Game.Version.Contains("5.24"))
            {
                packetIds.Add(21);
                packetIds.Add(36);
            }
            if (Game.Version.Contains("6.1"))
            {
                packetIds.Add(77);
            }
            if (Game.Version.Contains("6.2"))
            {
                packetIds.Add(99);
            }
            if (Game.Version.Contains("6.3"))
            {
                packetIds.Add(175);
            }
            foreach (int id in packetIds)
            {
                if (packetId == id)
                {
                    args.Process = false;
                }
            }
        }
Ejemplo n.º 11
0
 public static void OnProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0xBA)
     {
         ObjectNetworkId = new GamePacket(args.PacketData) { Position = 2 }.ReadInteger();
     }
 }
Ejemplo n.º 12
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0x17)
     {
         var packet = new GamePacket(args.PacketData);
         packet.Position = 1;
         if (packet.ReadInteger() == ObjectManager.Player.NetworkId)
         {
             packet.Position = 7;
             var id = packet.ReadByte();
             switch (id)
             {
                 case 0x42:
                     if (Select == Cards.Blue) SendWPacket();
                     break;
                 case 0x47:
                     if (Select == Cards.Yellow) SendWPacket();
                     break;
                 case 0x52:
                     if (Select == Cards.Red) SendWPacket();
                     break;
             }
         }
     }
 }
Ejemplo n.º 13
0
 private static void Game_OnProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData.GetPacketId().Equals(BuyItemAns))
     {
         LeagueSharp.Common.Utility.DelayAction.Add(300, UpdateInventory);
     }
 }
Ejemplo n.º 14
0
        private static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] == Packet.S2C.Dash.Header)
            {
                var decodedPacket = Packet.S2C.Dash.Decoded(args.PacketData);

                var networkId = decodedPacket.UnitNetworkId;
                var speed = decodedPacket.Speed;
                var unit = ObjectManager.GetUnitByNetworkId<Obj_AI_Base>(networkId);

                if (unit != null && unit.IsValid && unit.Type == GameObjectType.obj_AI_Hero)
                {
                    if (!DetectedDashes.ContainsKey(unit.NetworkId))
                    {
                        DetectedDashes.Add(unit.NetworkId, new DashItem());
                    }

                    DetectedDashes[unit.NetworkId].StartTick = Environment.TickCount - Game.Ping / 2;
                    DetectedDashes[unit.NetworkId].Speed = speed;
                    DetectedDashes[unit.NetworkId].StartPos = unit.ServerPosition.To2D();
                    DetectedDashes[unit.NetworkId].Processed = false;
                    DetectedDashes[unit.NetworkId].Unit = unit;
                }
            }
        }
Ejemplo n.º 15
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (Config.Item("AntiCamLock").GetValue<bool>() && args.PacketData[0] == 0x83 && args.PacketData[7] == 0x47 && args.PacketData[8] == 0x47)
     {
         args.Process = false;
     }
 }
Ejemplo n.º 16
0
        private static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] != 0x87)
                return;

            for (var i = 0; i < _menu.Item("Count").GetValue<Slider>().Value; i++)
                Game.ProcessPacket(args.PacketData, PacketChannel.S2C);
        }
Ejemplo n.º 17
0
 private void Game_OnGameSendPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0x72 && Player.HasBuff("Drain") && count < 3)
     {
         count = count + 1;
         args.Process = false;
     }
 }
Ejemplo n.º 18
0
 static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0xC1)
     {
         if (Shoutbox.account != "")
             Shoutbox.Process("update msg");
     }
 }
Ejemplo n.º 19
0
 public static void OnGameSendPacket(GamePacketEventArgs args)
 {
     if (args != null && (args.PacketData[0] == 175))
     {
         //Console.WriteLine("aa " + args.PacketData[0]);
        // args.Process = false;
     }
 }
Ejemplo n.º 20
0
        private static void Game_OnGameSendPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] != 0xA8)
                return;

            var p = new GamePacket(args.PacketData) { Position = 5 };
            LastSequence = p.ReadInteger();
        }
Ejemplo n.º 21
0
        private static void Game_OnProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData.GetPacketId().Equals(BuyItemAns))
            {
                UpdateInventory();

            }
        }
Ejemplo n.º 22
0
 private void Game_OnProcessPacket(GamePacketEventArgs args)
 {
     //Packet info stolen from Trees
     if (config.Item("NoRlock", true).GetValue<bool>() && args.PacketData[0] == 0x83 &&
         args.PacketData[7] == 0x47 && args.PacketData[8] == 0x47)
     {
         args.Process = false;
     }
 }
Ejemplo n.º 23
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0x71)
     {
         var packet = new GamePacket(args.PacketData) {Position = 1};
         var networkId = packet.ReadInteger();
         WObjectNetworkId = networkId;
     }
 }
Ejemplo n.º 24
0
 private static void Game_OnGameSendPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == Packet.C2S.Cast.Header)
     {
         var decodedPacket = Packet.C2S.Cast.Decoded(args.PacketData);
         LastCastPacketSent = new LastCastPacketSentEntry(
             decodedPacket.Slot, Environment.TickCount, decodedPacket.TargetNetworkId);
     }
 }
Ejemplo n.º 25
0
 static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     var reader = new BinaryReader(new MemoryStream(args.PacketData));
     byte PacketId = reader.ReadByte(); //PacketId
     if (PacketId == Skin.Header) //OLD 180
     {
         //Console.WriteLine("help");
     }
 }
Ejemplo n.º 26
0
		public void Game_OnGameSendPacket(GamePacketEventArgs args)
		{
			if(args.PacketData[0] != Packet.C2S.Move.Header)
				return;
			var decodedPacket = Packet.C2S.Move.Decoded(args.PacketData);
			if(decodedPacket.MoveType == 3 &&
				(Program.Orbwalker.GetTarget().IsMinion && !Program.Menu.Item("hitMinions").GetValue<bool>()))
				args.Process = false;
		}
        private static void Game_OnGameSendPacket(GamePacketEventArgs args)
        {
            if (!Enabled || args.PacketData[0] != Packet.C2S.Cast.Header || CanCast(new GamePacket(args.PacketData)))
            {
                return;
            }

            args.Process = false;
        }
Ejemplo n.º 28
0
        /// <summary>
        ///     Detects the spells that have missile and are casted from fow.
        /// </summary>
        public static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
        {
            //Gets received when a projectile is created.
            if (args.PacketData[0] == 0x3B)
            {
                var packet = new GamePacket(args.PacketData);

                packet.Position = 1;

                packet.ReadFloat(); //Missile network ID

                var missilePosition = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());
                var unitPosition = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());

                packet.Position = packet.Size() - 119;
                var missileSpeed = packet.ReadFloat();

                packet.Position = 65;
                var endPos = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());

                packet.Position = 112;
                var id = packet.ReadByte();

                packet.Position = packet.Size() - 83;

                var unit = ObjectManager.GetUnitByNetworkId<Obj_AI_Hero>(packet.ReadInteger());
                if ((!unit.IsValid || unit.Team == ObjectManager.Player.Team))
                {
                    return;
                }

                var spellData = SpellDatabase.GetBySpeed(unit.ChampionName, (int)missileSpeed, id);

                if (spellData == null)
                {
                    return;
                }
                if (spellData.SpellName != "Laser")
                {
                    return;
                }
                var castTime = Environment.TickCount - Game.Ping / 2 - spellData.Delay
                               - (int)
                                 (1000 * missilePosition.SwitchYZ().To2D().Distance(unitPosition.SwitchYZ())
                                  / spellData.MissileSpeed);

                //Trigger the skillshot detection callbacks.
                TriggerOnDetectSkillshot(
                    DetectionType.RecvPacket,
                    spellData,
                    castTime,
                    unitPosition.SwitchYZ().To2D(),
                    endPos.SwitchYZ().To2D(),
                    unit);
            }
        }
Ejemplo n.º 29
0
 private void Game_onSendPacket(GamePacketEventArgs args)
 {
     if (args.GetPacketId() == 160)
     {
         if (testMenu.Item("EvadeTesterPing").GetValue <bool>())
         {
             ConsolePrinter.Print("Send Path ClickTime: " + (EvadeUtils.TickCount - lastRightMouseClickTime));
         }
     }
 }
Ejemplo n.º 30
0
        /// <summary>
        /// The event when called a packet sent to server
        /// </summary>
        /// <param name="args"></param>
        private static void Game_OnSendPacket(GamePacketEventArgs args)
        {
            if (s_blockedOpcodes.Contains(BitConverter.ToInt16(args.PacketData, 0)))
                return;
            if (s_debugOnlyOpcode != 0xFFFF && s_debugOnlyOpcode != BitConverter.ToInt16(args.PacketData, 0))
                return;

            Console.WriteLine("[C->S][Opcode:0x{0:X4} ({0})][ProtocolFlag:{1}][MyNetId:{3:X8} ({2})]", BitConverter.ToInt16(args.PacketData, 0), args.ProtocolFlag, ObjectManager.Player.NetworkId, BitConverter.ToInt32(BitConverter.GetBytes(ObjectManager.Player.NetworkId).Reverse().ToArray(), 0));
            HexDump(args.PacketData, 2, args.PacketData.Length - 2);
        }
Ejemplo n.º 31
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0x1A)
     {
         var packet = new GamePacket(args.PacketData);
         packet.Position = 2;
         var networkId = packet.ReadInteger();
         WObjectNetworkId = networkId;
     }
 }
Ejemplo n.º 32
0
        private static void Game_OnGameSendPacket(GamePacketEventArgs args)
        {
            if (Menu.Item("CameraPacket").GetValue <bool>() && args.PacketData[0] == 0x81 &&
                (Environment.TickCount - LastSent) < 100)
            {
                args.Process = false;
            }

            LastSent = Environment.TickCount;
        }
Ejemplo n.º 33
0
 /// <summary>
 /// The event when called a packet received from the server.
 /// </summary>
 /// <param name="args">The args./param>
 private static void Game_OnProcessPacket(GamePacketEventArgs args)
 {
     foreach (var fn in s_opcodeMap[BitConverter.ToUInt16(args.PacketData, 0)])
     {
         if (fn != null)
         {
             fn(args.PacketData);
         }
     }
 }
Ejemplo n.º 34
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] != Packet.S2C.Recall.Header)
            {
                return;
            }
            var newRecall = RecallDecode(args.PacketData);

            Program.Helper.EnemyInfo.Find(x => x.Player.NetworkId == newRecall.UnitNetworkId).RecallInfo.UpdateRecall(newRecall); //Packet.S2C.Recall.Decoded(args.PacketData)
        }
Ejemplo n.º 35
0
        public static short GetPacketId(this GamePacketEventArgs gamePacketEventArgs)
        {
            var packetData = gamePacketEventArgs.PacketData;

            if (packetData.Length < 2)
            {
                return(0);
            }
            return((short)(packetData[0] + packetData[1] * 256));
        }
Ejemplo n.º 36
0
 public static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == Packet.S2C.Recall.Header)
     {
         Packet.S2C.Recall.Struct decoded            = Packet.S2C.Recall.Decoded(args.PacketData);
         Obj_AI_Hero objAiHero                       = ObjectManager.GetUnitByNetworkId <Obj_AI_Hero>(decoded.UnitNetworkId);
         Packet.S2C.Recall.RecallStatus recallStatus = decoded.Status;
         Game.PrintChat(objAiHero.Name + " is " + recallStatus);
     }
 }
Ejemplo n.º 37
0
 public static void OnProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0xBA)
     {
         ObjectNetworkId = new GamePacket(args.PacketData)
         {
             Position = 2
         }.ReadInteger();
     }
 }
Ejemplo n.º 38
0
        private static void DragonPackets(GamePacketEventArgs args)
        {
            short header = BitConverter.ToInt16(args.PacketData, 0);
            if ((header == 154 || header == 146 || header == 34) && BitConverter.ToInt32(args.PacketData, 2) == dragon.currentid)
            {
                if (header == 34)
                {
                    dragon.oldIds.Add(dragon.currentid);
                    dragon.deathtime = dragon.lastp+360;
                    dragon.state = State.Dead;
                    dragon.text = "Dead";
                    dragon.show = false;
                    dragon.last3[0] = 0;
                    dragon.last3[1] = 0;
                    dragon.last3[2] = 0;
                    return;
                }
                dragon.last3[0] = dragon.last3[1];
                dragon.last3[1] = dragon.last3[2];
                dragon.last3[2] = header;

            if (dragon.last3[2] == 154)
            {
                dragon.state=State.Attacked;
                dragon.text = "Just attacked";
                dragon.show = true;
            }
            if (dragon.last3[0] == 146 && dragon.last3[1] == 146 && dragon.last3[2] == 146)
            {
                dragon.state = State.UnderAttack;
                dragon.text = "Under attack";
                dragon.show = true;
            }
            if (dragon.last3[0] == 146 && dragon.last3[1] == 154 && dragon.last3[2] == 146)
            {
                dragon.text = "Disengaged";
                dragon.show = true;
                dragon.state = State.Disengaged;
                dragon.last3[0] = 0;
                dragon.last3[1] = 0;
                dragon.last3[2] = 0;
            }
            if (dragon.last3[0] == 154 && dragon.last3[1] == 154 && dragon.last3[2] == 146)
            {
                dragon.text = "Disengaged";
                dragon.show = true;
                dragon.state = State.Disengaged;
                dragon.last3[0] = 0;
                dragon.last3[1] = 0;
                dragon.last3[2] = 0;
            }

            dragon.lastp = Game.Time+1;
            }
        }
Ejemplo n.º 39
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] == Packet.S2C.TowerAggro.Header)
            {
                Packet.S2C.TowerAggro.Struct aggroPacket = Packet.S2C.TowerAggro.Decoded(args.PacketData);
                Obj_AI_Turret turret = ObjectManager.Get <Obj_AI_Turret>().First(t => t.NetworkId == aggroPacket.TurretNetworkId);
                Obj_AI_Base   target = ObjectManager.Get <Obj_AI_Base>().First(t => t.NetworkId == aggroPacket.TargetNetworkId);

                Game.PrintChat(turret.BaseSkinName + target.BaseSkinName);
            }



            GamePacket p = new GamePacket(args.PacketData);

            if (p.Header != Packet.S2C.TowerAggro.Header)
            {
                return;
            }
            if (Packet.S2C.TowerAggro.Decoded(args.PacketData).TargetNetworkId != Player.NetworkId)
            {
                return;
            }

            if (Game.Time - foundturret > 20 && !recalling)
            {
                var turret2 =
                    ObjectManager.Get <Obj_AI_Turret>()
                    .Where(x => x.Distance(Player.Position) < 3500 && x.IsAlly);

                if (turret2.Any())
                {
                    stopfollowing = true;
                    turret        = turret2.First();
                    foundturret   = Game.Time;
                }
            }


            if (!stopfollowing || recalling) //따라다니고 있고 리콜중이라면 패스
            {
                return;
            }

            Player.IssueOrder(GameObjectOrder.MoveTo, turret);                          // 터렛으로 움직여

            if ((Player.Distance(turret.Position) <= 350) || !(Game.Time - count > 15)) // 15초가 안지났고 터렛과의 거리가 350보다 크면
            {
                return;
            }
            Player.Spellbook.CastSpell(SpellSlot.Recall);

            recalling = true;
            count     = Game.Time;
        }
Ejemplo n.º 40
0
        /// <summary>
        ///     Detects the spells that have missile and are casted from fow.
        /// </summary>
        public static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
        {
            //Gets received when a projectile is created.
            if (args.PacketData[0] == 0x3B)
            {
                var packet = new GamePacket(args.PacketData)
                {
                    Position = 1
                };


                packet.ReadFloat(); //Missile network ID

                var missilePosition = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());
                var unitPosition    = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());

                packet.Position = packet.Size() - 119;
                var missileSpeed = packet.ReadFloat();

                packet.Position = 65;
                var endPos = new Vector3(packet.ReadFloat(), packet.ReadFloat(), packet.ReadFloat());

                packet.Position = 112;
                var id = packet.ReadByte();


                packet.Position = packet.Size() - 83;

                var unit = ObjectManager.GetUnitByNetworkId <AIHeroClient>((uint)packet.ReadInteger());
                if ((!unit.IsValid || unit.Team == ObjectManager.Player.Team))
                {
                    return;
                }

                var spellData = SpellDatabase.GetBySpeed(unit.ChampionName, (int)missileSpeed, id);

                if (spellData == null)
                {
                    return;
                }
                if (spellData.SpellName != "Laser")
                {
                    return;
                }
                var castTime = Environment.TickCount - Game.Ping / 2 - spellData.Delay -
                               (int)
                               (1000 * Geometry.SwitchYZ(missilePosition).To2D().Distance(Geometry.SwitchYZ(unitPosition)) /
                                spellData.MissileSpeed);

                //Trigger the skillshot detection callbacks.
                TriggerOnDetectSkillshot(
                    DetectionType.RecvPacket, spellData, castTime, unitPosition.SwitchYZ().To2D(),
                    endPos.SwitchYZ().To2D(), unit);
            }
        }
Ejemplo n.º 41
0
 private static void OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.Channel == PacketChannel.S2C && args.PacketData[0] == Packet.S2C.UpdateModel.Header)
     {
         if (Packet.S2C.UpdateModel.Decoded(args.PacketData).NetworkId == Player.NetworkId && Config.SubMenu(Name + "_Plugin").Item(Name + "_Misc_CustomSkin") != null)
         {
             args.Process = false;
             SkinChanger(null, null);
         }
     }
 }
Ejemplo n.º 42
0
 static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == 0xFE && Config.Item("AntiCamLock").GetValue <bool>())
     {
         var p = new GamePacket(args.PacketData);
         if (p.ReadInteger(1) == ObjectManager.Player.NetworkId && p.Size() > 9)
         {
             args.Process = false;
         }
     }
 }
Ejemplo n.º 43
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (Config.Item("AntiCamLock").GetValue <bool>() && args.PacketData[0] == 0x07)
     {
         var gp = new GamePacket(args.PacketData);
         if (gp.ReadInteger(2) == ObjectManager.Player.NetworkId && gp.ReadByte(8) == 0x61 && gp.ReadByte(8) == 0x44)
         {
             args.Process = false;
         }
     }
 }
Ejemplo n.º 44
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     //Game end packet
     if (args.PacketData[0] == Packet.S2C.GameEnd.Header)
     {
         if (OnGameEnd != null)
         {
             OnGameEnd(new EventArgs());
         }
     }
 }
Ejemplo n.º 45
0
 private static void OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.Channel == PacketChannel.S2C && args.PacketData[0] == Packet.S2C.UpdateModel.Header)
     {
         if (Packet.S2C.UpdateModel.Decoded(args.PacketData).NetworkId == Player.NetworkId)
         {
             args.Process = false;
             SkinChanger(null, null);
         }
     }
 }
Ejemplo n.º 46
0
 private static void OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (PacketChannel.S2C == args.Channel && args.PacketData[0] == Packet.S2C.UpdateModel.Header) // Update Packet recieved.
     {
         var decoded = Packet.S2C.UpdateModel.Decoded(args.PacketData);
         if (decoded.NetworkId == ObjectManager.Player.NetworkId)
         {
             changedForm = true;
         }
     }
 }
Ejemplo n.º 47
0
 internal static void Game_OnGameSendPacket(GamePacketEventArgs args)
 {
     // Avoid stupic Q casts while jumping in mid air!
     if (args.PacketData[0] == Packet.C2S.Cast.Header && player.IsDashing())
     {
         // Don't process the packet if we are jumping!
         if (Packet.C2S.Cast.Decoded(args.PacketData).Slot == SpellSlot.Q)
         {
             args.Process = false;
         }
     }
 }
Ejemplo n.º 48
0
 //Increase chance of casting Q before R hits
 static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == Packet.C2S.Cast.Header && _q.IsReady())
     {
         var decoded = Packet.C2S.Cast.Decoded(args.PacketData);
         if (decoded.SourceNetworkId == Player.NetworkId && decoded.Slot == SpellSlot.R && InMisayaCombo)
         {
             Console.WriteLine("Packet Cast");
             _q.Cast(ObjectManager.GetUnitByNetworkId <Obj_AI_Base>(decoded.TargetNetworkId), Config.Item("Packet Casting").GetValue <bool>());
         }
     }
 }
Ejemplo n.º 49
0
        public GamePacket(GamePacketEventArgs args)
        {
            Block = false;
            Ms    = new MemoryStream(args.PacketData);
            Br    = new BinaryReader(Ms);
            Bw    = new BinaryWriter(Ms);

            Br.BaseStream.Position = 0;
            Bw.BaseStream.Position = 0;
            rawPacket = args.PacketData;
            _header   = args.PacketData[0];
        }
Ejemplo n.º 50
0
        /// <summary>
        /// Detects the spells that have missile and are casted from fow.
        /// </summary>
        public static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
        {
            //Gets received when a projectile is created.
            if (args.PacketData[0] == 0x3B)
            {
                var packet = new GamePacket(args.PacketData);

                packet.SetHeader(new PacketHeader(packet));

                packet.Read <float>(); //Missile network ID

                var missilePosition = new Vector3(packet.Read <float>(), packet.Read <float>(), packet.Read <float>());
                var unitPosition    = new Vector3(packet.Read <float>(), packet.Read <float>(), packet.Read <float>());

                packet.Position = packet.Data.Length - 119;
                var missileSpeed = packet.Read <float>();

                packet.Position = 65;
                var endPos = new Vector3(packet.Read <float>(), packet.Read <float>(), packet.Read <float>());

                packet.Position = 112;
                var id = packet.Read <byte>();


                packet.Position = packet.Data.Length - 83;

                var unit = ObjectManager.GetUnitByNetworkId <AIHeroClient>(packet.Read <uint>());
                if ((!unit.IsValid || unit.Team == ObjectManager.Player.Team) && !Config.TestOnAllies)
                {
                    return;
                }

                var spellData = SpellDatabase.GetBySpeed(unit.ChampionName, (int)missileSpeed, id);

                if (spellData == null)
                {
                    return;
                }
                if (spellData.SpellName != "Laser")
                {
                    return;
                }
                var castTime = Utils.TickCount - Game.Ping / 2 - spellData.Delay -
                               (int)
                               (1000 * missilePosition.SwitchYZ().To2D().Distance(unitPosition.SwitchYZ()) /
                                spellData.MissileSpeed);

                //Trigger the skillshot detection callbacks.
                TriggerOnDetectSkillshot(
                    DetectionType.RecvPacket, spellData, castTime, unitPosition.SwitchYZ().To2D(),
                    endPos.SwitchYZ().To2D(), unit);
            }
        }
Ejemplo n.º 51
0
 private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
 {
     if (Form1.chkRecv.Checked && !BlockedRecvPackets.Contains(args.PacketData[0]))
     {
         var p = new GamePacket(args);
         if (p.SearchInteger(ObjectManager.Player.NetworkId) != null)
         {
             Form1.PGridRecv.AddTo(p);
             RecvPackets.Add(p);
         }
     }
 }
Ejemplo n.º 52
0
 public override void OnProcessPacket(GamePacketEventArgs args)
 {
     if (args.PacketData[0] == Packet.S2C.PlayEmote.Header &&
         ConfigValue <StringList>("Misc.Laugh").SelectedIndex == 2)
     {
         var packet = Packet.S2C.PlayEmote.Decoded(args.PacketData);
         if (packet.NetworkId == Player.NetworkId && packet.EmoteId == (byte)Packet.Emotes.Laugh)
         {
             args.Process = false;
         }
     }
 }
Ejemplo n.º 53
0
            private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
            {
                //Game end packet TODO: Update this

                /*if (args.PacketData[0] == Packet.S2C.GameEnd.Header)
                 * {
                 *  if (OnGameEnd != null)
                 *  {
                 *      OnGameEnd(new EventArgs());
                 *  }
                 * }*/
            }
Ejemplo n.º 54
0
        private static void Game_OnGameSendPacket(GamePacketEventArgs args)
        {
            if (!PacketForm.chkSend.Checked || BlockedSendPackets.Contains(args.PacketData[0]))
            {
                return;
            }

            var p = new GamePacket(args);

            PacketForm.PGridSend.AddTo(p);
            SendPackets.Add(p);
        }
Ejemplo n.º 55
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            if (!PacketForm.chkRecv.Checked || BlockedRecvPackets.Contains(args.PacketData[0]))
            {
                return;
            }

            var p = new GamePacket(args);

            PacketForm.PGridRecv.AddTo(p);
            RecvPackets.Add(p);
        }
Ejemplo n.º 56
0
        private static void GameOnOnGameProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] != 0x87)
            {
                return;
            }

            for (var i = 0; i < _menu.Item("Count").GetValue <Slider>().Value; i++)
            {
                Game.ProcessPacket(args.PacketData, PacketChannel.S2C);
            }
        }
Ejemplo n.º 57
0
        static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            if (args.PacketData[0] == Packet.S2C.Recall.Header)
            {
                PlayerInfo playerinfo = AddRecall(Helper.RecallDecode(args.PacketData)); //AddRecall(Packet.S2C.Recall.Decoded(args.PacketData));

                if (Menu != null && Menu.Item("debugMode").GetValue <bool>())
                {
                    Game.PrintChat(playerinfo.GetPlayer().ChampionName + ": " + playerinfo.recall.Status);
                }
            }
        }
Ejemplo n.º 58
0
        private static void Game_OnGameSendPacket(GamePacketEventArgs args)
        {
            //Disable action on Ult
            if (args.PacketData[0] == Packet.C2S.ChargedCast.Header)
            {
                var decodedPacket = Packet.C2S.ChargedCast.Decoded(args.PacketData);

                if (decodedPacket.SourceNetworkId == Player.NetworkId)
                {
                    args.Process = !(menu.Item("ComboActive").GetValue <KeyBind>().Active&& menu.Item("UseRCombo").GetValue <bool>() && menu.Item("smartKS").GetValue <bool>());
                }
            }
        }
Ejemplo n.º 59
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            GamePacket p = new GamePacket(args.PacketData);

            if (p.Header != Packet.S2C.TowerAggro.Header)
            {
                return;
            }
            if (Packet.S2C.TowerAggro.Decoded(args.PacketData).TargetNetworkId != ObjectManager.Player.NetworkId)
            {
                return;
            }
        }
Ejemplo n.º 60
0
        private static void Game_OnGameProcessPacket(GamePacketEventArgs args)
        {
            var packet = new GamePacket(args.PacketData);

            if (packet.Header != 0xB7)
            {
                return;
            }

            var buff = Packet.S2C.GainBuff.Decoded(args.PacketData);

            Checks(buff.Target, buff.Source, buff);
        }