CAAD
http://foro.caad.es/

Artículos definidos en I7
http://foro.caad.es/viewtopic.php?f=12&t=6067
Página 1 de 1

Autor:  saimazoom [ 18 Jul 2016 23:07 ]
Asunto:  Artículos definidos en I7

¿Cómo se definen/habilita el artículo definido en un objeto (el/la/los/las)?. ¡Gracias!

Autor:  saimazoom [ 19 Jul 2016 07:13 ]
Asunto:  Re: Artículos definidos en I7

Otra duda es como indicar el género en algunos objetos, como por ejemplo una puerta:

Código:
The compuerta is west of airlock and east of ship_outside. It is a closed and locked door. The printed name is "compuerta de la esclusa". The description is "La compuerta de la esclusa sirve para igualar la presión entre el exterior y el interior de la nave. [if closed] Está cerrada. [otherwise] Está abierta. ". The compuerta is female.



Al compilar me devuelve el siguiente error:

Código:
You wrote 'The compuerta is female'  : but the property female for the compuerta is not allowed to exist, because you haven't said it is. What properties something can have depends on what kind of thing it is: see the Index for details.


Me pasa los mismo con objetos normales como por ejemplo:

Código:

A red button and a green button are in the airlock.  The printed name of the red button is "botón rojo". The printed name of the green button is "botón verde". Understand "boton rojo" as red button. Understand "boton verde" as the green button. The green button is male.


Autor:  n-n [ 19 Jul 2016 07:26 ]
Asunto:  Re: Artículos definidos en I7

En la extensión española puedes poner el artículo en la declaración:

Código:
La compuerta is west of airlock and east...

Autor:  saimazoom [ 19 Jul 2016 09:06 ]
Asunto:  Re: Artículos definidos en I7

Pero al listar los objetos en la localidad sigue usando el artículo indefinido 'una'.

n-n escribió:
En la extensión española puedes poner el artículo en la declaración:

Código:
La compuerta is west of airlock and east...

Autor:  Johan Paz [ 19 Jul 2016 11:09 ]
Asunto:  Re: Artículos definidos en I7

saimazoom escribió:
Pero al listar los objetos en la localidad sigue usando el artículo indefinido 'una'.

n-n escribió:
En la extensión española puedes poner el artículo en la declaración:

Código:
La compuerta is west of airlock and east...


No estoy seguro de si se le puede explicar al I7 cuándo debe usar artículo definido en lugar de indefinido. A veces he usado lo que se explica aquí para trucarlo:

http://inform7.com/learn/man/WI_3_18.html

Mira a ver si te sirve.

Autor:  saimazoom [ 19 Jul 2016 11:43 ]
Asunto:  Re: Artículos definidos en I7

Con eso puedo hacerlo, pero preguntaba por si había una forma más elegante de solucionarlo. ¿Y sabes por qué da error al añadir el género a un objeto? ¿Se puede cambiar el género en tiempo de ejecución?. Veo lo que menciona n-n de usar el artículo en el momento de crear el objeto, pero luego ¿cómo se cambia?.

Autor:  Johan Paz [ 19 Jul 2016 13:02 ]
Asunto:  Re: Artículos definidos en I7

saimazoom escribió:
Con eso puedo hacerlo, pero preguntaba por si había una forma más elegante de solucionarlo. ¿Y sabes por qué da error al añadir el género a un objeto? ¿Se puede cambiar el género en tiempo de ejecución?. Veo lo que menciona n-n de usar el artículo en el momento de crear el objeto, pero luego ¿cómo se cambia?.


Eso es un cambio de las últimas versiones. Lo que han hecho -además del 'la'- es que al describirlo pones (f) para indicar el género femenino.

http://wiki.caad.es/Inform7_6L02#Defini ... .BAmero.29

No lo he hecho pero imagino que para cambiar el género ahora será:

Código:
now the grammatical gender of pistola is feminine gender.


Si no te funciona lo intento averiguar.

Autor:  tesheñes [ 20 Jul 2016 00:09 ]
Asunto:  Re: Artículos definidos en I7

Citar:
¿Y sabes por qué da error al añadir el género a un objeto?


Agregar esto:

Código:
A thing can be female.


(bug de la Spanish :cry: )

Para lo otro, ahora mismo no tengo I7 a mano. Prueba lo que te sugirió Johan.

Autor:  saimazoom [ 20 Jul 2016 07:37 ]
Asunto:  Re: Artículos definidos en I7

Más cosas raras que me pasan en I7:

Código:
>x puerta almacen
[examining la puerta acorazada del almacén]
No observas nada especial en la puerta acorazada del almacén.

[examining la puerta acorazada del almacén - succeeded]

>x puerta del almacen
Intenta de nuevo, porque sólo te pude entender: examinar  la puerta acorazada del almacén.



Y la puerta está definida como:

Código:

The bulkhead(f) is west of the entrada and east of the almacen_1. The bulkhead is a closed and locked door. The printed name is "puerta acorazada del almacén".  Understand "acorazada", "puerta", "compuerta","almacen" as the bulkhead. It is female.


Autor:  Johan Paz [ 20 Jul 2016 14:30 ]
Asunto:  Re: Artículos definidos en I7

saimazoom escribió:
Más cosas raras que me pasan en I7:

Código:
>x puerta almacen
[examining la puerta acorazada del almacén]
No observas nada especial en la puerta acorazada del almacén.

[examining la puerta acorazada del almacén - succeeded]

>x puerta del almacen
Intenta de nuevo, porque sólo te pude entender: examinar  la puerta acorazada del almacén.



