Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mensajes - penumbra

1276
Madre mía.... Tienes un montón de objetos que se podrían juntar en uno solo  @_@

El error al usar el if o el switch se debe a que, en el objeto control (me costó encontrarlo, porque se llama "obras") estás declarando el arreglo seleccion en CREATE así:
[gml]var i,seleccion;[/gml]

Eso en GM se conoce como una declaración de variable local. Esa variable local sólo "dura con vida" en el evento donde se crea. Al finalizar create, la variable no existe más, por lo que es imposible acceder a ella, ni siquiera el mismo objeto obras puede hacerlo después de CREATE.

La solución es muy obvia así que no tiene caso decirla  8)
1277
Sube el proyecto para verlo. Así es más fácil ver dónde está el error. Si tienes errores de variable, es porque el código no está en el objeto correcto o no estás llamando correctamente a la variable. Dices que hay un error tal y otro error tal, pero no indicas exactamente que dice cada error. Es muy difícil adivinar
1278
La sintaxis del for no es correcta
http://docs.yoyogames.com/source/dadiospice/002_reference/001_gml%20language%20overview/401_11_for.html

Pero en general la lógica del código no hace lo que pretendes
1279
CREATE
[gml]
aux = score
giro = 0.5[/gml]

STEP
[gml]
if score == (aux + 10)
{
      aux = score
      giro += 0.5
}

image_angle = giro
[/gml]

No lo he probao pero esa es la idea. Quizás también se peuda implementar aplicando mod al score, pero bueno, es una opción.
1280
Cita de: yokaiworld en Agosto 21, 2014, 11:47:27 PM
hago un objeto controlador y le pongo este codigo en create ? gracias

Eso sería lo ideal, pero si el juego hasta ahora no lo habías diseñado para que el controlador ajustara variables usadas en otros objetos, puede haber problemas (o no). Depende de qué tantas variables vayas a ajustar de esta manera. El código se puede poner en el mismo objeto al que le quieres asignar la velocidad, o puedes usar una variable global, o puedes usar sintaxis de punto. Eso ya es cuestión de gustos  Por ejemplo

[gml]switch (os_type)
{
   case os_windows: obj_jugador.velocidad = 5; break;
   case os_android: obj_jugador.velocidad = 8; break;
}[/gml]
1281
[gml]
switch (os_type)
{
   case os_windows: velocidad_personaje = 5; break;
   case os_android: velocidad_personaje = 8; break;
}[/gml]

Aunque si se mueven más lento quizás es porque el juego no está bien optimizado o hay código/recursos que lo hace lento en Android (repito, quizás).
1282
Preguntas y respuestas / Re:texto con movimiento
Agosto 21, 2014, 05:56:00 AM
Pues es lo mismo que con una imagen, se le suma o resta un valor al argumento y en la función draw_text()

CREATE
[gml]inc = 0[/gml]

DRAW
[gml]draw_text(100, 300 - inc, "Hola")
inc += 1 [/gml]
1283
Sí, DRAW ocurre las mismas veces que STEP. Se puede usar DRAW como STEP pero no STEP como DRAW. Aunque no es recomendable poner mucho código en DRAW (como si fuera STEP) porque eso podría afectar la rapidez con la que se dibujan las cosas (aunque a mi nunca me ha pasado)

Cita de: DaiGoN en Agosto 20, 2014, 09:48:20 PM
*Por cierto, hay alguna forma de "split" o similar para cargar los datos desde un CSV? sino almacenar todas las preguntas es un poco engorroso...

Se pueden usar archivos de texto en lugar de archivos INI para crear un sistema de guardado similar a CSV. De que se puede, se puede, pero tú debes encargarte de diseñar el sistema de guardado con las funciones de archivo y de cadena de GMS, no hay una función que lo haga todo por si sola.
1284
No sé por qué haces esto
objPintarTexto.texto = objPregunta.textoPregunta;

El objeto que dibuja el texto fácilmente puede ser el mismo que contenga la pregunta. Además, la mejor manera de manejar preguntas en un juego de este tipo es, en lugar de tener una pregunta individual en una variable, tener todas las preguntas almacenadas en un arreglo o ds_list/ds_map.
1285
Esto:
if (seleccion[0])
{sucede algo}
if (seleccion[1])
{sucede otra cosa}

Nunca va a funcionar. No hay ninguna comparación contra la ID de la instancia que ejecuta el código. Suponiendo que las ids están guardades correctamente en el arreglo seleccion[]. Debería ser algo como (Evento de mouse)

[gml]switch (id)
{
    case seleccion[0]: {//Cosas que sucenden cuando id es igual a seleccio[0] break; }
    case seleccion[1]: {     break;}
    case seleccion[2]: {     break;}
}[/gml]

o si no quieres usar un switch, se puede con ifs, pero es queda un poco menos limpio
[gml]
if id ==  seleccion[0]
{
   //Acciones para cuando id == seleccion[0]
}

if id ==  seleccion[1]
{
   //Acciones para cuando id == seleccion[1]
}

if id ==  seleccion[2]
{
   //Acciones para cuando id == seleccion[2]
}[/gml]
1286
Preguntas y respuestas / Re:Velocidad de "SPRITE"
Agosto 20, 2014, 02:49:54 AM
[gml]image_speed = 0.1[/gml]

image_speed=2 hace que GM despliegue 2 subimágenes por paso, lo cuál no tiene sentido en el 99.9% de los juegos, en el que una misma subimagen debería mostrarse durante varios steps/frames. por eso casi nunca se usan velocidades mayores a 1, a menos que se usen sprites con decenas de subimagenes
1287
Preguntas y respuestas / Re:background vertical.
Agosto 20, 2014, 01:51:53 AM
Intenta hacer una habitación muy larga y una vista que siga al jugador. El fondo no lo debes agregar desde las propiedades de la habitación, sino dibujarlo en DRAW de un objeto controlador. La coordenada y en draw_background se debe modificar de acuerdo a si el jugador avanza o retrocede
1288
Sería más efectivo que dejaras el código DRAW de todos los objetos. Así sin ver ningún código, no creo que lo que cambie sea el tamaño, más bien la fuente está cambiando a otra o no se ajusta a la correcta en el momento correcto. ¿Hay algo que dibujes con otra fuente distinta? Esto debería solucionarse usando draw_set_font en el lugar correcto
1289
Preguntas y respuestas / Re:ayuda con sentencia choise
Agosto 19, 2014, 07:02:39 AM
antes de choose debe ir un
[gml]randomize()[/gml]
1290
Salió hace como una semana o más. Intenta la opción "check for updates"
https://www.yoyogames.com/tech_blog/21