Noviembre 07, 2018, 06:23:45 PM Ultima modificación: Noviembre 11, 2018, 08:33:58 PM por kostra
Hola tengo un problema, existe el joystick_check_button() pero no veo ni un solo release T_T ojalá alguien sepa decirme una alternativa ni que sea con variables y alarms... Trato de colocar un objeto justo al dejar de apretar los botones L1 y R1, he probado poniendo !joystick_checo_button() pero como esta todo encerrado en otro botón que tiene que estar pulsándose, pues me crea un montón de objetos superpuestos :(

Graciasss
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Antes de continuar, necesitaria saber de que version de game maker hablamos, ya que para lograr lo que necesitas, las versiones de game maker 8.1 para atras tienen una forma muy diferente a las versiones studio.

Disculpa se me olvidó xd
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

UP.  Aun no solucione este problema que me perseguira en cada proyecto con joystick que haga, no entiendo por que no existe una funcion tan esencial :S
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

#4 Noviembre 11, 2018, 03:33:52 PM Ultima modificación: Noviembre 11, 2018, 06:25:52 PM por Markus
Lo siento, pero sólo lo puedes solucionar con variables. Puedes usar un arreglo:
[gml]
///Create
for (var i = 1; i <= 2; i++) //2 devices
{
  for (var j = 1; j <= 32; j++) //32 buttons
  {
    global.joy_pressed[i, j] = false;
    global.joy_press[i, j] = false;
    global.joy_releassed[i, j] = false;
  }
}
[/gml]

[gml]
///Begin Step
for (var i = 1; i <= 2; i++) //2 devices
{
  for (var j = 1; j <= 32; j++) //32 buttons
  {
    if (joystick_check_button(i, j))
    {
      if (!global.joy_press[i, j])
      {
        global.joy_pressed[i, j] = true;
        global.joy_press[i, j] = true;
      }
      else
        global.joy_pressed[i, j] = false;
    }
    else
    {
      if (global.joy_press[i, j])
      {
        global.joy_releassed[i, j] = true;
        global.joy_press[i, j] = false;
      }
      else
        global.joy_releassed[i, j] = false;
    }
  }
}
[/gml]
Luego, para usarlas:
[gml]
///Step
if (global.joy_releassed[1, 3]) //device 1 y button 3
{
  instance_create(x, y, obj_bala); //o lo que sea
}
[/gml]
Vota nuestro proyecto en Steam Greenlight:

Estudios Naicura Ltda

#5 Noviembre 11, 2018, 04:24:52 PM Ultima modificación: Noviembre 11, 2018, 05:17:45 PM por kostra
Si si tranquilo es justo como lo esperaba pero ando algo colapsado xd, yo soy muy de scripts, me lo apaño de facil uso con argumentos y me lo guardo en mi super carpeta de scripts para futuros usos :D

Dos preguntas, en tu codigo pusiste ademas del check_released, el check y el check_pressed, o me lo parece a mi?
Me puedes ayudar con los ids de los botones?? Uso el control tipo ps2 con 2 joysticks y no se cual es ninguno xd

Espero respuesta, mientras voy apañando esto muchas gracias markus :D

EDITO: Que se supone que va en numb???
EDITO2: He probado poniendo una id en "numb" y el mismo en el id del step, he probado con varios ids (1,2,3 y 15) y no me funca
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Cita de: kostra en Noviembre 11, 2018, 04:24:52 PM
Dos preguntas, en tu codigo pusiste ademas del check_released, el check y el check_pressed, o me lo parece a mi?
Sí, aproveché para poner en realidad los 3 eventos: releassed, check y pressed.

Cita de: kostra en Noviembre 11, 2018, 04:24:52 PM
EDITO: Que se supone que va en numb???
EDITO2: He probado poniendo una id en "numb" y el mismo en el id del step, he probado con varios ids (1,2,3 y 15) y no me funca
Ahí corregí el comentario, era i, j en vez de id, numb.
Vota nuestro proyecto en Steam Greenlight:

Estudios Naicura Ltda

Buah me ha costado mucho arreglar el estropicio que he intentado hacer pero ya esta, inclido mejoraste mi script anterior xd

Lo tengo incluso los ids, del 1 al 10 (suficientes), gracias!!
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]