Y la puerta está definida como:

Código:

The bulkhead(f) is west of the entrada and east of the almacen_1. The bulkhead is a closed and locked door. The printed name is "puerta acorazada del almacén".  Understand "acorazada", "puerta", "compuerta","almacen" as the bulkhead. It is female.



Yo entiendo que el parser de Inform está entendiendo 'examina' y 'puerta' y 'almacén', pero no sabe que hacer con 'del'.

ve que 'puerta' y 'almacén' puede ser bulkhead. Así que te informa que ha entendido casi todo EXAMINE y bulkhead pero no es capaz de parsear la entrada 'completamente'.

Es bastante común en Inform estos problemas con 'del' y 'al'. Yo lo que hago es ponerlo expresamente o sea:

Código:
Understand "acorazada", "puerta", "compuerta", "almacen", "puerta acorazada del almacen" as the bulkhead


Pero te recomiendo que uses mejor un token de sintaxis así:

Código:
Understand "de almacen", "almacen", "que da a almacen" as "[almacen]".
Understand "puerta", "acorazada", "compuerta", "[almacen]" as the bulkhead.


Y ten en cuenta que se puede generalizar lo que escribes dentro del understand con '/' y con '--'. No estoy seguro si funciona pero puedes probar con:

Código:
Understand "puerta/compuerta acorazada/-- de/-- almacen/--" as the bulkhead.


Es probable que haya que retocar algo de la sintaxis, lo siento, no tengo el I7 aquí.

A parte de eso, creo que es una buena costumbre con reglas de este tipo -para nombres de objetos- activarlas sólo en presencia del objeto en cuestión, así no hay confusiones en caso de haber ambiguedad, de esta forma

Código:
Understand "puerta/compuerta acorazada/-- de/-- almacen/--" as the bulkhead when the bulkhead is visible.


Por supuesto puedes combinar todos los mecanismos...

(Editado: ya que no se puede usar los token con --)

Código:
Understand "puerta", "compuerta", "portón", "abertura" as "[puerta]".
Understand "fuerte", "acorzada", "blindada" as "[acorazada]".
Understand "almacen", "de almacen", "junto a almacen", "que da a almacen" as "[almacen]".
Understand "[puerta] [acorazada] [almacen]" or "[puerta] [acorazada]" or "[puerta] [almacen]" or "[puerta]" as the bulkhead when the bulkhead is visible.

Autor:  tesheñes [ 20 Jul 2016 15:17 ]
Asunto:  Re: Artículos definidos en I7

saimazoom escribió:
Más cosas raras que me pasan en I7:

Código:
>x puerta almacen
[examining la puerta acorazada del almacén]
No observas nada especial en la puerta acorazada del almacén.

[examining la puerta acorazada del almacén - succeeded]

>x puerta del almacen
Intenta de nuevo, porque sólo te pude entender: examinar  la puerta acorazada del almacén.





puedes obtener más datos del parser con el comando

Código:
traza 5


Por lo que veo infsp transforma "del" a "de" (esto lo hereda de informate) y a partir de allí el matcheo de gramatica va por otros lados, y fracasa.

Para que te acepte el comando en cuestion, puedes agregar esa forma de referirse a la puerta en los Understand:

Código:
Understand "acorazada", "puerta", "compuerta","almacen" ,"puerta de almacen" as the bulkhead. It is female.

Autor:  tesheñes [ 20 Jul 2016 15:35 ]
Asunto:  Re: Artículos definidos en I7

Nota: No utilices "del" dentro de tu Understand, pues infsp transforma todos los "del" a "de" (y los "al" a "a") y LUEGO matchea sintaxis.

Con lo que:

Código:
Understand "puerta del almacen" as the bulkhead


No funcionará. (al menos en la ultima I7 6M62). Me parece que antes esto sí funcionaba.

Por lo demás la sugerencias de Johan estan muy bien. Con la excepcion de que no puedes usar [tokens] en las opciones con \, solo literales.

Autor:  Johan Paz [ 20 Jul 2016 15:46 ]
Asunto:  Re: Artículos definidos en I7

tesheñes escribió:
Nota: No utilices "del" dentro de tu Understand, pues infsp transforma todos los "del" a "de" (y los "al" a "a") y LUEGO matchea sintaxis.

Con lo que:

Código:
Understand "puerta del almacen" as the bulkhead


No funcionará. (al menos en la ultima I7 6M62). Me parece que antes esto sí funcionaba.

Por lo demás la sugerencias de Johan estan muy bien. Con la excepcion de que no puedes usar [tokens] en las opciones con \, solo literales.


Que pena... sería muy útil en ocasiones. No sabía lo del 'de' vs 'del' y juraría que lo tengo en A3, así que antes debía funcionar.

Autor:  tesheñes [ 21 Jul 2016 03:28 ]
Asunto:  Re: Artículos definidos en I7

saimazoom escribió:
¿Se puede cambiar el género en tiempo de ejecución?. Veo lo que menciona n-n de usar el artículo en el momento de crear el objeto, pero luego ¿cómo se cambia?.


Puedes hacerlo con algo como:

Código:
Before examining the bulkhead:
         [now the grammatical gender of bulkhead is masculine gender.]
         now the bulkhead is male;
         now the indefinite article is "la".


Ahora mismo no estoy seguro del uso del 'grammatical gender' en las tripas de I7.

Cuando Inform menciona el objeto en la descripcion de la habitacion (o en el inventario) utiliza el articulo indefinido.

Página 1 de 1 Todos los horarios son UTC + 1 hora
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/