Ver Mensaje Individual
  #4  
Antiguo 03-10-2013
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.025
Reputación: 27
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Cool

Es un lenguaje orientado a objetos, dirigido por estados y basado en mensajes (toma ya ). Está pensado para aplicarlo a videojuegos, especialmente para definir comportamientos de personajes y objetos. Por ejemplo, este adaptado de "Programming Game IA By Example":
Código:
ACTOR Bob IS aMiner
  STATE EnCasa
    IF Lugar # Casa
      Msg "Walkin' home."
      MoverA (Casa)
      SEND MESSAGE EnCasa TO Esposa
    ELSE
      IF Fatigado
        Descansa
      ELSE
        SET STATE TrabajaMina
      END IF
    END IF
  END STATE



  MESSAGE CenaLista
    IF Lugar = Casa THEN
      Msg "Okay hun, ahm a-comin"
      SET Hambre TO 0
      SET STATE Comiendo
    END IF
  END MESSAGE
 


  STATE Comiendo
    IF Hambre = 0
      Msg "Smells Reaaal goood Elsa!"
      SET Hambre TO 1
    ELSE
      IF Hambre = 1
        Msg "Tastes real good too!"
        SET Hambre TO 2
      ELSE
        Msg "Thankya li'lle lady. Ah better get back to whatever ah wuz doin'."
        SET STATE PREVIOUS
      END IF
    END IF
  END STATE



  STATE TrabajaMina
    IF Lugar # Mina
      Msg "Walkin' to the gold mine."
      MoverA (Mina)
    ELSE
      Cava
      Msg "Pickin' up a nugget."
      IF BolsaLlena
        SET STATE VisitaBanco
      ELSE
        IF Sediento
          SET STATE VisitaSaloon
       END IF
    END IF
  END STATE



  STATE VisitaBanco
    IngresaDinero (Oro)
    SET Oro TO 0
    IF SuficienteOro (Dinero)
      Msg "WooHoo! Rich enough for now. Back home to mah li'lle lady."
      SET STATE EnCasa
    ELSE
      SET STATE TrabajaMina
    END IF
  END STATE



  STATE VisitaSaloon
    IF Lugar # Saloon
      Msg "Boy, ah sure is thusty! Walking to the saloon."
      MoverA (Saloon)
    ELSE
      IF Sediento
        IF NOT Inventario (Wisky)
          Compra (Wisky)
        ELSE
          Bebe (Wisky)
          Msg "That's mighty fine sippin' liquer."
          SET STATE TrabajaMina
        END IF
      END IF
    END IF
  END STATE
END ACTOR
Como digo, no lo he implementado, pero debería funcionar.
Responder Con Cita