public PokemonGeodude(Texture2D tex, Vector2 pos, PowerUp powerUp, Player player, List <EnemyType> enemyList) : base(tex, pos)
        {
            this.powerUp   = powerUp;
            this.player    = player;
            this.enemyList = enemyList;

            geodudeState  = GeodudeState.Follow;
            geoDudeFacing = Facing.Right;
            frameInterval = 100;
            spritesFrame  = 6;
            srRect        = new Rectangle(0, 0, tex.Width / 6, tex.Height);
        }
        private void GeoStateLogic()
        {
            foreach (EnemyType enemy in enemyList)
            {
                if (enemy.DistanceToGeo() < chasingRange && enemy.isActive)
                {
                    geodudeState = GeodudeState.Attack;

                    if (enemy.Position.X > pos.X)
                    {
                        geoDudeFacing = Facing.Right;
                    }
                    else
                    {
                        geoDudeFacing = Facing.Left;
                    }
                }
            }
        }
        public void GeoAttack()
        {
            foreach (EnemyType ene in enemyList)
            {
                goal      = ene.Position;
                direction = goal - pos;

                float distance = direction.Length();

                direction.Normalize();

                if (distance < chasingRange && isActive == true && ene.isActive)
                {
                    pos += velocity * direction;
                }
                else
                {
                    geodudeState = GeodudeState.Follow;
                }
            }
        }