Hay 2 zonas en Game Maker para poner las constantes: "All Configurations" y "Default". ¿Hay alguna diferencia si se pone en un sitio o en otro? :-\
También he observado que se pueden agrupar cosas como la música y los objetos en carpetas, ¿solo sirve para ordenarlos y que sea más fácil buscarlos o sirve para algo en especial?
Agradezco cualquier respuesta que me aclare las dudas. ;)
De acuerdo al manual sí hay una diferencia, dependiendo de dónde pones las constantes: si quieres que las constantes que definas estén disponibles para todas las configuraciones, las colocas en all configurations; si sólo estarán disponibles para la configuración por defecto, las pones en default. Cada vez que agregues una configuración, aparecerá su nombre en la zona de constantes y podrás definir constantes específicas adicionales para esa configuración. Por cierto, las configuraciones sólo están disponibles en la edición pro de GMS así que si usas la versión standard simplemente coloca las constantes en la carpeta all configurations.
Sobre lo segundo, las carpetas sólo sirven para ordenar los recursos del árbol de recursos, no tienen ninguna otra función.
A ver si lo he entendido bien (porque me parece que ya lo he comprobado por mi mismo :-[): si pongo una constante en "all configurations", esta constante se aplicara a otros juegos, por lo que si en otro juego uso esa constante ya estará en el valor que le pusiese la primera vez, pero si lo pongo en default, puedo en otro juego usar una constante que se llame igual, pero que tenga un distinto valor.
Y sobre las carpetas, pues vaya decepción, que solo sirva para ordenar y que no pueda por ejemplo programar que todos los objetos de la carpeta reaccionen igual ante un evento, pero así se que no tengo que alarmarme si me pasan un proyecto y hay objetos o musica agrupados en una carpeta, que no pasa nada. ;)
Cita de: Marth en Agosto 05, 2014, 12:51:58 AM
si pongo una constante en "all configurations", esta constante se aplicara a otros juegos, por lo que si en otro juego uso esa constante ya estará en el valor que le pusiese la primera vez, pero si lo pongo en default, puedo en otro juego usar una constante que se llame igual, pero que tenga un distinto valor.
No me queda claro si con "juegos" te refieres a configuraciones. Lo que dices es correcto: las constantes definidas en all configurations están disponibles para todas las configuraciones. Sobre el conflicto de nombres, si usas el mismo nombre para una constante en 2 configuraciones, GM tomará el valor que corresponde a la configuración seleccionada; si el mismo nombre aparece en all configuratios y en otra configuración x (o default), GM usará el valor de la configuración x antes que el de all configurations (suponiendo que está seleccionada la configuración x).
Entonces, ¿a que te refieres con "configuraciones"?
Cuando digo juegos, me refiero a los diversos proyectos que tengo.
Con configuraciones me refiero al conjunto de opciones, archivos incluidos, extensiones, etc. que van a aplicarse para una plataforma o cliente específico y que pertenecen al mismo juego. Las configuraciones que creas dentro de un juego indican qué opciones y archivos aplican para android, windows, para una versión "pro" de tu juego, etc. Más información la puedes encontrar en el manual:
http://docs.yoyogames.com/source/dadiospice/001_advanced%20use/007_configurations.html (http://docs.yoyogames.com/source/dadiospice/001_advanced%20use/007_configurations.html)
¿Versión "pro" de mis juegos? Lo siento, pero ya entramos en un campo que aun no he llegado y no comprendo, pues se supone que si creo una constante, esta es global. La creo para todo el juego y no va a haber marginación de ningún tipo. :-[
De todas formas, muchas gracias por intentar aclararme todo esto. ;)
Citarse supone que si creo una constante, esta es global. La creo para todo el juego y no va a haber marginación de ningún tipo.
No necesariamente. Ese es el meollo del asunto: las constantes globales pueden estar disponibles para una u otra configuración, dependiendo de dónde la definas. Por eso GM:S permite definirlas inicialmente en 2 configuraciones distintas (all configurations o default) o más, si creas nuevas configuraciones. Pero como te decía, si no creas configuraciones por tu cuenta, simplemente defínelas en all configurations.