Noticias

¡Ayuda a la Comunidad GM, haz una donación!

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: Cómo lograr un "Hola mundo"? [Solucionado] en parte.  (Leído 479 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado dixon

  • Habitual
  • *
  • Puntos: 113
  • Mensajes: 60
  • Agradecido: 7 veces
  • Juegos de educación gratis dixon 2019. Prov. 4:7
    • Ver Perfil
en: Noviembre 11, 2019, 08:17:08 pm
Hola, gusto en saludarles. Espero que estén bien.

Resumen: Como lograria mostrar un "Hola mundo" como el que se muestra en la siguiente imagen.



Si el código necesario se encuentra   dentro de una variable de la siguiente manera:

Texto = 'draw_text(0,0,"Hola mundo")'

En versiones superiores a Game maker 8.


« última modificación: Noviembre 17, 2019, 02:00:05 am por dixon »

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado 3dgeminis

Respuesta #1 en: Noviembre 12, 2019, 02:10:40 pm
La manera mas simple seria
///CRRATE
Texto="Hola mundo."

///DRAW
draw_text(0,0,Texto)


 
Los siguientes usuarios dieron las gracias a este tema: dixon


Desconectado Johann

  • Las cosas como son!
  • Moderadores globales
  • Okupa
  • *
  • Puntos: 779
  • Mensajes: 890
  • Agradecido: 125 veces
  • Sexo: Masculino
  • First Class Soldier... 10 años en CGM, 5 como mod
    • Ver Perfil
Respuesta #2 en: Noviembre 12, 2019, 04:46:00 pm
La funcion execute_string fue removida para dar mayor compatibilidad de los jueos hechos con GMS en todas las plataformas, segun ellos, esa funcion dependía de cosas muy particulares de windowsy no funcionaria en las demas plataformas.

Cita de: Fenris78
Si un tema os resulta de interes y veis que hay poca información, la mejor solucion no es quejarse o pedir sin pensar, sino sugerir algo bien planteado o aportarlo vosotros mismos.
Cita de: Calio
Somos desarrolladores independientes y, por lo tanto, no tenemos por qué guiarnos por las tendencias del mercado.
 
Los siguientes usuarios dieron las gracias a este tema: dixon


Desconectado Arcadian

Respuesta #3 en: Noviembre 12, 2019, 08:34:53 pm
Como bien dice Johann, estarías buscando utilizar execute_string() fuera de GM8...

Mira a ver esta extensión si te soluciona algo, es de uso similar a la función, según su autor:

https://marketplace.yoyogames.com/assets/4227/n-string-parser-2

 
Los siguientes usuarios dieron las gracias a este tema: dixon


Desconectado dixon

  • Habitual
  • *
  • Puntos: 113
  • Mensajes: 60
  • Agradecido: 7 veces
  • Juegos de educación gratis dixon 2019. Prov. 4:7
    • Ver Perfil
Respuesta #4 en: Noviembre 13, 2019, 04:13:28 pm
Hola, gusto en saludarles.

Es agradable saber que hay tanta gente dispuesta a ayudar.

Hola 3dgeminis, gracias por el aporte, entiendo ese código pero ahora la función draw_text necesariamente debe ser un string para de esta forma lograr programar desde un archivo de texto fuera del Game maker. Si esto se logra podremos programar en Game maker desde cualquier plataforma.

Gracias Johan, yo no sabía que habían quitado la función execute_string por cuestiones de compatibilidad. Siempre habia pensado que han quitado estás funciones por lo poderosas que son ya que con estas podría crearse un gamemaker gratuito.

Gracias Arcadian por  mostrarme la extención para Game maker studio, es cuestión de ponerla a prueba. Supongo que habrá manera de obtener el string de un archivo de texto externo y ejecutar el código.

Gracias por sus aportes, pero el caso es más específico. Consiste en lograr ejecutar solo ese tipo de string sin utilizar la extención.

Código propuesto:

Ahora tenemos dos string:

Texto1='draw_text(0,0,"Hola mundo")'
Texto2='draw_line(0,100,100,100)'

Se requiere crear un script que reciba como argumento la variable Texto la cual contiene el string del código. Este script debe cumplir los siguientes objetivos:

1. Encontrar en el string las palabras "draw_text" o "draw_line" para determinar el tipo de código a ejecutar.

2. Si encuentra "draw_text" entonces recorta o copia en una variable solo la parte del string que contiene la posición X y en otra la parte del string que contiene la posición Y para transformar estos datos en dato numérico. Luego recorta el texto a mostrar, en este caso el Hola mundo y lo coloca en otra variable, luego ejecuta algo así:

if (string="draw_text")
    {
   draw_text(var1,var2,var3)
    }

3. Si encuentra "draw_line" obtiene los valores y los transforma a dato numérico dentro de unas variable y ejecuta algo así

if(string="draw_line")
{
draw_line(var1,var2,var3,var4)
}

Entonces tendríamos un script que funciona igual que la extención pero que solo acepta 2 tipo de funciones ("draw_text" y "draw_line").

execute_string('draw_text(0,0,"Hola mundo"'))

