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

31
Preguntas y respuestas / Por que este codigo me da error?
Diciembre 17, 2015, 07:46:02 PM
HOLC CGM  ;D

estoy pasando mi juego a gml y en el event PRESS A tengo

if dir = 0;
{
    instance_create(6,3,obj_shoot){
        speed = 10
        direction = 0
    }
}
if dir = 1;
{
    instance_create(6,3,obj_shoot){
        speed = 10
        direction = 180
    }
}

pero a la hora de abrir el juego me sale el cuadrito "compile errors" en blanco y se que es el codigo porque cuando lo quito el juego arranca
32
Preguntas y respuestas / Re:Codigo sonido al saltar
Diciembre 07, 2015, 06:47:53 PM
Cita de: romon_28 en Diciembre 07, 2015, 05:55:57 PM
ponelo acá:

if (key_jump) && (place_meeting(x+1,y,obj_wall) || place_meeting(x-1,y,obj_wall))
{
    vsp = -jumpspeed;
   audio_play_sound(snd_jump, 1, false); //Sonido al saltar
}

ese solo hace que se reprodusca en los wall jump, a la final me puse a pensar un poquito y lo resolvi  :-[

//sonido al saltar

if (key_jump) && (place_meeting(x,y+1,obj_wall))
{
    audio_play_sound(snd_jump, 1, false);
}

// y para los wall jump como me has dicho tu


if (key_jump) && (place_meeting(x+1,y,obj_wall) || place_meeting(x-1,y,obj_wall))
{
    vsp = -jumpspeed;
    audio_play_sound(snd_jump, 1, false);
}
33
Hola comunidad ;) le estoy introduciendo la parte de sfx a mi juego, peeeeero resulta que tengo un problemita con el codigo de reproducir sonido al saltar

en el step de mi tengo:
// mover
key_right = keyboard_check(vk_right);
key_left = -keyboard_check(vk_left);
key_jump = keyboard_check_pressed(vk_up);

//accion << con estos codigos me muevo, salto, y hago wall jump
move = key_left + key_right;
hsp = move * movespeed;
if (vsp < 10) vsp += grav;

if (place_meeting(x,y+1, obj_wall))
{
    vsp = key_jump * -jumpspeed
}

if (key_jump) && (place_meeting(x+1,y,obj_wall) || place_meeting(x-1,y,obj_wall))
{
    vsp = -jumpspeed;
}

------------------------------------------

asi que he intentado meter sonido al apretar mi key_jump asi
//sonido
if (key_jump)
{
    audio_play_sound(snd_jump, 1, false);
}

y funciona! pero me reproduce el sonido cada vez que pulso para saltar, y no se como especificar que si estoy en el aire no haga nada, y ya intente con
if (key_jump)
{
    if (audio_is_playing(snd_jump))
    exit;
}
else
{
    audio_play_sound(snd_jump, 1, false);
}

pero supongo que esta todo malo porque no me sirve
34
Preguntas y respuestas / Re:Cambiar gravedad
Diciembre 05, 2015, 02:40:53 AM
Cita de: jmbs19 en Diciembre 05, 2015, 02:04:08 AM
si copiaste y pegaste el codigo fue un error mio, ya lo edite, habia puesto image_yscala en vez de image_yscale.

