示例#1
0
    protected void CheckPee()
    {
        if (vejiga <= 0)
        {
            tolerancia -= 50;
            if (tolerancia < 0)
            {
                tolerancia = 0;
            }

            ShowEmoticon("caca", 3);
            estado_pasear = STATE_Pasear.PASEANDO;
            estado_vejiga = STATE_VejigaBaja.ORINANDO_ENCIMA;
            vejiga        = 100;

            if (bathObjective != null)
            {
                bathObjective.Leave(this);
            }
        }
    }
示例#2
0
    protected void FSM_VejigaBaja()
    {
        switch (estado_vejiga)
        {
        case STATE_VejigaBaja.BUSCANDO:
            ShowEmoticon("PiPi");
            currentState  = "[FSM Baño] Buscando baño";
            bathObjective = BathInSight();
            if (bathObjective == null)
            {
                CheckPee();
                Pasear();
            }
            else
            {
                currentState = "[FSM Baño] Yendo al baño";
                ShowEmoticon("PiPi");
                bathObjective.AddUser(this);
                estado_vejiga = STATE_VejigaBaja.ESPERANDO_BAÑO;
            }
            break;

        case STATE_VejigaBaja.ESPERANDO_BAÑO:
            currentState = "[FSM Baño] Esperando al baño";
            CheckPee();
            break;

        case STATE_VejigaBaja.ORINANDO_BAÑO:
            currentState = "[FSM Baño] Usando el baño";
            break;

        case STATE_VejigaBaja.ORINANDO_ENCIMA:
            if (bathObjective != null)
            {
                bathObjective.Leave(this);
            }
            vejiga        = 100;
            estado_vejiga = STATE_VejigaBaja.BUSCANDO;
            break;
        }
    }