コード例 #1
0
ファイル: Program.cs プロジェクト: qazji3/LeagueSharp-8
        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);
                }
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: qazji3/LeagueSharp-8
        static void HandleRecallShot(PlayerInfo playerinfo)
        {
            Obj_AI_Hero player = playerinfo.GetPlayer();

            float ultdamage  = Ult.GetDamage(player, StageType) * UltDamageReductionMultiplicator;
            float timeneeded = Helper.GetSpellTravelTime(UltSpeed, UltDelay, EnemySpawnPos) + Game.Ping - 65; //increase timeneeded if it should arrive earlier, decrease if later

            if (Helper.GetTargetHealth(playerinfo, timeneeded) > ultdamage)
            {
                if (Menu != null && Menu.Item("debugMode").GetValue <bool>())
                {
                    Game.PrintChat("DONT SHOOT {0} (Health: {1} UltDamage: {2})", playerinfo.GetPlayer().ChampionName, Helper.GetTargetHealth(playerinfo, timeneeded), ultdamage);
                }

                return;
            }

            float distance  = Vector3.Distance(ObjectManager.Player.ServerPosition, EnemySpawnPos);
            float countdown = playerinfo.GetTime() + playerinfo.recall.Duration - Environment.TickCount;

            if (countdown <= timeneeded && !(timeneeded - countdown > 100))
            {
                if (ObjectManager.Player.ChampionName == "Ezreal" || Helper.CheckNoCollision(EnemySpawnPos.To2D(), player.NetworkId, UltWidth, UltDelay, UltSpeed, UltRange)) //dont check champ collision for Ezreal
                {
                    if (Menu != null && Menu.Item("debugMode").GetValue <bool>())
                    {
                        Game.PrintChat("SHOOT {0} (Health: {1} UltDamage: {2} ReactionTime: {3})", playerinfo.GetPlayer().ChampionName, Helper.GetTargetHealth(playerinfo, timeneeded), ultdamage, (timeneeded - countdown));
                    }

                    Ult.Cast(EnemySpawnPos, true);
                    UltCasted = Environment.TickCount;
                }
                else if (Menu != null && Menu.Item("debugMode").GetValue <bool>())
                {
                    Game.PrintChat("DONT SHOOT COLLISION {0} (Health: {1} UltDamage: {2})", playerinfo.GetPlayer().ChampionName, Helper.GetTargetHealth(playerinfo, timeneeded), ultdamage);
                }
            }
        }
コード例 #3
0
ファイル: Helper.cs プロジェクト: qazji3/LeagueSharp-8
        public static float GetTargetHealth(PlayerInfo playerinfo, float additionalTime)
        {
            float predictedhealth = playerinfo.GetPlayer().Health + playerinfo.GetPlayer().HPRegenRate *((float)(Environment.TickCount - playerinfo.lastSeen + additionalTime) / 1000f);

            return(predictedhealth > playerinfo.GetPlayer().MaxHealth ? playerinfo.GetPlayer().MaxHealth : predictedhealth);
        }