public void whatDidYouPlay()
 {
     if (SHOOT_POWER.ContainsKey(_lastAction))
     {
         _ennemy.takeDamage(_lastAction);
     }
 }
    public IEnumerator Play()
    {
        //print ("ENNEMY is playing");

        // Update Alpha / Gamma

        ALPHA = Mathf.Max(0.2f, ALPHA - Score.gameNumber * _stepA);
        GAMMA = Mathf.Max(0.9f, GAMMA + Score.gameNumber * _stepG);

        //
        // This function is used to play a move according
        // to the board, player and time left provided as input.
        //

        // Set the status before we play
        _state = getStatsKey();

        // Get first all the action
        List <Actions> poss_action = getPossibleActions();

        //printDict (PATTERN_FILE);

        Actions action;

        if (!PATTERN_FILE.ContainsKey(_state))
        {
            print("Explo");

            action = Exploration(poss_action);
        }
        else
        {
            print("Exploit");
            action = Exploitation(poss_action);
        }

        new_action = true;

        // Play the Action chosen.

        if (SHOOT_POWER.ContainsKey(action))
        {
            if (action == Actions.SHOOT_1)
            {
                Shoot(action, Weapon1, -1);
            }
            else if (action == Actions.SHOOT_3)
            {
                Shoot(action, Weapon3, -1);
            }
            else if (action == Actions.SHOOT_5)
            {
                Shoot(action, Weapon5, -1);
            }
            else if (action == Actions.SHOOT_10)
            {
                Shoot(action, Weapon3, -1);
            }
        }
        else if (action == Actions.SHIELD)
        {
            Shield();
        }
        else
        {
            Reload();
        }

        yield break;
    }