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

31
Preguntas y respuestas / Re:Salto como super mario
Abril 18, 2015, 06:47:34 PM
creo que se llama variable jump height.
32
quiero hacer un hud pero no se como hacer para que este adherida a la xview y yview.
33
Preguntas y respuestas / Screen Shake
Abril 18, 2015, 04:35:28 PM
intente hacer algo pero utilizo una view que se mueve.
34
Preguntas y respuestas / Salto como super mario
Abril 17, 2015, 07:45:13 PM
quiero hacer un salto como super mario de que si mantienes el boton de salto apretado sube hasta lo que mas puede y si en el curso de el salto manteniendo apretado la tecla de salto que baje. Este es mi codigo de plataformas

create
//Plataformas base

hsp = 0;
vsp = 0;
movespd = 6;
jumpspd = 6;
grav = 0.3;
grounded = false;
jump_movespd = movespd;


step
///Player Logic
//Platform Base Script
//Variables
var rkey = keyboard_check(vk_right); // Right Key
var lkey = keyboard_check(vk_left); // Left Key
var jkey = keyboard_check(vk_up); //Jump Key
var skey = keyboard_check(ord("Z")); // Shoot Key
//Gravedad y salto.
if(place_meeting(x,y+1,obj_wall)){
    vsp = 0;
    grounded = true;
    if(jkey){
        vsp = -jumpspd;
    }
} else {  // Y si no toca el suelo
    sprite_index = spr_player_jump;
    grounded = false;
    if(vsp < 10){
        vsp += grav;
    }
}
//Movimientos horizontales
if(rkey){
    image_xscale = 1;
    if(hsp < movespd){
        hsp ++;
    }
}
if(lkey){
    image_xscale = -1
    if(hsp > -movespd){
        hsp --;
    }
}
//Si no toco ningun movimiento hor.
if(!lkey && !rkey){
    if(hsp > 0){
        hsp --;
    } else if(hsp < 0){
        hsp ++;
    }
}
//Colisiones Horizontales
if(place_meeting(x+hsp,y,obj_wall)){
    while(!place_meeting(x+sign(hsp),y,obj_wall)){
        x += sign(hsp);
    }
    hsp = 0;
}
x += hsp;
//Colisiones Verticales
if(place_meeting(x,y+vsp,obj_wall)){
    while(!place_meeting(x,y+sign(vsp),obj_wall)){
        y += sign(vsp);
    }
    vsp = 0;
}
y += vsp
35
Cita de: penumbra en Abril 16, 2015, 05:47:46 AM
Se me hace difícil pensar que el problema tenga que ver con el código de movimiento. Creo que las dos causas más probables serían:

a) Una mala elección del tamaño del viewport (o un factor de escalado no adecuado para la application surface)

b) Efecto tearing, contra el cual, he visto que hay muchas sugerencias, y por mi experiencia, ninguna de las que he probado lo elimina al 100%.

Mmm, que es el efecto tearing? yo en global game setting quite eso del Interpolate Between pixels, y como que mala eleccion?

el viewport es de 480x280
36
los sprites de el jugador son de 31x27, cuando salto mi sprite de salto y me muevo a algun lado se pone borroso como si tuviera un mini anti-alias y no quiero que pase eso, utilizo además una view, pero no enfoca directamente al player si no a un objeto camara y el objeto camara sigue al jugador con lerp, pero no creo que sea el problema.

info del jugador

create

hsp = 0;
vsp = 0;
movespd = 3;
jumpspd = 6;
grav = 0.3;
grounded = false;
jump_movespd = movespd/2;


step///Player Logic
//Platform Base Script
//Variables
var rkey = keyboard_check(vk_right); // Right Key
var lkey = keyboard_check(vk_left); // Left Key
var jkey = keyboard_check(vk_up); //Jump Key
var skey = keyboard_check(ord("Z")); // Shoot Key
//Gravedad y salto.
if(place_meeting(x,y+1,obj_wall)){
    vsp = 0;
    grounded = true;
    if(jkey){
        vsp = -jumpspd;
    }
} else {  // Y si no toca el suelo
    sprite_index = spr_player_jump;
    grounded = false;
    if(vsp < 10){
        vsp += grav;
    }
}
//Movimientos horizontales
if(rkey && grounded){
    image_xscale = 1;
    hsp = movespd;
} else if(rkey && !grounded){
    image_xscale = 1;
    hsp = jump_movespd;
}
if(lkey && grounded){
    image_xscale = -1
    hsp = -movespd;
} else if(lkey && !grounded){
    image_xscale = -1;
    hsp = -jump_movespd;
}
//Si no toco ningun movimiento hor.
if(!lkey && !rkey){
    hsp = 0;
}
//Colisiones Horizontales
if(place_meeting(x+hsp,y,obj_wall)){
    while(!place_meeting(x+sign(hsp),y,obj_wall)){
        x += sign(hsp);
    }
    hsp = 0;
}
x += hsp;
//Colisiones Verticales
if(place_meeting(x,y+vsp,obj_wall)){
    while(!place_meeting(x,y+sign(vsp),obj_wall)){
        y += sign(vsp);
    }
    vsp = 0;
}
y += vsp

//Animaciones.
if(grounded && rkey || grounded && lkey){
    sprite_index = spr_player_run;
    image_speed = img_spd;
} else if(grounded) {
    sprite_index = spr_player_idle;
}


