public Shark2D(string MediaDir, SharkStatus status)
 {
     Status        = status;
     LifeShark     = new DrawSprite(MediaDir);
     LifeSharkText = new DrawText();
     InitializerLifeShark();
 }
 public void Update(float elapsedTime, List <Fish> fishes, SharkStatus status)
 {
     if (Character.IsOutsideShip)
     {
         CheckIfSharkCanAttack(elapsedTime, status);
     }
     else
     {
         SoundManager.SharkStalking.stop();
         Shark.EndSharkAttack();
         timeBetweenAttacks = Constants.TIME_BETWEEN_ATTACKS;
         InformFinishFromAttack();
     }
     fishes.ForEach(fish => fish.ActivateMove = Character.IsOutsideShip);
 }
        private void CheckIfSharkCanAttack(float elapsedTime, SharkStatus status)
        {
            if (!SharkIsAttacking)
            {
                timeBetweenAttacks -= elapsedTime;
                if (timeBetweenAttacks <= 0)
                {
                    if (status.IsDead)
                    {
                        status.Reset();
                    }

                    SoundManager.SharkAppear.play();
                    Shark.ActivateShark(this);
                    SharkIsAttacking   = true;
                    timeBetweenAttacks = Constants.TIME_BETWEEN_ATTACKS;
                }
            }
        }
        public Game2DManager(string mediaDir, CharacterStatus character, SharkStatus shark, TgcD3dInput input)
        {
            MediaDir  = mediaDir;
            Character = new Character2D(mediaDir, character);
            Shark     = new Shark2D(mediaDir, shark);

            Pointer               = new DrawSprite(MediaDir);
            MousePointer          = new DrawSprite(MediaDir);
            Inventory             = new Inventory2D(MediaDir);
            Crafting              = new Crafting2D(MediaDir, input);
            InstructionText       = new DrawText();
            HelpText              = new DrawText();
            ShipText              = new DrawText();
            CollectText           = new DrawText();
            ItemsHistoryText      = new DrawText();
            ShipLocationIndicator = new DrawSprite(MediaDir);
            DistanceShipLocation  = new DrawText();
            Init();
        }