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.

Temas - LowHertzs

1
Hola makeros!, tengo un problema bastante raro a la hora de dibujar un texto en pantalla, por lo normal funciona correctamente, al entrar, cuando estoy en el nivel 1 si salgo y entro no pasa nada, todo se ve correctamente, pero si salgo y vuelvo a entrar estando en otra room, es decir nivel2, o nivel3 etc, el tamaño de la fuente se vuelve loco y se hace enorme. Eso si, si cambio de room otra vez sin salir del juego se vuelve a ver correctamente.

Repito en la room1 aunque salga y entre no pasa, pero en las demás rooms si salgo y entro si, en las opciones globales tengo el "full scale" pero no funciona ni con el "keep aspect ratio".

Dejo fotos para que veáis el error. A ver si alguien sabe a que se puede deber esto..

Como se vería correctamente:


El error:
2
Hola makeros!, no consigo hacer algo que antes con otras versiones anteriores de GM:S era muy fácil, pero una vez que actualicé no me deja.

Me refiero al codigo:

virtual_key_show(vkup);

Este código al ponerlo mostraba un cuadro encima de donde estaba situado la virtual key, y te permitia saber si estaba bien encuadrado etc. Pero ahora no hay manera, por mucho que lo pongas no dibuja el cuadrado encima del virtual key, ¿alguien sabe otra manera? ¿o este código ya ha sido actualizado por otro?
3
Hola makeros!, ¿existe manera de adaptar automáticamente el tamaño de la pantalla dependiendo del dispositivo en que se utilice?, por ejemplo si uso un móvil que tiene una resolución de 840 x 480 que se ponga en el tamaño más grande posible para esta pantalla, para que no salgan esos bordes negros tan molestos.

4
Hola makeros! quiero hacer uso de un script, para que cuando golpee, si el enemigo está "cerca" le quite vida, y si no lo está no le quite nada. La cuestión es que no me funciona, desde el script no se baja la vida del enemigo. Y me salta ERROR para obtener la variable "hp" del "obj_enemy_flame". Este es el código que estoy usando.

if (sprite_index = spr_player_golpe)
    {
    target = instance_nearest(x, y, obj_enemy_flame)
    if (distance_to_object(target) <= 32)
        {
        hp -=1;
        }
    }


Quiero hacerlo con el uso de script, NO QUIERO USAR EL "CHECK COLLISION", puesto que solo quiero que le pueda quitar vida si está pulsando la tecla "F" y no solo con acercarse.

Este es el error que me salta, como si no puede detectar la variable global hp del bicho en cuestión.
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of  Step Event0
for object obj_player:

Push :: Execution Error - Variable Get -1.hp(100003, -2147483648)
at gml_Script_scr_player_golpe_state (line 6) -         hp -=1;
############################################################################################
--------------------------------------------------------------------------------------------
stack frame is
gml_Script_scr_player_golpe_state (line 6)
called from - gml_Object_obj_player_StepNormalEvent_1 (line 7) -         scr_player_golpe_state();
5
Preguntas y respuestas / Guardar y cargar partida .INI
Agosto 01, 2014, 09:36:45 PM
Hola makeros! vengo con algo que puede parecer muy básico pero a mi me está volviendo loco. Antes de que me digáis que mire la guía os aseguro que la tengo más que vista, pero no capto algunas cosas.

Lo que busco es muy simple, un sistema de cargar y guardar partida automáticamente en .ini, lo que quiero es que guarde la room ultima en la que llegó a estar el personaje, que tambien guarde ciertas variables, es decir si consigo una llave en una room que en otra se desbloquee la puerta, la vida, y la posición del jugador. Tan solo quiero que guarde eso.

Voy a intentar poneros (con la guia de gm:s en la mano lo que yo pondría, pero me faltan muchas cosas que no consigo entender, a ver si me podéis orientar).

