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 - Clamud

1651
Juegos en desarrollo / Re:Elders of Madness
Octubre 17, 2014, 03:56:00 PM
Si, los gráficos son la mejor parte del juego, pero la jugabilidad y la interfaz siguen en una etapa muy temprana del desarrollo. Y la historia me parece interesante, me encantan esos temas lovecraftianos, pero falta insertarla en el juego.
1652
Bueno, primero hay unos errores en el código:

  • No es necesario hacer dos veces el chequeo con la función collision_line, basta con poner el primer if
  • En la función position_meeting, como índice de objeto, estás colocando un valor lógico, en éste caso siempre vale 1, que corresponde con el segundo objeto que creaste en tu proyecto.
  • La variable image_single no debe ser usada, ni siquiera aparece en el manual, mejor usa la variable image_index.

Lo que entiendo es que quieres que la forma (o sprite) del puntero cambie cuando se coloca encima de un objeto "unit_red", pero sólo cuando el objeto jugador pueda ver ésa instancia, dime si es correcto, si es así creo que hay una forma más fácil para implementarlo.
1653
Escribe esto:
[gml]
background_index = bg_fondo_nuevo;
[/gml]
1654
Preguntas y respuestas / Re:Controles Tactiles
Octubre 16, 2014, 04:16:58 AM
La función YoYo_AddVirtualKey es muy extraña, es un script? o estás usando alguna extensión?
1655
Hice un ejemplo, se dibujan flechas de los azules a los rojos sólo cuando pueden verse. La parte importante es el código que está en el evento "Draw" de "obAzul".
1656
Para evitar el retardo, lo mejor sería poner el código en el evento draw para que el objeto se dibuje en la posición del puntero antes de que el puntero cambie de posición.
1657
Para usarlo agrega un nuevo recurso script y copia el código, dale un nombre claro, a mi se me ocurrió "scEspacioLibre", pero tú nombralo como más te convenga.
El objeto que debe ejecutarlo es el que se mueve, o el objeto a partir del cual se mide la distancia. Cada vez que necesites saber cuál es el espacio libre más cercano ejecuta la siguiente línea:
[gml]cercano = scEspacioLibre();[/gml]
así sin argumentos. Ésto puede ir en el evento step, o en otro evento si no quieres que se haga el chequeo constantemente.
Entonces obtenemos las coordenadas del punto al que debe moverse el objeto:
[gml]
xto = cercano.x;
yto = cercano.y;
[/gml]
Y entonces puedes usar alguna de las funciones que aparecen en las secciones "Movement" o "Motion Planning", del manual, para realizar el movimiento.
1658
Hola. Puedes usar un script como el siguiente:
[gml]
/* scEspacioLibre */

global.mapa = ds_map_create();
var distancia, instancia;

//Almacenar en un mapa las distancias junto con los id de las instancias desocupadas
with( espacio_libre )
{
    if( not ocupado )
    ds_map_add( global.mapa, point_distance(x,y,other.x,other.y), id );
}

//Si hay instancias desocupadas
if( ds_map_size(global.mapa) > 0 )
{
    //Encontrar la distancia más pequeña con el id correspondiente
    distancia = ds_map_find_first( global.mapa );
    instancia = ds_map_find_value( global.mapa, key );
    ds_map_destroy( global.mapa );
    return instancia;
}
else //Si no hay instancias o todas están ocupadas
{
    //Devolver la constante "ninguna"
    ds_map_destroy( global.mapa )
    return noone;
}
[/gml]
que te devuelve el id de la instancia desocupada más cercana.
Después puedes usar la función de movimiento que te mencionaron.
1659
Preguntas y respuestas / Re:Coordenadas 3d del mouse
Octubre 13, 2014, 12:10:38 AM
Adjunto un ejemplo de conversión de coordenadas 2D a 3D. (Es un ejemplo que edité, de una versión editada por Robert B Colton, el autor original es Phantom107 que a su vez utilizó scripts de Tepi XD).

Yo sólo borré algunas partes del código que funcionan únicamente con el compilador de ENIGMA, el archivo original lo descargué de aquí: http://enigma-dev.org/edc/games.php?game=48
1660
Preguntas y respuestas / Re:Duda con variables y su uso
Octubre 11, 2014, 03:21:11 PM
Además "speed" y "hspeed" son variables, no funciones.
En el código, en vez de asignar valores a las variables hspeed, vspeed, etc., para dejar que GM haga el desplazamiento del personaje de forma automática, el desplazamiento se hace de forma más controlada haciendo sumas y restas a las variables "x" e "y", como explicaron anteriormente.
1661
Puedes hacer que el objeto, que tiene asignada la time_line, sea persistente. O guardar el valor de timeline_position en una variable global, antes de cambiar de room o en el evento Room End, y ya en la nueva room reanudar la timeline en esa posición.
1662
Lo que pasa es que no tienes un código para reaccionar a la colisión, haces que la gravedad valga cero, pero eso no evita que el objeto siga su movimiento hacia adentro del bloque. Además falta el código para el movimiento horizontal.
1663
No puedo jugar, me aparece éste mensaje "Unexpected error ocurred when running the game". Estoy usando windows 7, y lo probé con y sin compatibilidad con wxp.
1664
Ya terminé el demo, está divertido. Me gustó la ambientación y la música le da mucho realce.

En el aspecto gráfico, no me gustó que los sprites tienen tamaños muy diferentes entre si.

Hay problemas con las colisiones; me quedé atascado en dos ocasiones, la primera en el primer nivel, no recuerdo exactamente dónde, y la segunda en el nivel de lava, en la esquina superior izquierda.

Otro bug que encontré es que a veces el blanco, cuando apuntas automáticamente, está desplazado respecto al enemigo, me sucedió en el nivel de las nubes y en el de lava. En el nivel de lava perdí y al volver a jugar el blanco ya se mostraba correctamente.

En un mensaje dice que se puede apuntar con las teclas W,A,S,D pero no me funcionó, ¿es porque no has agregado esos controles? De todos modos creo que sería algo difícil apuntar con esas teclas y disparar con x, los controles se tendrían que modificar un poco.

En general me pareció fácil, espero que se vaya poniendo más difícil. Y los personajes se ven interesantes.

Tengo ganas de ver el juego completo, hasta luego.
1665
Preguntas y respuestas / Re:Fallo de room_goto();
Septiembre 28, 2014, 07:44:33 PM
No debes poner "room_get_name(room)", sino simplemente "room".