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; }
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; } }
public void brokenAttraction(Attraction attraction) { attractionObjective = attraction; goToAttraction(); estado_trabajo = STATE_Working.DIRIGIENDOSE_ATRACCION; }