Para que guarde la partida:
ini_open("mazmorra.ini");
ini_write_real("mazmorra","room",room);
ini_write_real("mazmorra","vida",vida);
ini_write_real("mazmorra","player_position",player_position);
ini_write_real("mazmorra","door1",closed);
ini_write_real("mazmorra","door2",closed);
ini_close();


Y para que cargue:
ini_open("mazmorra.ini");
if
ini_read_real("mazmorra","room",0) = 0
{
ini_close();
exit;
}
room_goto(ini_read_real("mazmorra","room",0));
vida = ini_read_real("mazmorra","vida",0);
player_position = ini_read_real("mazmorra","player_position",player_position);
door1 = ini_read_real("mazmorra","door1",0);
door2 = ini_read_real("mazmorra","door2",0);
ini_close();


Pero la verdad, que no sé como especificar cada cosa. Y no me funciona de ninguna de las maneras. A ver si alguien me puede orientar.

Gracias!
6
Estoy teniendo un problema que no consigo comprender, he probado de muchas maneras (leyendo el manual y no encuentro la manera de conseguir cambiarlo) mi problema está cuando se muestra la animación de correr de mi sprite, está muy acelerada.

En el evento create de mi personaje tengo el siguiente código (que lo que hace es indicar el cambio de sprite en 8 direcciones):
// sprite directions
sprite[0,0] = spr_northwest;
sprite[0,1] = spr_west;
sprite[0,2] = spr_southwest;
sprite[1,0] = spr_north;
sprite[1,2] = spr_south;
sprite[2,0] = spr_northeast;
sprite[2,1] = spr_east;
sprite[2,2] = spr_southeast;


Leyendo el manual para cambiar la velocidad del sprite debería añadir esto:
// animation speed
image_speed = 0.15;


Pero no me funciona, no sé como ponerlo ya. Por mucho que cambie en eso, y lo ponga incluso a 0 la animación sigue a la misma velocidad.
7
Buenas, estoy interesado en aprender más sobre gm dejando de lado el D&D y encontré esta aplicación en el foro oficial de game maker "GML buddy" que te deja ver las acciones hechas con D&D en GML.

El problema es que está desactualizada, no se apenas como se usa, y no sé si me valdrá con la última versión de Game Maker Studio.

No quiero probar a lo tonto y tener que reinstalar todo.

¿Alguien conoce alguna alternativa a esto que haga lo mismo o parecido, o alguien ha probado si funciona con gms?

Dejo el link para que le echéis un vistazo: http://sandbox.yoyogames.com/games/66236-gml-buddy-v3#

Saludos.
8
Hola, pues quiero hacer uso de los archivos .ini, para que cada vez que entres en una room nueva se guarde que has estado ahí, y si te sales y vuelves a entrar pulsando un botón en el menú, puedas continuar desde la ultima room que jugaste.

ini_open("Ultimaroom.ini");

Solo se, que empezaría así, pero que código utilizo para que guarde la room ultima en la que está?

Saludos~
9
Hola!, pues mi pregunta es muy simple, pero llevo un rato dándole vueltas y no encuentro que pueda ser.

Resulta que uso una variable global que se llama "health", que al iniciar empieza en 3, y la cual dibuja sprites de 3 corazones en la parte superior de la pantalla.

Mi problema viene que lo que quiero que pase, es que al tocar a un enemigo el jugador, a esa variable se le reste uno, consigo que se le reste pero mi problema viene en que se le resta continuamente si se queda pegado y se llega a poner la variable a -999.

Yo quiero que si el enemigo toca mi personaje 1 vez, le reste 1, no le reste mientras se queda pegado.

Probé haciendo uso del siguiente código:
health-=1

Pero sigue restando infinitamente cuando toco al enemigo.

Que podría ser? saludos~
10
Hola makeros!, tengo un juego donde el personaje puede andar en ambas direcciones en 2d, y hay escaleras que puede subir.

Lo que quiero con código es que detecte que esta colisionando con las escaleras y presionando "UP" y cambie el sprite al de "player_escalando".