si me podrian ayudar les agradeceria muchisimo!!
37
Cita de: NiuWeb en Abril 16, 2015, 04:11:04 AM
Hola amigos,
veran, lo que necesito es hacer un juego o mas bien una room que siempre este moviendose y genere objetos en ella, tipo Flappy Birds o algo asi, pero con muros, es decir que genere paredes y muros de la misma manera como con los tubos del Flappy birds.

Agradeceria su ayuda

yo lo que hago es utilizar un objeto como spawner y que en cada alarma vaya spawneando como esto

create
alarm[0] = 100

alarm 0
alarm[0] = 60

yy = irandom_range(rango1,rango2)
instance_create(room_width+128//Depende del largo del sprite,yy,obj_plataforma)


ahi te puedes dar una idea.
38
hice unos sprites 12x14 en GIMP y los redimensione en el GM, ajuste las colisiones y cuando lo pongo no aparece.

39
Preguntas y respuestas / Movimientos tipo dextris
Abril 14, 2015, 08:29:14 PM
hay un juego en android llamado DEXTRIS, el caso es que quiero hacer los movimientos como eso pero usando las flechas y con un solo personaje y quiero se cuando apriete arriba suba hasta una posicion pero no tener que copiar las coordenadas si no de alguna variable que lo marque, y cuando ya sea tal cantidad que pare y cuando suelte la tecla desde arriba o abajo va a ir otra vez a su posicion Y inicial.
40
Preguntas y respuestas / Que pasa con el vspeed?
Abril 14, 2015, 05:16:59 AM
Hola, intento hacer algo muy simple con el vspeed y no entiendo por que no me funciona...


if(keyboard_check(vk_down)){
    vspeed = 5;
} else vspeed = 0
if(keyboard_check(vk_up)){
    vspeed = -5;
} else vspeed = 0;


he hecho este codigo mil veces y nunca me ha dado este error.
41
Preguntas y respuestas / Hacer fonts con imagenes
Abril 12, 2015, 07:18:18 PM
he visto de que en gamemaker se pueden hacer fonts con imagenes pero no se como, o si seria mejor utilizar un programa externo para hacerlos ¿? ???
42
Cita de: Marron121 en Abril 11, 2015, 02:51:00 PM
Cita de: arcangelcaos en Abril 11, 2015, 02:44:54 PM
corregido

Quita las comillas, porque si lo pones entre comillas, es como si fuera un texto, no un objeto o variable.

Ahh  y no es  + -15,  directamente -15
Ahhhh amigo :P Vale, mi memoria me ha fallado muy bastamente  :'(
Cita de: arcangelcaos en Abril 11, 2015, 02:44:54 PM
Ahh, y 60 * 1  = 60, porque pones eso?????
Es la costumbre,la verdad. En códigos anteriores, ponía 30*3 y cosas así, y se me ha quedado la manera de hacerlo así :-[

Muchas gracias por responder tan rápidamente! Doy este post por solucionado  ;D

Edit: He puesto el código y me sigue dando error. Incluso he puesto solo la primera acción de crear la instancia y sigue dando error ???. ¿Que tengo mal puesto? :'(

El codigo deberia de ser así

if dir=1 and disparo = 1;
//Disparo activo y en dirección derecha
{
instance_create(obj_Ingeniero.x+15,obj_Ingeniero.y+5,obj_Bala_der)
//Crea la bala en la dirección de la derecha
disparo = 0;
alarm[0] = 1 * room_speed;
//Resetea el disparo a 1 segundo
}
if dir= 0 and disparo = 1;
//Disparo activo y en dirección izquierda
{
instance_create(obj_Ingeniero.x-15,obj_Ingeniero.y+5,obj_Bala_izq)
disparo = 0;
alarm[0] = 1 * room_speed // seria 1 segundo dependiendo de la velocidad de la room;
}


Tus errores fueron:

- En las coordenadas tenias +-15 es -15

- poniendo "" a objetos, obviamente no serviria ya que estas haciendo una cadena de texto y no nombrando al objeto ni una variable.

espero que te haya funcionado, ah para acortar el codigo y trabajo seria mucho mejor utilizando image_xscale o image_yscale para girar horizontal o verticalmente los sprites y no tener que hacer 2 objetos y 2 sprites
43
Cita de: jaimitoes en Abril 06, 2015, 11:02:48 AM
Tienes la respuesta en el post que te conteste ayer, creas un obj cámara y a esa cámara le aplicas la función lerp que siga a tu player. Es una forma rápida y queda muy bien.

X = lerp(x,obj_player.x,0.1);
Y =lerp(y,obj_player.y,0.1);\\puedes variar el ultimo argumento y ponerle un valor mas bajo si quieres que te siga mas lentamente

haciendo un lado el tema, para que funciona la funcion lerp??¿?
44
Preguntas y respuestas / Re:Por que pasa esto¿?
Abril 11, 2015, 04:14:48 AM
Cita de: ocarina en Abril 10, 2015, 12:43:14 AM
Sencillo si aprietas A el resultado seria 1-0=1 entonces el personaje se mueve a la derecha porque sería como poner x+=1
Si se aprieta D el resultado seria 0-1=-1 entonces va hacia la izquierda sería lo mismo q x+=-1 y se aprietas A y D juntas el resultado seria 1-1=0 entonces el personaje no se mueve a ningún lado
Asi lo mismo para el eje y
Saludos

Ah entonces si sigue la regla de los numeros en Z, gracias!!
45
Ya encontre una de hspeed y vspeed pero no encuentro colisiones XY :/