Example #1
0
    IEnumerator timeRepairing()
    {
        yield return(new WaitForSeconds(Random.Range(minWait, maxWait)));

        quality = Random.Range(0, 100);
        if (quality < thresholdQuality)
        {
            ShowEmoticon("angry");
            estado_trabajo = STATE_Working.ESPERANDO;
            attractionObjective.repairedWrong();
        }
        else
        {
            estado_trabajo = STATE_Working.ESPERANDO;
            attractionObjective.repairedWell();
            ShowEmoticon("happy");
        }
        attractionObjective = null;
    }
Example #2
0
    private void FSM_work()
    {
        switch (estado_trabajo)
        {
        case STATE_Working.ESPERANDO:
            Wander();
            currentState = "Esperando";
            break;

        case STATE_Working.DIRIGIENDOSE_ATRACCION:
            currentState = "Atraccion rota";
            if (isInAttraction())
            {
                repair();
                estado_trabajo = STATE_Working.ARREGLANDO_ATRACCION;
                ShowEmoticon("llaveInglesa");
            }
            break;

        case STATE_Working.ARREGLANDO_ATRACCION:
            currentState = "arreglando";
            break;
        }
    }
Example #3
0
 public void brokenAttraction(Attraction attraction)
 {
     attractionObjective = attraction;
     goToAttraction();
     estado_trabajo = STATE_Working.DIRIGIENDOSE_ATRACCION;
 }