Lo he intentado de varias maneras, pero me responde de una manera un tanto rara, primeramente no consigo que se vea la imagen del sprite subiendo y por otro lado me altera las animación del personaje normal.

¿Alguna solución?

**EDITO:

Estoy usando el siguiente código para intentar esto, pero no me funciona:
if keyboard_check(vk_right) and place_meeting(x+1,y+1, obj_escalera) then sprite_index = spr_dog_scalling

Se supone que lo que intento hacer con este código es lo siguiente; si se está pulsando la tecla "UP" y el personaje está tocando el "obj_escalera" entonces el sprite del jugador cambia a "spr_dog_Scalling".
Saludos
11
Hola makeros! la verdad que estoy bastante perdido, tengo un código con el cual, si el obj_player colisiona con otro "personaje" se inicia un globo de texto, el problema es, que si te alejas el globo se queda como está, y yo quiero que desaparezca en cuanto no haya contacto.

Pero probé con varias opciones y el texto sigue quedándose en pantalla.

Como puedo poner que se detecte que ya no existe colisión y se borre el texto?
12
Buenas! el fallo que tengo ahora es que hago uso de unas plataformas con movimiento es mi juego, es decir se van moviendo en una dirección y en otra, el fallo viene cuando salto hacia una de estás y le doy por un lado como en la siguiente imagen: cuando esto sucede la plataforma para su movimiento y se bloquea, así mismo el personaje también y se queda pegado a ella por el lado, yo lo que quiero es que cuando pase esto no se quede enganchado y el personaje caiga y la plataforma continué con su movimiento normal, uso el siguiente código en las plataformas para hacer esto:

En create tengo puesto esto:
hspeed = -2;
alarm[0] = 30*2;

slope=0
//Set up a particle system for outlining the blocks...
ps=part_system_create();
pt=part_type_create();
pe=part_emitter_create(ps)
part_system_depth(ps,1);
part_type_sprite(pt,spr_block1_outline,0,0,0);
part_type_blend(pt,false);
part_type_alpha1(pt,1);
part_type_color1(pt,make_color_rgb(93,90,73));
part_type_gravity(pt,0,0)
part_type_size(pt,1,1,0,0);
part_type_life(pt,2,2);
part_type_scale(pt,1,1); 


Y en alarm0 esto:
hspeed = -hspeed;
alarm[0] = 30*2;


En el objeto del personaje, al tocar con la plataforma tengo puesto lo siguiente:

vspeed = other.vspeed;


Resumiendo mi problema viene en que el personaje al saltar hacia la plataforma si le da por el lado deja bloqueada la plataforma y el mismo personaje, y también que una vez que pasa esto, la plataforma CAMBIA SU TRAYECTORIA ORIGINAL, no se a que se puede deber, pero esto es lo que sucede.

Espero que alguien me pueda ayudar, saludos y gracias por anticipado!.
13
Hola! diseñé un efecto de luz, pero mi problema está en que quiero que siga a mi jugador, es decir, que se dibuje justo encima de mi obj_player y lo siga a donde quiera que vaya.

¿Que opción puedo usar para hacer esto?

Gracias
14
Hola, esta es mi pregunta. He estado mirando por otro foros para encontrar la solución a esto, es decir mantener una resolución pixel art en GM:S para que una vez que lo pase a Android quede tal y como deseo.

Añadieron hace poco la opción "keep aspect ratio", que se supone que deja la resolucion de los sprites tal y como está, permitiendo el look pixel art, pero esta opción no está para Android.

Estoy usando la "Early access 1.99".

¿Que podría hacer para conseguir este efecto?

Saludos
15
Hola!, en un juego de aviones quiero que cuando el jugador pulse la flecha hacia abajo, la cámara se desplace hacia abajo, pero siempre manteniendo al jugador en la pantalla, es decir, una vez que pulses en vez de salir en el centro sale lo más pegado arriba que puede, dejando una visión clara sobre la parte de abajo, y al soltar este botón la vista se vuelva a centrar sobre el personaje.

