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

16
Ciclos:

Mientras no se alcance el fin de archivo (EOF), guardo en una variable cada línea de texto del archivo y me muevo a la siguiente línea. El manual de hecho incluye ejemplos 99% similares a lo que quieres hacer.
17
Preguntas y respuestas / Re:CORRUPTO al importar gm8 a gms
Diciembre 09, 2015, 09:29:41 PM
Dicen las leyendas de la GMC que a veces el error lo provocaría un recurso con nombre no válido( Scripts -> Check Resource Names ), o que a veces, habría que borrar la lista de included files. EN fin, sólo son leyendas. Otra opción sería ir removiendo recursos del proyecto (en una copia del proyecto) e ir probando a importar, a ver si algun objeto o script u otra cosa es el culpable (alguna dll, extensión, quién sabe).
18
Cita de: cesar561 en Diciembre 09, 2015, 09:11:50 PM
No me funciono, no se incrementa la variable tick,
Tick no se está incrementando porque la pusiste entre comentarios. Aparte, modificaste la condición y le quitaste un AND. así daría error.

Prueba esto
CREATE
[gml]
tick=0;
mover = false[/gml]

STEP
[gml]if (room == room0) and keyboard_check_pressed(ord('A')) and !mover
mover = true

if (tick >= room_speed*10) and (mover)
{
        tick = 0; // reset the ticks to 0.
        background_hspeed[0] += -0.5;
}
else
      tick++;
[/gml]



Y lo mismo podría hacerse con alarmas (si se prefiere, en lugar del código anterior)
CREATE
[gml]
mover = false
[/gml]

STEP
[gml]
if (!mover) and keyboard_check_pressed(ord('A'))
{
     mover = true
     alarm[0] = room_speed * 10
}
[/gml]

ALARM[0]
[gml]
if (mover)
{
     background_hspeed[0] += -0.5;
     alarm[0] = room_speed * 10
}
[/gml]
19
¿En qué momento del juego se puede elegir skin? ¿cuántas skins (diseños) hay en total?, ¿cuántos sprites se dibujan por cada skin en el evento DRAW=}? y... quizás lo más importante, cuál es el código del evento DRAW que consideras que hace lento el juego en móviles de gama baja.
20
Suponiendo que al presionar la tecla A, en la habitación "Juego", comienza a moverse el fondo...
[gml]
if (room == room_juego) and keyboard_check_pressed(ord('A'))
{
     //código para mover el fondo o aumentar velocidad
}
[/gml]

El código iría en STEP
21
lo que falla es que estás usando detección por objeto, ejemplo "Si hay un objeto en tal posición..." o "si choco con el objeto tal"

Hay muchas funciones que pueden usarse para resolver tu problema, incluso desde el evento de colisión se puede resolver, usando la palabra other. Sería mejor que colocaras el código que usas para las colisiones y cómo están colocados el origen del sprite tanto en el jugador como en el objeto encima de las escaleras. Así es más fácil saber qué modificar.
22
Sí. En otros lenguajes se usa igual y se prefiere esta forma "corta".
23
Si a es verdadero, se ejecuta el bloque del if (b += 3).
24
Preguntas y respuestas / Re:Transparencia en tiles
Diciembre 08, 2015, 11:24:43 AM
No estoy seguro, pero creo que depende de la versión de GM8X

No me hagas mucho caso, porque yo comencé a usar GM a partir de la 8.1, así que no conozco los bemoles de las versiones anteriores, pero creo que alguna vez lei que de la 8.0 hacia atrás, aplicaba esa regla de que la transparencia se definía por el pixel de la esquina inferior derecha, y precisamente, esas versiones NO soportaban transparencias de PNGs a 24 bits.

Me parece que fue la versión 8.1 la que por primera vez permitió cargar PNGs de 24 bit con un canal alfa de 8 bit, y precisamente por esta característica, se descartó la regla del pixel inferior izquierdo para calclular la transparencia (ahora se leía directamente del canal alfa del sprite). Acabo de probar cargar un tile con transparencia en GM8.1 y no me da ningún fondo verde, es decir, sí me respeta la transparencia del PNG original. El tile se ve correctamente al colocarlo en la habitación, sin tener que usar el editor para borrar colores.

25
Preguntas y respuestas / Re:sprites vectorizados
Diciembre 08, 2015, 07:56:06 AM
Un sprite vectorizado no necesariamente será de mejor calidad gráfica que un png. La ventaja de los sprites vecorizados es que se pueden reescalar sin sufrir degradación ni "pixelación".