Quiero saber si es posible hacer eso en Game maker superiores al 8. Porque no sé mucho de esas versiones.


     
« última modificación: Noviembre 15, 2019, 12:14:19 am por dixon »

 


Desconectado somnus

Respuesta #5 en: Noviembre 14, 2019, 07:47:10 pm
me parece bien este tipo de discuciones que nos ayudan a entender mas, sin embargo le estan dando muchas vueltas a un simple hola mundo, como sea que se haga de todos modos no Habra mucha diferencia en el impacto en memoria. mi humielde opinion, por cierto saludos reyes, mucho tiempo que no estabas por aca.

Es Mejor No Saber Porque Funciona, Que Saber El Porque No Funciona...
Tienes alguna duda con "Game Design" o de videojuegos en general, contactamente mas facil en twitter @pavulzavala
 
Los siguientes usuarios dieron las gracias a este tema: dixon


Desconectado dixon

  • Habitual
  • *
  • Puntos: 113
  • Mensajes: 60
  • Agradecido: 7 veces
  • Juegos de educación gratis dixon 2019. Prov. 4:7
    • Ver Perfil
Respuesta #6 en: Noviembre 15, 2019, 12:09:24 am
Hola Zaikathan , un placer encontrarlo de nuevo en esta dimensión. He quedado impactado con su juego spacial fight III, y agradecido estoy por los consejos de programación en Laravel.

Gracias por comentar y por expandir el universo del tema agregando la variable "memoria" ahora mi cabeza da muchas vueltas pensando en lenguajes de bajo nivel. Jajaja.

Lo que necesito desarrollar es una pequeña APK que me permita programar en lenguaje Gmk desde Android. Y todo comienza con un draw_text(0,0,"Hola mundo"). La lentitud que generará el procesamiento de strings solo me impedirá crear juegos grandes.

No quiero esperar para programar el código propuesto y crear el execute_string() .



 


Desconectado Clamud

Respuesta #7 en: Noviembre 16, 2019, 08:03:41 pm
Aquí hay algunas ideas para programar un intérprete de GML
https://yal.cc/interpreters-guide/

 
Los siguientes usuarios dieron las gracias a este tema: dixon, Johann


Desconectado dixon

  • Habitual
  • *
  • Puntos: 113
  • Mensajes: 60
  • Agradecido: 7 veces
  • Juegos de educación gratis dixon 2019. Prov. 4:7
    • Ver Perfil
Respuesta #8 en: Noviembre 17, 2019, 01:43:24 am
Hola, clamud, muchas gracias por sus ideas, este tema es infinito.

Bueno, se cumplió el objetivo principal, el código propuesto esta funcionando con sus muchas limitaciones, pueden verlo dandole click a la imagen.



Esto no termina pues falta:

1. Falta hacerle pruebas a la extención sugerida por arcadian
2. Falta analizar los avances del contenido que ofrece clamud.
3. Falta crear el ejecute_file()
4. Falta Lograr una programación básica desde android modificando un archivo de texto y ejecutando el ejecuta_file.
3. Falta lograr el ahorro de memoria desarrollando el motor desde otra plataforma más óptima.

Se aceptan ideas y sugerencias.
« última modificación: Noviembre 17, 2019, 02:10:44 am por dixon »