¿Como podría hacer esto?
16
Hola makeros!, estoy haciendo un juego 2D, pero no como el del mario, si no de "mundo abierto" por llamarlo de alguna manera, no se como se les llama a estos juegos.

Hice este ejemplo:


Es decir lo que quiero es que si vas andando con tu personaje y chocas con la pared de una casa no puedas atravesarla, excepto si entras por la puerta, una vez estés dentro el techo desaparezca dejándote ver el interior, pero si te sales por la puerta vuelva a aparecer, también que una vez en el interior si chocas con las paredes tampoco puedas salir.

¿Como podría hacer esto?

Saludos~
17
Últimamente me inundan las preguntas, y por más que busco en el foro no encuentro que poner para que me funcione lo que me propongo. Lo que intento hacer es, que un enemigo, cuando te vea, te dispare desde cierta distancia, lo logré usando el "create moving instance" el cual crea las balas en la dirección de mi personaje, hasta ahí todo correcto, el fallo viene, cuando el enemigo no para de disparar una corriente de disparos, y yo lo que quiero es que dispare una bala cada cierto tiempo.

Tampoco quiero que dispare 12000 balas, si no por ejemplo 100 como máximo y se le agoten, esto si se como hacerlo, usando una variable global, que le vaya restando por cada bala que tiene desde el inicio.

Pero lo de especificar el tiempo que tarda en disparar entre bala y bala no sé como ponerlo, miré vídeos sobre "Time Lines" pero creo que tampoco me sirven.

Gracias~
18
Pues esto tan simple me está dando dolor de cabeza, resulta que tengo una variable global que se llama "global.bombas" que indica la cantidad de bombas que tiene el jugador, el jugador en el evento step tiene un test variable> global.bombas> si es igual a 0 > changue sprite to "sprite sin bombas" es decir lo que quiero es que cuando se quede sin bombas se cambie el sprite por el del personaje sin bombas.

Mi fallo está en que cuando se cambia el sprite, al de sin bombas, se ve la imagen del sprite fija, es decir, no hace la animación que tiene. Se queda con la animación parada en la primera imagen.

¿A que se debe esto?

Saludos~
19
Hola makeros!, despues de seguir practicando con GM:S, hice una especie de juego donde llevas un personaje volando y tal, bueno la cuestion es que le puse una barra donde indicaba la municion que tenia disponible, y se dibujaba la cantidad con la variable de la municion.

Ahora cuando inicio el juego y dejo a mi personaje quieto un tiempo, automaticamente el sprite de mi personaje desaparece, y no se ve, es más, si pulso espacio (que es la tecla que uso para disparar) puedo ver como las balas bajan, es decir que mi jugador sigue ahí pero se vuelve totalmente invisible.

A que se puede deber esto? según he estado leyendo dicen que puede ser por hacer uso de "Draw Sprite" que es lo que estoy usando en el contador de la munición, pero ya lo cambié por el "draw myself" y sigue fallando.

Gracias a todos! ~
20
Hola makeros!, pues esta es mi duda..

Ahora mismo estoy usando este código para que mi personaje salte:
if keyboard_check(key_jump) &&
  place_free(x,y+1) then { jump = 1; vspeed = -(sqrt(2*(weight/100)*jumpheight)); }


Que funciona tal y como pone ahí, le das a saltar y salta hacia arriba independientemente de si estás tocando el suelo o no, el problema es, que puedes mantener pulsado la tecla de salto y vas "volando" o puedes darle varias veces y hasta salirte del mapa.

Lo que yo quiero es, que cuando lo mantengas pulsado no siga saltando, y que cuando le des a saltar una vez estés en el aire, solo haga un salto, y después de terminar ese salto baje al suelo, es decir, que no te deje seguir dando saltos en el aire.

A ver si alguien sabe que puedo hacer.

Saludos!