Para cargar un sprite vectorial, el gráfico debe tener formato SWF. De ahí en adelante, lo puedes usar como un gráfico "normal". Obviamente que GMS no puede editar este tipo de imágenes como sí lo hace con imágenes raster. También hay algunas funciones de dibujo o de sprites que no es posible usar porque sólo trabajan con imágenes de mapas de bits.


Yo no las he usado, soy partidiario 100% de las imágenes de mapas de bits, pero por ahí me han dicho que no funcionaban muy bien, que en gráficos pequeños se veían mal, o había líneas/huecos que no existen en el original, etc. No sé si esto ya se ha corregido o sigue pasando.

http://www.yoyogames.com/tech_blog/33

Sobre usar subimágenes, parece que no es posible(?)
http://gmc.yoyogames.com/index.php?showtopic=606397
26
¿Algo así?


Añadiendo un grano de arena a lo que te mencionó fega. En un sistema ideal, descartando la fricción del aire, el movimiento de un proyectil puede descomponerse en dos partes. El movimiento horizontal y el movimiento vertical. En este caso, la velocidad horizontal no cambia a lo largo de la trayectoria. La velocidad vertical sí, porque se ve afectada por la gravedad

Como dijo fega, lo que tienes que hacer es calcular cada una de esas dos componentes de la velocidad. Luego, como lo que interesa en una gráfica son puntos, esos puntos son distancias, y para obtener una distancia a partir de una velocidad, tienes que involucrar el tiempo. El tiempo, en tu juego, lo puedes variar (manejar la magnitud que quieras), y dependiendo de eso la gráfica resultante cambiará su escala/tamaño.

Más información:
https://en.wikipedia.org/wiki/Trajectory_of_a_projectile
27
Cita de: Chrom en Diciembre 07, 2015, 10:52:54 PM
El internet es bueno, pero en la descarga varias veces se detuvo, la pause y después la continue :-X, no se si eso afecte.
Sí.

Cita de: Chrom en Diciembre 07, 2015, 10:52:54 PM
pero la borre y no estoy seguro de que archivo me falta por borrar
Aquí se explica qué pasos hacer para dejar el sistema "limpio" antes de reinstalar
http://help.yoyogames.com/entries/37903916-How-to-perform-a-fresh-install

Sin embargo, no creo que ese sea el problema. El mensaje orginal indica que ha habido una falla en la verificación de integridad del archivo descargado. Yo te recomendaría usar un manejador de descargas para descargar el archivo de instalación de GM:S en lugar de descargarlo a través del navegador

La versión más reciente es
http://store.yoyogames.com/downloads/gm-studio/GMStudio-Installer-1.4.1683.exe

Yo probaría a bajarlo con este programa
http://portableapps.com/apps/internet/wackget-portable

28
GM no interpreta etiquetas HTML, así que esos datos no los puede procesar. Creo que en una de tus otras preguntas mencionaste que habías encontrado una extensión para abrir contenido HTML desde GMS. No sé si se trate de la misma extensión, pero yo leí hace unas semanas que ya no funciona con las versiones más recientes de GM:S y que sólo funciona en windows (esto se menciona en la página de marketplace).

Descartando la interpetación de HTML o el uso de extensiones, la única manera en que se me ocurre hacer lo que propones, sería que crearas un sistema de logueo/registro para que sólo los usuarios permitidos pudieran acceder a una sesión. Después de validar sesión, tendrías que crear tu propio sistema de dibujo en GML. Mediante las funciones de networking se enviaría información de qué es lo que hay en la pizarra de GM para que el otro usuario (o usuarios) lo vieran. Esto suena similar a lo que hizo Texic en su consola GM (ya no recuerdo el nombre exacto)
29
En el evento Mouse left pressed del botón agregas el código:

[gml]game_end()[/gml]
30
Cita de: zHeMaa en Diciembre 06, 2015, 06:34:24 PM
Pues a ver, todos están dentro de "obj_jugador" en un evento step. No hay nada en create ni en otro evento.
[gml]
key_derecha_android = virtual_key_add(112,224,32,32, vk_right);
key_izquierda_android = -virtual_key_add(48,224,32,32, vk_left);
[/gml]
¿Por qué alguien querría agregar 2 teclas virtuales en cada step? ¿Cuál es el sentido? 'Qué hace el signo - en la segunda función?