// GPC Online Library
// destiny.gpc
/* =============================================================================
* Arthur: Baby Cham
* Game: Diablo III & Reaper Of Souls Multi Classes
* System: Playstation 3 & 4
* Controller: Dualshock 4
* Game Settings: Default
* Website: Consoletuner.com
**/
/* -----------------------------------------------------------------------------
* VARIABLES
**/
int LightA = FALSE;
int HeavyA = FALSE;
int Skill1 = FALSE;
int Skill2 = FALSE;
int Skill3 = FALSE;
int Skill4 = FALSE;
int Healing = FALSE;
int R2sens = 100;
int RXsens = 100;
int RYsens = 100;
int LXsens = 100;
int LYsens = 100;
int DbleClick_SQUARE1 = 0;
int DbleClick_SQUARE2 = 0;
int DbleClick_SQUARE3 = 0;
int DbleClick_SQUARE4 = 0;
int DbleClick_SQUARE5 = 0;
int DbleClick_SQUARE6 = 0;
int DbleClick_SQUARE7 = 0;
int Timeout_Melee = 0;
/* -----------------------------------------------------------------------------
* MAIN
**/
main {
// Double click SQUARE to turn on/off LightAttack.
if(DbleClick_SQUARE1 > 0) DbleClick_SQUARE1 = DbleClick_SQUARE1 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE1 <= 0) {
DbleClick_SQUARE1 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE1 > 0) {
LightA = !LightA;
}
if(LightA && !combo_running(HeavyAttack)) {
combo_run(LightAttack);
} else if(combo_running(LightAttack)) {
combo_stop(LightAttack);
reset_leds(); }
// Double click SQUARE to turn on/off HeavyAttack.
if(DbleClick_SQUARE2 > 0) DbleClick_SQUARE2 = DbleClick_SQUARE2 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE2 <= 0) {
DbleClick_SQUARE2 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE2 > 0) {
HeavyA = !HeavyA;
Timeout_Melee = 0;
}
if(HeavyA) {
set_val(TRACE_1, Timeout_Melee);
Timeout_Melee = Timeout_Melee + get_rtime();
if(Timeout_Melee <= 3000) combo_run(Heal2);
else combo_run(HeavyAttack);
} else if(combo_running(Heal2)) {
combo_stop(Heal2); }
// Double click SQUARE to turn on/off SquareAttack.
if(DbleClick_SQUARE3 > 0) DbleClick_SQUARE3 = DbleClick_SQUARE3 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE3 <= 0) {
DbleClick_SQUARE3 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE3 > 0) {
Skill1 = !Skill1;
}
if(Skill1 && !combo_running(HeavyAttack)) {
combo_run(SquareAttack);
} else if(combo_running(SquareAttack)) {
combo_stop(SquareAttack); }
// Double click SQUARE to turn on/off TriangleAttack.
if(DbleClick_SQUARE4 > 0) DbleClick_SQUARE4 = DbleClick_SQUARE4 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE4 <= 0) {
DbleClick_SQUARE4 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE4 > 0) {
Skill2 = !Skill2;
}
if(Skill2 && !combo_running(HeavyAttack)) {
combo_run(TriangleAttack);
} else if(combo_running(TriangleAttack)) {
combo_stop(TriangleAttack); }
// Double click SQUARE to turn on/off CircleAttack.
if(DbleClick_SQUARE5 > 0) DbleClick_SQUARE5 = DbleClick_SQUARE5 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE5 <= 0) {
DbleClick_SQUARE5 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE5 > 0) {
Skill3 = !Skill3;
}
if(Skill3 && !combo_running(HeavyAttack)) {
combo_run(CircleAttack);
} else if(combo_running(CircleAttack)) {
combo_stop(CircleAttack); }
// Double click SQUARE to turn on/off R1Attack.
if(DbleClick_SQUARE6 > 0) DbleClick_SQUARE6 = DbleClick_SQUARE6 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE6 <= 0) {
DbleClick_SQUARE6 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE6 > 0) {
Skill4 = !Skill4;
}
if(Skill4 && !combo_running(HeavyAttack)) {
combo_run(R1Attack);
} else if(combo_running(R1Attack)) {
combo_stop(R1Attack); }
// Double click SQUARE to turn on/off Heal.
if(DbleClick_SQUARE7 > 0) DbleClick_SQUARE7 = DbleClick_SQUARE7 - get_rtime();
if(event_press(PS4_SQUARE) && DbleClick_SQUARE7 <= 0) {
DbleClick_SQUARE7 = 300; }
else if(event_press(PS4_SQUARE) && DbleClick_SQUARE7 > 0) {
Healing = !Healing;
}
if(Healing) {
combo_run(Heal);
} else if(combo_running(Heal)) {
combo_stop(Heal); }
// Sensitivity increased on R2 & analog sticks.
sensitivity(PS4_R2, NOT_USE, 100 + R2sens);
sensitivity(PS4_RX, NOT_USE, 100 + RXsens);
sensitivity(PS4_RY, NOT_USE, 100 + RYsens);
sensitivity(PS4_LX, NOT_USE, 100 + LXsens);
sensitivity(PS4_LY, NOT_USE, 100 + LYsens);
// Rapid fire on CROSS & CIRCLE buttons.
if(get_val(PS4_CROSS)) combo_run(RapidFire_CROSS);
if(get_val(PS4_CIRCLE)) combo_run(RapidFire_CIRCLE);
//Rumble & led indicator for battery power less than 20%.
if(get_battery() < 2) { set_rumble(RUMBLE_B, 100); }
if(get_battery() < 2) if(!get_ledx()) set_ledx(LED_3, 10);
// Push right stick in any direction for easy dodge/roll.
if(abs(get_val(PS4_RX)) >= 5 || abs(get_val(PS4_RY)) >= 5) {
combo_run(RightAnalogRapidfire); }
}
/* -----------------------------------------------------------------------------
* COMBOS
**/
combo LightAttack {
set_val(PS4_CROSS, 100);
set_val(PS4_L2, 100);
set_val(PS4_R3, 100);
set_led(LED_2, 2);
wait(40);
set_val(PS4_CROSS, 0);
set_val(PS4_L2, 100);
set_val(PS4_R3, 100);
set_led(LED_2, 0);
wait(20);
set_val(PS4_CROSS, 0);
set_val(PS4_L2, 100);
set_val(PS4_R3, 100);
set_led(LED_2, 0);
}
combo HeavyAttack {
set_val(PS4_R2, 100);
set_val(PS4_L2, 100);
wait(1300);
set_val(PS4_R2, 0);
set_val(PS4_L2, 100);
Timeout_Melee = 0;
}
combo SquareAttack {
set_val(PS4_SQUARE, 100);
wait(3000);
set_val(PS4_SQUARE, 0);
wait(2800);
set_val(PS4_SQUARE, 0);
}
combo TriangleAttack {
set_val(PS4_TRIANGLE, 100);
wait(4000);
set_val(PS4_TRIANGLE, 0);
wait(3800);
set_val(PS4_TRIANGLE, 0);
}
combo CircleAttack {
wait(2000);
set_val(PS4_CIRCLE, 100);
wait(100);
set_val(PS4_CIRCLE, 0);
wait(10);
set_val(PS4_CIRCLE, 0);
}
combo R1Attack {
set_val(PS4_R1, 100);
wait(40);
set_val(PS4_R1, 0);
wait(20);
set_val(PS4_R1, 0);
}
combo Heal {
set_val(PS4_L1, 100);
wait(100);
set_val(PS4_L1, 0);
wait(80);
set_val(PS4_L1, 0);
}
combo Heal2 {
set_val(PS4_L1, 100);
wait(80);
set_val(PS4_L1, 0);
wait(60);
set_val(PS4_L1, 0);
}
combo RapidFire_CROSS {
set_val(PS4_CROSS, 100);
wait(120);
set_val(PS4_CROSS, 0);
wait(100)
set_val(PS4_CROSS, 0);
}
combo RapidFire_CIRCLE {
set_val(PS4_CIRCLE, 100);
wait(120);
set_val(PS4_CIRCLE, 0);
wait(100)
set_val(PS4_CIRCLE, 0);
}
combo RightAnalogRapidfire {
set_val(PS4_RX, 0);
set_val(PS4_RY, 0);
wait(60);
// Don't change analog value
wait(40);
}