// Sun Feb 28 2021 15:25:48
// Script generated by Visual to GPC
//----------------------------------------
// GTA V P996 LAZER DOGFIGHT MACRO BY strapcrafter78
// HOLD DOWN DPAD AND PRESS R3 TO TURN ON / OFF
// HOLD L1 + R1 THEN PRESS SHARE TO ACTIVATE THE THERMAL GLITCH SO IT CAN BE TURNED ON AND OFF
// HOLD L1 + R1 THEN PRESS OPTIONS TO TURN THERMAL ON/OFF (MUST BE CEO OR MC)
// HOLD L1 + R1 + L2 + R2 THEN TAP TOUCHPAD TO SWITCH TO MODE 2
// WHEN MACRO IS ON BRAKE WONT TURN OFF ENGINE AND TURNS ARE TIGHTER
// ========================================= SETTINGS ====================================================
int brake_setting = 0;
//brake setting 0 is the most powerful
//brake setting 1 is triggerstop brakes
//brake setting 2 is nearly as powerful as 0 but looks natural
//brake setting 3 = standard brakes
int stick_deadzone = 20;
int camera_no_reset = TRUE;
int camera_toggle = TRUE;
int ez_gear = TRUE; //stops you pulling in landing gear too fast
int sensitivity_x = 110; //turn tighter with higher sensitivity
int sensitivity_y = 190;
int trig_old_r2 = 100; //change trigger sensitivity
int trig_new_r2 = 100;
int trig_old_l2 = 100;
int trig_new_l2 = 100;
int swap_l3r3 = FALSE;
int auto_cam_release = TRUE;
//if you are using camera toggle lets go of back cam
//if you start shooting
// ===================================== OPTIONS FOR MODE 2 ==============================================
// to activate mode 2 hold L2, R2, L1, R1 then tap pause
// it can be turned off again by holding down and tapping r3
int mode_2_brake_setting = 2;
int mode_2_camera_reset = TRUE;
int mode_2_camera_toggle = TRUE;
int mode_2_ez_gear = TRUE;
int mode_2_sensitivity_x = 100;
int mode_2_sensitivity_y = 100;
int mode_2_trig_old_r2 = 100;
int mode_2_trig_new_r2 = 100;
int mode_2_trig_old_l2 = 100;
int mode_2_trig_new_l2 = 100;
int mode_2_swap_l3r3 = FALSE;
int mode_2_auto_cam_release = TRUE;
// ===================================== SETTINGS END HERE ===============================================
int brake;
int tcamera;
int toggle;
int gear;
int sensx;
int sensy;
int told;
int tnew;
int trig_math1;
int trig_math2;
int told_l2;
int tnew_l2;
int trig_math1_l2;
int trig_math2_l2;
int result_brake;
int jiggle1;
int jiggle2;
int swapl3r3;
int autocam;
int armed = FALSE;
int camera = TRUE;
int valy;
int valx;
int RX;
init {
set_led(0, 0);
set_led(1, 1);
set_led(2, 0);
set_led(3, 0);
}
main {
//arming and unarming macro
if((get_val(PS4_DOWN)) && (event_press(PS4_R3))) {
if(armed == FALSE) {
armed = TRUE;
combo_run(vibrate2);
set_led(0, 0);
set_led(1, 0);
set_led(2, 1);
set_led(3, 0);
brake = brake_setting;
tcamera = camera_no_reset;
toggle = camera_toggle;
gear = ez_gear;
sensx = sensitivity_x;
sensy = sensitivity_y;
told = trig_old_r2;
tnew = trig_new_r2;
trig_math1 = (tnew * 100) / told;
trig_math2 = ((100 - tnew) * 100) / (100 - told);
told_l2 = trig_old_l2;
tnew_l2 = trig_new_l2;
trig_math1_l2 = (tnew_l2 * 100) / told_l2;
trig_math2_l2 = ((100 - tnew_l2) * 100) / (100 - told_l2);
swapl3r3 = swap_l3r3;
autocam = auto_cam_release;
if (swapl3r3 == TRUE) {
camera = FALSE;
}
} else {
armed = FALSE;
camera = TRUE;
combo_run(vibrate1);
set_led(0, 0);
set_led(1, 1);
set_led(2, 0);
set_led(3, 0);
}
}
if(get_val(PS4_R2) && get_val(PS4_L2) && get_val(PS4_R1) && get_val(PS4_L1) && event_press(PS4_TOUCH)) {
armed = TRUE;
camera = FALSE;
brake = mode_2_brake_setting;
tcamera = mode_2_camera_reset;
toggle = mode_2_camera_toggle;
gear = mode_2_ez_gear;
sensx = mode_2_sensitivity_x;
sensy = mode_2_sensitivity_y;
told = mode_2_trig_old_r2;
tnew = mode_2_trig_new_r2;
trig_math1 = (tnew * 100) / told;
trig_math2 = ((100 - tnew) * 100) / (100 - told);
told_l2 = trig_old_l2;
tnew_l2 = trig_new_l2;
trig_math1_l2 = (tnew_l2 * 100) / told_l2;
trig_math2_l2 = ((100 - tnew_l2) * 100) / (100 - told_l2);
swapl3r3 = mode_2_swap_l3r3;
autocam = mode_2_auto_cam_release;
set_led(0, 0);
set_led(1, 1);
set_led(2, 0);
set_led(3, 1);
combo_run(no_touch);
} else if ((get_val(PS4_L1) && (get_val(PS4_R1))) && (event_press(PS4_OPTIONS))) {
combo_run(thermal);
} if ((get_val(PS4_L1) && (get_val(PS4_R1))) && (event_press(PS4_SHARE))) {
combo_run(turn_on_thermal);
}
//activating and deactivating dogfight mode
if(armed == TRUE) {
if (swapl3r3 == TRUE) {
swap(PS4_L3, PS4_R3);
}
valx = (get_val(PS4_LX) * sensx) / 100;
valy = (get_val(PS4_LY) * sensy) / 100;
if (valx > 100) {
valx = 100;
}
if (valx < -100) {
valx = -100;
}
if (valy > 100) {
valy = 100;
}
if (valy < -100) {
valy = -100;
}
set_val(PS4_LX, valx);
set_val(PS4_LY, valy);
if (get_val(PS4_R2) > told) {
if (((((get_val(PS4_R2) - told) * trig_math2) / 100) + tnew + 1) > 100) {
set_val(PS4_R2, 100);
} else {
set_val(PS4_R2, (((get_val(PS4_R2) - told) * trig_math2) / 100) + tnew + 1);
}
} else {
set_val(PS4_R2, (get_val(PS4_R2) * trig_math1) / 100);
}
if (get_val(PS4_L2) > told_l2) {
if (((((get_val(PS4_L2) - told_l2) * trig_math2_l2) / 100) + tnew_l2 + 1) > 100) {
result_brake = 100;
} else {
result_brake = ((((get_val(PS4_L2) - told_l2) * trig_math2_l2) / 100) + tnew_l2 + 1);
}
} else {
result_brake = ((get_val(PS4_L2) * trig_math1_l2) / 100);
}
set_val(PS4_L2, result_brake);
if (result_brake > 90) {
if (brake == 0) {
combo_run(brake0);
} else if (brake == 1) {
set_val(PS4_L2, 90);
} else if (brake == 2) {
combo_run(brake2);
}
} else if ((get_val(PS4_L2) < 86) && (brake == 0)) {
combo_stop(brake0);
set_val(PS4_L2, result_brake);
} else if ((get_val(PS4_L2) < 86) && (brake == 2)) {
combo_stop(brake2);
set_val(PS4_L2, result_brake);
}
if (result_brake > 90) {
if (brake == 0) {
combo_run(brake0);
} else if (brake == 1) {
set_val(PS4_L2, 90);
} else if (brake == 2) {
combo_run(brake2);
}
} else if ((get_val(PS4_L2) < 86) && (brake == 0)) {
combo_stop(brake0);
set_val(PS4_L2, result_brake);
} else if ((get_val(PS4_L2) < 86) && (brake == 2)) {
combo_stop(brake2);
set_val(PS4_L2, result_brake);
} else {
set_val(PS4_L2, result_brake);
}
if (gear == TRUE) {
if (event_press(PS4_L3)) {
combo_restart(land_gear);
}
}
if (event_press(PS4_R3)) {
camera = !camera
}
if (event_press(PS4_CROSS)) {
camera = FALSE;
}
if ((get_val(PS4_RX) >= stick_deadzone) || (get_val(PS4_RX) <= (stick_deadzone * -1))) {
jiggle1 = TRUE;
}
if ((get_val(PS4_RX) < (stick_deadzone - 3)) && (get_val(PS4_RX) > ((stick_deadzone - 3) * -1))) {
jiggle1 = FALSE;
}
if ((jiggle1 == TRUE) && (get_val(PS4_RX) < stick_deadzone) && (get_val(PS4_RX) > (stick_deadzone * -1))) {
} else if ((camera == FALSE) && (get_val(PS4_RX) < stick_deadzone) && (get_val(PS4_RX) > (stick_deadzone * -1))) {
set_val(PS4_RX, 0);
}
if ((get_val(PS4_RY) >= stick_deadzone) || (get_val(PS4_RY) <= (stick_deadzone * -1))) {
jiggle2 = TRUE;
}
if ((get_val(PS4_RY) < (stick_deadzone - 3)) && (get_val(PS4_RY) > ((stick_deadzone - 3) * -1))) {
jiggle2 = FALSE;
}
if ((jiggle2 == TRUE) && (get_val(PS4_RY) < stick_deadzone) && (get_val(PS4_RY) > (stick_deadzone * -1))) {
} else if ((camera == FALSE) && (get_val(PS4_RY) < stick_deadzone) && (get_val(PS4_RY) > (stick_deadzone * -1))) {
set_val(PS4_RY, 0);
}
if (camera == TRUE || get_val(PS4_R3)) {
if (toggle == TRUE) {
set_val(PS4_R3, 100);
}
if (camera == TRUE) {
if (toggle == TRUE) {
if ((get_val(PS4_RX) < stick_deadzone) && (get_val(PS4_RX) > (stick_deadzone * -1)) && (get_val(PS4_RY) < stick_deadzone) && (get_val(PS4_RY) > (stick_deadzone * -1))) {
combo_run(no_reset);
}
} else if (get_val(PS4_R3)) {
if ((get_val(PS4_RX) < stick_deadzone) && (get_val(PS4_RX) > (stick_deadzone * -1)) && (get_val(PS4_RY) < stick_deadzone) && (get_val(PS4_RY) > (stick_deadzone * -1))) {
combo_run(no_reset);
}
}
}
}
if (camera == FALSE && toggle == TRUE) {
set_val(PS4_R3, 0);
}
}
}
combo brake0 {
set_val(PS4_L2, result_brake);
wait(900);
set_val(PS4_L2, 90);
wait(100);
}
combo brake2 {
set_val(PS4_L2, 100);
wait(840);
set_val(PS4_L2, 68);
wait(110);
set_val(PS4_L2, 100);
wait(650);
set_val(PS4_L2, 49);
wait(140);
set_val(PS4_L2, 100);
wait(790);
set_val(PS4_L2, 58);
wait(120);
}
combo no_reset {
set_val(PS4_RX, 8);
set_val(PS4_RY, 0);
wait(30);
set_val(PS4_RX, -8);
set_val(PS4_RY, 0);
wait(30);
}
combo no_touch {
set_val(PS4_TOUCH, 0);
wait(500);
}
combo land_gear {
set_val(PS4_L3, 100);
wait(100);
set_val(PS4_L3, 0);
wait(100);
set_val(PS4_L3, 100);
wait(100);
set_val(PS4_L3, 0);
wait(150);
set_val(PS4_L3, 100);
wait(150);
}
combo turn_on_thermal {
set_val(PS4_TOUCH, 100);
set_val(PS4_SHARE, 0);
wait(600);
set_val(PS4_TOUCH, 0);
wait(300);
set_val(PS4_CROSS, 100);
wait(100);
set_val(PS4_CROSS, 0);
wait(150);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_CROSS, 100);
wait(100);
set_val(PS4_CROSS, 0);
wait(150);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_CROSS, 100);
wait(100);
set_val(PS4_CROSS, 0);
wait(100);
set_val(PS4_LEFT, 100);
wait(100);
set_val(PS4_LEFT, 0);
wait(100);
set_val(PS4_RIGHT, 100);
wait(100);
set_val(PS4_TOUCH, 100);
set_val(PS4_RIGHT, 0);
wait(600);
}
combo thermal {
set_val(PS4_TOUCH, 100);
set_val(PS4_OPTIONS, 0);
wait(600);
set_val(PS4_TOUCH, 0);
wait(300);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_CROSS, 100);
wait(100);
set_val(PS4_CROSS, 0);
wait(100);
set_val(PS4_DOWN, 100);
wait(100);
set_val(PS4_DOWN, 0);
wait(70);
set_val(PS4_CROSS, 100);
wait(100);
set_val(PS4_CROSS, 0);
wait(200);
set_val(PS4_SQUARE, 100);
wait(120);
set_val(PS4_TOUCH, 100);
set_val(PS4_SQUARE, 0);
wait(600);
}
combo vibrate1 {
set_rumble(RUMBLE_A, 100);
set_val(PS4_R3, 0);
set_val(PS4_L3, 0);
wait(300);
reset_rumble();
}
combo vibrate2 {
set_rumble(RUMBLE_B, 100);
set_val(PS4_R3, 0);
set_val(PS4_L3, 0);
wait(300);
reset_rumble();
}