amigos Makeros quien me da una mano con esto
resulta que estoy haciendo un jugo de naves

esto solo me cambia el sprite sin mas nada
with (obj_player)
{
sprite_index = spr_nave_power_up
alarm [1]=90;
}

instance_destroy();

esto funciona bien pero lo que quiero es llamar un obj ya que hay he puesto lo que tiene que hacer

quiero llamar a la obj_nave_power_up  que tiene balas mas grandes pero lo he probado de varias maneras y nada no me da el "'coco"'

Parece que necesitas usar la función instance_change.


with (obj_player)
{
instance_change(obj_nave_power_up,1);
alarm [1]=160;
}

instance_destroy();


probe de esta manera y al principio cambia esta bien el problema es que cuando se destruye la nave aparece la otra y queda la de power up tambien .

la nave tiene 3 vidas

Cuando tu nave es destruida que codigo tienes?
Podrias utilizar en el evento destroy (la papelera) de la nave cree la nave comun en vez de la mejorada.....

EDIT: Al ver tu ultimo mensaje me confundi...... Que codigo tienes para el respawn o.O (Quizas esta mal escrito....) El problema es la manera en la que "programaste" la muerte/reaparicion tienes que leer bien el codigo y conseguiras el error..... (Es facil, echale un ojo....)

la verdad no se que cual sera el problema.

pbj_player en la alarma 1 tengo que se destruya la nave power up.

Me referia a esto

Cita de: eams1986 en Mayo 22, 2014, 04:12:42 AMprobe de esta manera y al principio cambia esta bien el problema es que cuando se destruye la nave aparece la otra y queda la de power up tambien .

Que codigo tienes para que aparezca la nave? Yo que tu rehago el codigo por que esto es muy raro xDD


Creo que ahora entiendo mejor lo que quieres hacer. Al conseguir el power-up la nave cambia de sprite y dispara balas más grandes, pero el efecto es momentáneo y cuando el contador de la alarma llega a cero la nave regresa a la normalidad.

Yo usaría un objeto en vez de dos:

  • Al obtener el power-up
[gml]
powerup = true; //ésta variable indica qué tipo de bala disparar
sprite_index = spr_nave_power_up;
alarm[1] = numero;
[/gml]
  • Cuando se activa la alarma
[gml]
powerup = false;
sprite_index = spr_nave;
[/gml]
[/list]

¿Qué opinas?

    Cita de: Clamud en Mayo 22, 2014, 07:36:10 AM
    Creo que ahora entiendo mejor lo que quieres hacer. Al conseguir el power-up la nave cambia de sprite y dispara balas más grandes, pero el efecto es momentáneo y cuando el contador de la alarma llega a cero la nave regresa a la normalidad.

    Yo usaría un objeto en vez de dos:

    • Al obtener el power-up
    [gml]
    powerup = true; //ésta variable indica qué tipo de bala disparar
    sprite_index = spr_nave_power_up;
    alarm[1] = numero;
    [/gml]
    • Cuando se activa la alarma
    [gml]
    powerup = false;
    sprite_index = spr_nave;
    [/gml]
    [/list]

    ¿Qué opinas?

    Asi es mas eficiente, al usar variables locales simplemente volverian a 0 al morir..... Y para hacer otros tipos de power ups seria el mismo proceso :D (Aunque sospecho que es algo novato......)

    //collision con el player

    with (obj_player)
    {
    powerup = true; //ésta variable indica qué tipo de bala disparar
    sprite_index = spr_nave_power_up;
    alarm[1] =160;
    }
    instance_destroy();

    //Collision Alarm 1  tengo 
    instance_destroy   self  con obj_nave_power up (no me lo se en gml ) si alguien me lo dice gracias
    powerup = false;
    sprite_index = spr_player;

    esto funcina bien cambia de sprite a nave power up  y al tiempo se destruye pero no me lanza las balas grandes .

    muchas gracias Makeros

    eams pon lo que tienes en el evento donde creas la bala!!!
    PURA VIDA



    #12 Mayo 24, 2014, 12:27:33 PM Ultima modificación: Mayo 24, 2014, 12:29:22 PM por elviskelley

    [b]TU CODIGO[/b]
    //collision con el player

    with (obj_player)
    {
    powerup = true; //ésta variable indica qué tipo de bala disparar
    sprite_index = spr_nave_power_up;
    alarm[1] =160;
    }
    instance_destroy();

    //Collision Alarm 1  tengo
    instance_destroy   self  con obj_nave_power up (no me lo se en gml ) si alguien me lo dice gracias
    powerup = false;
    sprite_index = spr_player;


    with (obj_player)
    {
    powerup = true; //ésta variable indica qué tipo de bala disparar
    sprite_index = spr_nave_power_up;//No va...
    instance_create(x,y,obj_nave_power_up)
    alarm[1] =160;
    }
    with(obj_nave_power_up) {depth=-2}
    instance_destroy();

    Event Alarm 1
    powerup = false;
    with(obj_nave_power_up) {instance_destroy();}


    //A mi parecer no es la forma correcta de hacerlo pues estas usando otras instancia para lograr algo que con una sola podria hacerse.

    Nota: En los nombre de todo: sprites, sounds, backgrounds, objects, etc... No debes dejar espacios.

    Cita de: elviskelley en Mayo 24, 2014, 12:27:33 PM

    [b]TU CODIGO[/b]
    //collision con el player

    with (obj_player)
    {
    powerup = true; //ésta variable indica qué tipo de bala disparar
    sprite_index = spr_nave_power_up;
    alarm[1] =160;
    }
    instance_destroy();

    //Collision Alarm 1  tengo
    instance_destroy   self  con obj_nave_power up (no me lo se en gml ) si alguien me lo dice gracias
    powerup = false;
    sprite_index = spr_player;


    with (obj_player)
    {
    powerup = true; //ésta variable indica qué tipo de bala disparar
    sprite_index = spr_nave_power_up;//No va...
    instance_create(x,y,obj_nave_power_up)
    alarm[1] =160;
    }
    with(obj_nave_power_up) {depth=-2}
    instance_destroy();

    Event Alarm 1
    powerup = false;
    with(obj_nave_power_up) {instance_destroy();}


    //A mi parecer no es la forma correcta de hacerlo pues estas usando otras instancia para lograr algo que con una sola podria hacerse.

    Nota: En los nombre de todo: sprites, sounds, backgrounds, objects, etc... No debes dejar espacios.

    Quien dijo que tenia espacios?.... y lo de utilizar otra instancia dejalo.... cada quien tiene su estilo (Mientras no tenga problemas no hay problemas....)

    como dijo ocarina hace falta el codigo que utilizas para disparar (Ya que puedo darte una manera y por tu nivel no sabrias que hacer :3)

    Veamoslo de una manera simple (Recuerdo haberla escrito o.O)

    if keyboard_check_pressed(vk_spacebar)//Al presionar barra espaciadora >
    {
    if powerup = false
    instance_create(x,y,BALANORMAL)

    if powerup = true
    instance_create(x,y,BALAMEJORADA)
    }


    A simple vista deberia funcionar..... Quizas tengas que modificar un poco el codigo..... (El orden o como esta escrito lo de vk......)

    Bueno, ocarina fue el que me dijo que tenia dos juegos en la play store..... asi que imagino que es pro (Aunque dijo de alguna manera que tu tambien lo eras..... o solo sabias hacer .apk xDD)

    Mantente positivo :*

    if can_shoot=true
    {
    can_shoot=false
    instance_create(x,y,obj_player_bullet)
    alarm[0]=5
    }

    hola a todos esto tengo en disparar