S
skadoodlefap
Guest
Hey everyone, I'm currently working on a small project in the GMS 2 trial version and I've run into a problem. I am trying to make my player aim an object around him while he's moving with the left stick on the controller, but you can also switch to the left stick for precise aiming. The thing is, I want to be able to use the left stick while moving the right stick but the right stick seems to have priority in deciding the aim. Here is my code:
var controllerhr = gamepad_axis_value(0,gp_axisrh)
var controllervr = gamepad_axis_value(0,gp_axisrv)
var controllerh = gamepad_axis_value(0,gp_axislh)
var controllerv = gamepad_axis_value(0,gp_axislv)
if oPlayer.controller == 1{
if abs(controllerhr) > 0.2 or abs(controllervr) > 0.2{
controllerangle = point_direction(0,0,controllerhr,controllervr)
}
if gamepad_button_check_pressed(0,gp_face3) or gamepad_button_check_pressed(0,gp_shoulderrb) and firingdelay < 0 and ammo > 0{
firingdelay = 4;
ammo -= 1;
oPlayer.hsp-= lengthdir_x(playerrecoil,image_angle);
oPlayer.vsp-= lengthdir_y(playerrecoil,image_angle);
with instance_create_layer(x,y,"Kunai",oKunai){
speed = 15;
direction = other.image_angle;
image_angle = direction;
}
image_angle = controllerangle
}
}
if oPlayer.controller==1 and inuse==0{
if abs(controllerh) > 0.2 or abs(controllerv) > 0.2{
controllerangle = point_direction(0,0,controllerh,controllerv)
}
image_angle = controllerangle
}
var controllerhr = gamepad_axis_value(0,gp_axisrh)
var controllervr = gamepad_axis_value(0,gp_axisrv)
var controllerh = gamepad_axis_value(0,gp_axislh)
var controllerv = gamepad_axis_value(0,gp_axislv)
if oPlayer.controller == 1{
if abs(controllerhr) > 0.2 or abs(controllervr) > 0.2{
controllerangle = point_direction(0,0,controllerhr,controllervr)
}
if gamepad_button_check_pressed(0,gp_face3) or gamepad_button_check_pressed(0,gp_shoulderrb) and firingdelay < 0 and ammo > 0{
firingdelay = 4;
ammo -= 1;
oPlayer.hsp-= lengthdir_x(playerrecoil,image_angle);
oPlayer.vsp-= lengthdir_y(playerrecoil,image_angle);
with instance_create_layer(x,y,"Kunai",oKunai){
speed = 15;
direction = other.image_angle;
image_angle = direction;
}
image_angle = controllerangle
}
}
if oPlayer.controller==1 and inuse==0{
if abs(controllerh) > 0.2 or abs(controllerv) > 0.2{
controllerangle = point_direction(0,0,controllerh,controllerv)
}
image_angle = controllerangle
}