sin embargo no entiendo esto
Cita de: anonimo16 en Diciembre 05, 2015, 01:26:38 AM
con lo de image_scale me da error en "case = -1:" me sale en rojo esa linea
In object obj_player, event Step, action 1 at line 56: Symbol { expected.
pusiste "case =-1:"?

el case no es una igualdad o variable, es una funcion basica de programacion que trabaja conjuntamente con el switch, la manera correcta de escribira es "case -1:" y esto tendria que terminarse con un break; en cada case.
recuerda:

switch (<variable>)
case <valor de variable 1>:
{<accion 1>};
break;
case <valor de variable 2>:
{<accion 2>};
break;
case <valor de variable n>:
{<accion n>};
break;


mira :s

35
Preguntas y respuestas / Re:Cambiar gravedad
Diciembre 05, 2015, 01:26:38 AM
Gracias y disculpa, si se soluciono lo de la gravedad ahorita le pongo (solucionado) al tema, y con lo de image_scale me da error en "case = -1:" me sale en rojo esa linea
In object obj_player, event Step, action 1 at line 56: Symbol { expected.
36
Preguntas y respuestas / Re:Cambiar gravedad
Diciembre 04, 2015, 11:43:41 PM
y para voltear el sprite? seria con
if !move=0 image_yscale = move; ???
37
Preguntas y respuestas / Re:Cambiar gravedad
Diciembre 04, 2015, 08:04:52 PM
Cita de: jmbs19 en Diciembre 04, 2015, 07:39:00 PM
Cita de: anonimo16 en Diciembre 04, 2015, 06:41:10 PM
HOLA CGM ;D Anteriormente inicie nuevo tema y gracias a lo que me respondieron me fui guiando y casi lo tengo  :-\ este es el cod que va en el event step de mi pj
Citar//cambiar grav
if keyboard_check_pressed( vk_space ) grav*= -1;{
    if place_meeting(x,y+1,obj_wall){
        if place_free(x,y-1){
            y-=4;
            }
        }
    vsp = clamp( vsp, -10, 10 );
}

y funciona como quiero peeeeero, pasa que cuando estoy en el suelo(obj_wall) salta como loco 4px x,x como hago para que no salte asi? y solo se jale hacia arriba cuando presione space

tu problema es que esto:
[gml]
{
        if place_meeting(x,y+1,obj_wall){
            if place_free(x,y-1){
                y-=4;
                }
            }
        vsp = clamp( vsp, -10, 10 );
    }
[/gml]

se esta ejecutando siempre, viendo tu codigo intentaste meter eso dentro de una llave seguido a la condicional de la gravedad, sin embargo esta llave no se ejecutara solo cuando se cumpla, porque eso ya especificaste lo que se cumpliria

[gml]
    //cambiar grav
    if keyboard_check_pressed( vk_space )
    grav*= -1;//lo separe para que vieras mejor, a esto me refiero, lo que sucede cuando se cumpla la condicion es esto
    {//no esto, esto es un bloque de codigo que se ejecuta a cada paso
        if place_meeting(x,y+1,obj_wall){
            if place_free(x,y-1){
                y-=4;
                }
            }
        vsp = clamp( vsp, -10, 10 );
    }
[/gml]

ahora que entiendes tu error aqui esta la solicion para evitar los "brincos":

[gml]
    //cambiar grav
    if keyboard_check_pressed( vk_space )
    grav*= -1;
     if gav = -270//imagino que multiplicas 270 por -1, otra cosa, esto es suponiendo que tienes un codigo que vuelve a 270 positivo otra vez, en caso contrario no dara esos brincos hasta la primera vez que cambies la gravedad, luego dara esos brincos otra vez
    {
        if place_meeting(x,y+1,obj_wall){
            if place_free(x,y-1){
                y-=4;
                }
            }
        vsp = clamp( vsp, -10, 10 );
    }



[/gml]

me funciono, pero al apretar space no me jala al jugador hacia arriba:s tengo que saltar para que se note que la gravedad cambio
38
Preguntas y respuestas / (solucionado) Cambiar gravedad
Diciembre 04, 2015, 06:41:10 PM
 HOLA CGM ;D Anteriormente inicie nuevo tema y gracias a lo que me respondieron me fui guiando y casi lo tengo  :-\ este es el cod que va en el event step de mi pj
Citar//cambiar grav
if keyboard_check_pressed( vk_space ) grav*= -1;{
    if place_meeting(x,y+1,obj_wall){
        if place_free(x,y-1){
            y-=4;
            }
        }
    vsp = clamp( vsp, -10, 10 );
}

y funciona como quiero peeeeero, pasa que cuando estoy en el suelo(obj_wall) salta como loco 4px x,x como hago para que no salte asi? y solo se jale hacia arriba cuando presione space
39
Cita de: penumbra en Diciembre 03, 2015, 02:25:03 AM
Tienes que agregar código en step para revisar que encima del personaje no hay nada con lo que pueda colisionar (pared, por ejemplo), y si es así, hacerlo que suba. cambiando su coordenada Y.

no se de gml asi que no se hacer a lo que te refieres :s seria con

If place_meeting dios que me vuelvo un ocho con esto  ???
40
Cita de: Clamud en Diciembre 03, 2015, 01:55:34 AM
Sólo tienes que cambiar el signo de la variable grav, y cambiar la forma de limitar la velocidad:
[gml]
if keyboard_check_pressed( vk_space ) grav *= -1;
vsp = clamp( vsp, -10, 10 );
[/gml]

Si quieres que todo el juego se voltee, va a ser bastante complicado.

Funciona perfecto, solo un detalle, quiero que cuando la cambie me jale el personaje hacia arriba, osea si estoy en el suelo "obj_block" tengo que saltar para que se note qeu cambio la gravedad y que el sprite cambie osea se voltee  :(
41
Hola comunidad ;) estoy desarrollando un juego de plataformas y es la primera vez que toco el tema de GML y la verdad es que no soy ningun experto, y gracias a los videos de Shaun Spalding he aprendido algo, pero quiero que al apretar la tecla espacio la gravedad cambie, mi grav normal es hacia abajo osea 270º y quiero que cambia hacia arriba osea 90º el codigo en el event step que uso es el de el, que es el siguiente:

................................................................
[gml]
// Mover
key_right = keyboard_check(vk_right);
key_left = -keyboard_check(vk_left);
key_jump = keyboard_check_pressed(vk_up);

//accion
move = key_left + key_right;
hsp = move * movespeed;
if (vsp < 10) vsp += grav;

if (place_meeting(x,y+1, obj_wall))
{
    vsp = key_jump * -jumpspeed
}

//colision horizontal
if (place_meeting(x+hsp,y,obj_wall))

{
    while(!place_meeting(x+sign(hsp),y,obj_wall))
    {
        x += sign(hsp);
    }
    hsp = 0;
}
x += hsp;

//colision vertical
if (place_meeting(x,y+vsp,obj_wall))
{
    while(!place_meeting(x,y+sign(vsp),obj_wall))
    {
        y += sign(vsp);
    }
    vsp = 0;

}
y += vsp;

//animacion
if (move!=0) image_xscale = move;
if (place_meeting(x,y+1,obj_wall))
{
    if (move!=0) sprite_index = spr_playerWR; else sprite_index = spr_playerR
}
else
{
    if (vsp < 0) sprite_index = spr_playerJ; else sprite_index = spr_playerR;
}
[/gml]
...
intente hacerlo por mi cuenta con unos script que vi en el foro de yoyogames pero es dificil si yo ya me baso en otro gml o al menos a mi se me hace dificil  :'(