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

1
Preguntas y respuestas / Ayúdenme con este script
Febrero 27, 2014, 12:32:35 PM
Hola a todo el mundo, después de intentar registrarme 20 veces (con todo lo que te pide el registro) porfin he podido entrar en el foro  XD . Estoy programando un juego con un amigo y para que el jugador se mueva he utilizado un script de joystick:

// Red player uses left joystick
lad=-1
lad=obj_GlobalJoystick.lad

lad=GetDirection(lad)

switch lad
{
    case d_Up:
         {
          if y -5 > 0 {y -=5};break;
         }
    case d_Down:
         {
          if y +5 < room_height {y +=5};break;     
         }
    case d_Left:
         {
          if x -5 > 0 {x -=3} ;break;       
         }
    case d_Right:
         {
          if x +5 < room_width {x +=5} ;break;       
         
         }
}


Os lo resumo un poco, el script hace que cuando muevas el joystick hacia una dirección, se cree el movimiento del personaje (si os fijáis cuando va a la izquierda sigue moviéndose hacia la derecha pero más lento, eso ya es por el juego que quiero hacer no por un error de programación). El script funciona correctamente, pero lo que quiero es hacer que cuando muevas el joystick hacia una dirección que una bala se dispare hacia esa misma dirección (hay dos joysticks, el del lado izquierda de la pantalla y el del lado derecho de la pantalla, el anterior es el del lado izquierdo).

El script que he usado para intentar que dispare dependiendo de la posición del joystick es este:

// Blue player uses right joystick
rad=-1
rad=obj_GlobalJoystick.rad

rad=GetDirection(rad)

switch rad
{
    case d_Up:
         {
          if y -5 > 0 {instance_create(0,5,object6)};break;
         }
    case d_Down:
         {
          if y +5 < room_height {instance_create(0,-5,object6)};break;     
         }
    case d_Left:
         {
          if x -5 > 0 {instance_create(-5,0,object6)} ;break;       
         }
    case d_Right:
         {
          if x +5 < room_width {instance_create(5,0,object6)} ;break;       
         
         }
}


Resumiendo, he añadido este código instance_create(0,5,object6) pero no funciona, lo que quiero es el código de "Create moving instance of object X", el que se usa para disparar. ¿Alguien me puede ayudar? Gracias!!! :)