コード例 #1
0
ファイル: Form1.cs プロジェクト: bischmlb/aimBotAssaultCube
        private int FindClosestEnemyIndex(PlayerDataVec[] enemiesDataVec, PlayerDataVec myPosition)
        {
            float[] distances = new float[enemiesDataVec.Length];

            
            for (int i = 0; i < enemiesDataVec.Length; i++)
            {
                
                if (enemiesDataVec[i].health > 0)
                    distances[i] = Get3dDistance(enemiesDataVec[i], myPosition);
                else
                    
                    distances[i] = float.MaxValue;
            }
            
            float[] newDistances = new float[distances.Length];
            Array.Copy(distances, newDistances, distances.Length);

            
            Array.Sort(newDistances);

            
            for (int i = 0; i < distances.Length; i++)
            {
                if (distances[i] == newDistances[0])
                {
                    return i;
                }
            }
            return -1;
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: bischmlb/aimBotAssaultCube
 private float Get3dDistance(PlayerDataVec to, PlayerDataVec from)
 {
     return (float)
     (Math.Sqrt(
     ((to.xPos - from.xPos) * (to.xPos - from.xPos)) +
     ((to.yPos - from.yPos) * (to.yPos - from.yPos)) +
     ((to.zPos - from.zPos) * (to.zPos - from.zPos))
     ));
 }
コード例 #3
0
ファイル: Form1.cs プロジェクト: bischmlb/aimBotAssaultCube
        private void AimAtTarget(PlayerDataVec enemyDataVector, PlayerDataVec playerDataVector)
        {
            float yaw = -(float)Math.Atan2(enemyDataVector.xPos - playerDataVector.xPos, enemyDataVector.yPos - playerDataVector.yPos)
                            / PI * 180 + 180;

            float pitch = (float)Math.Asin((enemyDataVector.zPos - playerDataVector.zPos) /
                            Get3dDistance(enemyDataVector, playerDataVector))
                         * 180 / PI;

            
            Mem.WriteFloat(MainPlayer.baseAddress + MainPlayer.offsets.yaw, yaw);
            Mem.WriteFloat(MainPlayer.baseAddress + MainPlayer.offsets.pitch, pitch);
        }
コード例 #4
0
ファイル: Form1.cs プロジェクト: bischmlb/aimBotAssaultCube
        private PlayerDataVec GetPlayerVecData(PlayerData updatePlayer)
        {
            PlayerDataVec playerRet = new PlayerDataVec();

            playerRet.yaw = Mem.ReadFloat(updatePlayer.baseAddress + updatePlayer.offsets.yaw);
            playerRet.pitch = Mem.ReadFloat(updatePlayer.baseAddress + updatePlayer.offsets.pitch);

            playerRet.xPos = Mem.ReadFloat(updatePlayer.baseAddress + updatePlayer.offsets.xPos);
            playerRet.yPos = Mem.ReadFloat(updatePlayer.baseAddress + updatePlayer.offsets.yPos);
            playerRet.zPos = Mem.ReadFloat(updatePlayer.baseAddress + updatePlayer.offsets.zPos);

            playerRet.health = Mem.ReadInt(updatePlayer.baseAddress + updatePlayer.offsets.health);
            return playerRet;
        }
コード例 #5
0
ファイル: Form1.cs プロジェクト: bischmlb/aimBotAssaultCube
        private void AimBot()
        {
            //Grab our player's information
            PlayerDataVec playerDataVec = GetPlayerVecData(MainPlayer);
            List<PlayerDataVec> enemiesDataVec = new List<PlayerDataVec>();

            for (int i = 0; i < EnemyAddresses.Count; i++)
            {
                
                PlayerDataVec enemyDataVector = GetPlayerVecData(EnemyAddresses[i]);
                
                enemiesDataVec.Add(enemyDataVector);
            }

            
            if (playerDataVec.health > 0)
            {
                int target = 0;
                if (FocusingOnEnemy && FocusTarget != -1)
                {
                    
                    if (enemiesDataVec[FocusTarget].health > 0)
                        target = FocusTarget;
                    else target = FindClosestEnemyIndex(enemiesDataVec.ToArray(), playerDataVec);
                }
                else
                    target = FindClosestEnemyIndex(enemiesDataVec.ToArray(), playerDataVec);

                
                if (target != -1) //-1 means something went wrong
                {
                    FocusTarget = target;
                    
                    
                    if (enemiesDataVec[target].health > 0)
                        AimAtTarget(enemiesDataVec[target], playerDataVec);
                }
            }
        }