Black Ops 3 (QUICK & THE DEAD)(SNIPER)

New! QUICK/ DRAG/ HARD SCOPE SNIPER with also FIRE CANCEL method. Adjustable quick fires, burst fire and quick reload. Enjoy!
Version1.1
Authorbonefisher
Publish DateMon, 6 Jun 2016 - 20:18
Last UpdateSun, 12 Jun 2016 - 21:49
Downloads488
RATE


0

0

Release Notes: Added New Advanced Sniper.
Code: Select all
 //                This was only designed for Black Ops 3!
/*******************************************************************************
*  MODS             WORKS FOR PS4 and XBOX ONE CONSOLES             RUMBLE     *
* TURNING              ON/OFF                                       NOTICE     *
* PRIMARY OFF          HOLD D-PAD LEFT AND CLICK JUMP              NO RUMBLE   *
* QUICK FIRE PRIMARY   HOLD D-PAD LEFT AND CLICK JUMP               1 time     *
* BURST FIRE PRIMARY   HOLD D-PAD LEFT AND CLICK JUMP               2 time     *
* ADVANCED SNIPER      HOLD D-PAD LEFT AND CLICK JUMP               3 time     *
* SECONDARY OFF        HOLD D-PAD LEFT AND CLICK CROUCH            NO RUMBLE   *
* QUICK FIRE SECONDARY HOLD D-PAD LEFT AND CLICK CROUCH             1 time     *
* AKIMBOS OFF          HOLD D-PAD LEFT AND CLICK RELOAD            NO RUMBLE   *
* AKIMBOS SECONDARY    HOLD D-PAD LEFT AND CLICK RELOAD             1 time     *
* ANTI-RECOIL  OFF     HOLD D-PAD DOWN AND CLICK JUMP              NO RUMBLE   *
* ANTI-RECOIL          HOLD D-PAD DOWN AND CLICK JUMP               1 time     *
* DROP SHOT OFF        HOLD D-PAD DOWN AND CLICK CROUCH            NO RUMBLE   *
* DROP SHOT            HOLD D-PAD DOWN AND CLICK CROUCH             1 time     *
* AUTO SPRINT OFF      HOLD D-PAD UP AND CLICK JUMP                NO RUMBLE   *
* AUTO SPRINT          HOLD D-PAD UP AND CLICK JUMP                 1 time     *
* LONG JUMP OFF        HOLD D-PAD UP AND CLICK CROUCH              NO RUMBLE   *
* LONG JUMP            HOLD D-PAD UP AND CLICK CROUCH               1 time     *
* QUICK RELOAD OFF     HOLD D-PAD UP AND CLICK RELOAD              NO RUMBLE   *
* QUICK RELOAD         HOLD D-PAD UP AND CLICK RELOAD               1 time     *
*                                                                              *
*CHOOSE YOUR BUTTON LAYOUT PREFERENCE LEAVE GAME SETTING AT DEFAULT CHANGE HERE*
* DEFAULT SETTING      HOLD SCOREBOARD AND CLICK JUMP              NO RUMBLE   *
* FLIPPED DEFAULT      HOLD SCOREBOARD AND CLICK JUMP               1 time     *
* BUMPER JUMPER        HOLD SCOREBOARD AND CLICK JUMP               2 time     *
* TACTICAL             HOLD SCOREBOARD AND CLICK JUMP               3 time     *
*                                                                              *
*           MAKE SURE TO CYCLE THE SWITCHING BEFORE STARTING!!!                *
*                                                                              *
*                SWITCHING BETWEEN PRIMARY AND SECONDARY                       *
* WHEN TAPPING SWITCH_WEAPON YOU WILL GET ONE RUMBLE FOR THE PRIMARY SIDE AND  *
* TWO RUMBLES FOR THE SECONDARY SIDE INCASE YOU GET ON THE WRONG SIDE FOR YOUR *
* CLASS JUST HOLD SWITCH_WEAPON BUTTON FOR 300MS OR LONGER AND RELEASE TO PUT  *
* YOU INLINE WITH WEAPON CLASS. WHEN ADJUSTING FIRE MAKE SURE YOU ARE ON THE   *
* CORRECT SIDE FOR ADJUSTMENTS. WHEN YOU DIE MAKE SURE YOUR BACK ON PRIMARY    *
* SIDE SO SWITCH BEFORE YOU SPAWN.                                             *
*                                                                              *
*                     ADJUSTING QUICK FIRE PRIMARY                             *
* ADJUSTING QUICK FIRE: HOLD FIRE AND CLICK D-PAD UP FOR INCREASING AND        *
* D-PAD DOWN FOR DECREASING THE FIRE.                                          *
*                    MAKE SURE YOUR ON PRIMARY SIDE!                           *
*                                                                              *
*                     ADJUSTING BURST FIRE PRIMARY                             *
* ADJUSTING BURST FIRE: HOLD AIM AND CLICK D-PAD UP FOR DECREASING SHOTS       *
* AND D-PAD DOWN FOR INCREASING SHOTS OF FIRE.                                 *
* ADJUSTING BURST FIRE: HOLD AIM AND CLICK D-PAD RIGHT FOR DECREASING DELAY    *
* AND D-PAD LEFT FOR INCREASING DELAY OF FIRE.                                 *
*                    MAKE SURE YOUR ON PRIMARY SIDE!                           *
*                                                                              *
*                    ADJUSTING QUICK FIRE SECONDARY                            *
* ADJUSTING QUICK FIRE: HOLD FIRE AND CLICK D-PAD RIGHT FOR INCREASING         *
* AND D-PAD LEFT FOR DECREASING THE FIRE.                                      *
*                   MAKE SURE YOUR ON SECONDARY SIDE!                          *
*                                                                              *
*                       ADJUSTING QUICK RELOAD                                 *
* ADJUSTING QUICK RELOAD: HOLD JUMP AND CLICK OR HOLD FOR FAST TRAVEL LETHAL   *
* TO LENGTHEN THE TIMING AND TACTICAL TO SHORTEN THE TIMING.                   *
* THIS IS A YY METHOD AND HOW TO SET IT WHERE IT BENEFITS YOU. YOU WANT TO     *
* WATCH BOTTOM RIGHT OF THE SCREEN AT YOUR LOADED AMMO CLIP WHEN THIS CHANGES  *
* NUMBERS IS WHERE YOU WANT YOUR YY RELOAD CANCEL TO GO OVER. WHEN ADJUSTING   *
* MAKE IT WHERE IT DOESN'T LOAD A FULL CLIP THEN JUST CLICK TIL IT LOCKS FULL. *
*                                                                              *
*                             AKIMBO MOD                                       *
* IT ADJUSTS WITH THE QUICK FIRE SECONDARY SETTINGS YOU CAN EITHER HAVE THIS   *
* ON FOR AKIMBOS OR OFF BUT FOR THE AKIMBOS TO WORK IT DOES NEED QUICK FIRE    *
* SECONDARY SIDE ON ALSO. BECAUSE THERE BOTH ARE SINGLED OUT FROM ONE ANOTHER. *
*                                                                              *
*                         ADVANCED SNIPER MOD                                  *
* TAP FIRE TRIGGER TO QUICKSCOPE OR HOLD FIRE TRIGGER AND RELEASE TAKING A SHOT*
* ADS TRIGGER IS THE CANCEL METHOD IF NOT WANTING TO TAKE SHOT. ADJUSTMENTS ARE*
* IN THE DEFINE SECTION FOR EACH SNIPER WEAPON UNDER SNIPERHOLD / SNIPERRELEASE*
*******************************************************************************/

 
define SCOREBOARD   =  1;
define MENU         =  2;
define FIRE         =  4;
define ADS          =  7;
define TACTICAL     =  6;
define LETHAL       =  3;
define UP           = 13;
define DOWN         = 14;
define LEFT         = 15;
define RIGHT        = 16;
define SPRINT       =  8;
define MELEE        =  5;
define SWITCH       = 17;
define RELOAD       = 20;
define JUMP         = 19;
define CROUCH       = 18;
 
define ANTI_RECOIL_FORCE         = 30;      // change this value to compensate
 //                                            to the vertical recoil.
define SniperHold    = 250// P-06 needs 100 // Locus needs 250 // SVG-100 needs 300
define SniperRelease =  10// P-06 needs 250 // Locus needs 10 // SVG-100 needs 20
 
define ON = 14;
define OFF = 13;
 
int PrimaryFire;
int SecondaryFire;
int BurstOfFire, BurstOfFire2;
int AkimboOnOff;
int AutoRunOnOff;
int RapidFireOnOff;
int HoldTime, RateOfFire;
int HoldTime2, RateOfFire2;
int HoldBurst, ReleaseBurst;
int ToggleAntiRecoil;
int Primary = FALSE;
int LongJumpOnOff;
int DropShotOnOff;
int QuickReload;
int ReloadRate,ReloadTime;
int AntiRecoilOnOff;
int anti_recoil;
int ar_fire, ar_tmp;
int ControllerLayout;
 
init {
    PrimaryFire        = get_pvar(SPVAR_1, 1, 4, 1);
    SecondaryFire      = get_pvar(SPVAR_2, 1, 2, 2);
    RateOfFire     = get_pvar(SPVAR_3, 25, 250, 62);
    RateOfFire2    = get_pvar(SPVAR_4, 25, 250, 62);
    AkimboOnOff        = get_pvar(SPVAR_5, 1, 2, 2);
    AutoRunOnOff       = get_pvar(SPVAR_6, 1, 2, 1);
    LongJumpOnOff      = get_pvar(SPVAR_7, 1, 2, 1);
    QuickReload        = get_pvar(SPVAR_8, 1, 2, 2);
    ReloadRate = get_pvar(SPVAR_9, 500, 4000, 1500);
    AntiRecoilOnOff   = get_pvar(SPVAR_10, 1, 2, 2);
    BurstOfFire = get_pvar(SPVAR_12, 10, 1000, 300);
    BurstOfFire2 = get_pvar(SPVAR_13, 10, 1000, 50);
    DropShotOnOff     = get_pvar(SPVAR_14, 1, 2, 2);
    ControllerLayout  = get_pvar(SPVAR_15, 1, 4, 1);
}
 
main {
 
    // Set hair triggers
    if (get_val(FIRE)) {set_val(FIRE, ON); }
    if (get_val(ADS))   {set_val(ADS, ON); }
    ar_fire = get_val(FIRE);
 
    if (get_val(SCOREBOARD) && event_press(JUMP)) {
        if (ControllerLayout == 4) {
            ControllerLayout = 1;
            set_pvar(SPVAR_15, ControllerLayout);
        } else if (ControllerLayout == 1) {
            ControllerLayout = 2;
            set_pvar(SPVAR_15, ControllerLayout);
            combo_run(RumbleNotifier);
        } else if (ControllerLayout == 2) {
            ControllerLayout = 3;
            set_pvar(SPVAR_15, ControllerLayout);
            combo_run(DoubleRumbleNotifier);
        } else if (ControllerLayout == 3) {
            ControllerLayout = 4;
            set_pvar(SPVAR_15, ControllerLayout);
            combo_run(TripleRumbleNotifier);
        }
    }
    if(ControllerLayout == 2) {
        swap(LETHAL,FIRE); swap(TACTICAL,ADS); // FLIPPED DEFAULT BUTTON LAYOUT
    }
    if(ControllerLayout == 3) {
        swap(TACTICAL,JUMP);                   // BUMPER JUMPER BUTTON LAYOUT
    }
    if(ControllerLayout == 4) {
        swap(MELEE,CROUCH);                    // TACTICAL BUTTON LAYOUT
    }
 
    if (get_val(LEFT) && event_press(JUMP)) {
        if (PrimaryFire == 4) {
            PrimaryFire = 1;
            set_pvar(SPVAR_1, PrimaryFire);
        } else if (PrimaryFire == 1) {
            PrimaryFire = 2;
            set_pvar(SPVAR_1, PrimaryFire);
            combo_run(RumbleNotifier);
        } else if (PrimaryFire == 2) {
            PrimaryFire = 3;
            set_pvar(SPVAR_1, PrimaryFire);
            combo_run(DoubleRumbleNotifier);
        } else if (PrimaryFire == 3) {
            PrimaryFire = 4;
            set_pvar(SPVAR_1, PrimaryFire);
            combo_run(TripleRumbleNotifier);
        }
    }   
    if (get_val(LEFT) && event_press(CROUCH)) {
        if (SecondaryFire == 1) {
            SecondaryFire = 2;
        } else if (SecondaryFire == 2) {
            SecondaryFire = 1;
        }
        set_pvar(SPVAR_2, SecondaryFire);
 
        if (SecondaryFire == 1) {
            combo_run(RumbleNotifier);
        }
    }
    if (get_val(LEFT) && event_press(RELOAD)) {
        if (AkimboOnOff == 1) {
            AkimboOnOff = 2;
        } else if (AkimboOnOff == 2) {
            AkimboOnOff = 1;
        }
        set_pvar(SPVAR_5, AkimboOnOff);
 
        if (AkimboOnOff == 1) {
            combo_run(RumbleNotifier);
        }
    }
    if(event_release(SWITCH)){
        if(get_ptime(SWITCH) <= 300){
            Primary = !Primary;
        }
        if(Primary){
            set_pvar(SPVAR_1, PrimaryFire);
            combo_run(RumbleNotifier);
            set_pvar(SPVAR_2, SecondaryFire);
        }
        else{
            set_pvar(SPVAR_2, SecondaryFire);
            combo_run(DoubleRumbleNotifier);
        }
    }
    if(PrimaryFire == 2 && get_val(FIRE) && Primary){
        combo_run(RapidFire); combo_stop(AutoSprint);
    }
    if(PrimaryFire == 3 && get_val(FIRE) && Primary){
        combo_run(BurstFire); combo_stop(AutoSprint);
    }
    if(PrimaryFire == 4 && Primary){
     if(get_val(FIRE)) {set_val(FIRE,0); set_val(ADS,100);
             combo_run(AutoSprint);}
     else if(event_release(FIRE) && get_ptime(FIRE) <= SniperHold) {
             combo_run(QuickScope);}
     else if(event_release(FIRE) && get_ptime(FIRE) >= SniperHold) {
             combo_stop(QuickScope);combo_run(QSH_fire);}
     if(get_val(ADS)) {combo_stop(QuickScope);
             combo_stop(QSH_fire);}
    }
    if(SecondaryFire == 1 && get_val(FIRE) && !Primary){
        combo_run(RapidFire2); combo_stop(AutoSprint);
    }
    if(AkimboOnOff == 1 && get_val(FIRE) && !Primary){
        combo_run(Akimbos); combo_stop(AutoSprint);
    }
 
    if (PrimaryFire == 2 && get_val(FIRE)) {
        if (get_val(UP)) {RateOfFire = RateOfFire - 1; }
        if (get_val(DOWN)) {RateOfFire = RateOfFire + 1; }
 
        if (RateOfFire > 250) { RateOfFire = 250; }
        if (RateOfFire < 25) { RateOfFire = 25; }
 
        set_pvar(SPVAR_3, RateOfFire);
        HoldTime = RateOfFire;
    }
    if (SecondaryFire == 1 && get_val(FIRE)) {
        if (get_val(RIGHT)) {RateOfFire2 = RateOfFire2 - 1; }
        if (get_val(LEFT)) {RateOfFire2 = RateOfFire2 + 1; }
 
        if (RateOfFire2 > 250) { RateOfFire2 = 250; }
        if (RateOfFire2 < 25) { RateOfFire2 = 25; }
 
        set_pvar(SPVAR_4, RateOfFire2);
        HoldTime2 = RateOfFire2;
    }
    if (PrimaryFire == 3 && get_val(ADS) && !get_val(FIRE)) {
        if (get_val(UP)) {BurstOfFire = BurstOfFire - 1; }
        if (get_val(DOWN)) {BurstOfFire = BurstOfFire + 1; }
 
        if (BurstOfFire > 1000) { BurstOfFire = 1000; }
        if (BurstOfFire < 10) { BurstOfFire = 10; }
 
        set_pvar(SPVAR_12, BurstOfFire);
        HoldBurst = BurstOfFire;
    }
    if (PrimaryFire == 3 && get_val(ADS) && !get_val(FIRE)) {
        if (get_val(RIGHT)) {BurstOfFire2 = BurstOfFire2 - 1; }
        if (get_val(LEFT)) {BurstOfFire2 = BurstOfFire2 + 1; }
 
        if (BurstOfFire2 > 1000) { BurstOfFire2 = 1000; }
        if (BurstOfFire2 < 10) { BurstOfFire2 = 10; }
 
        set_pvar(SPVAR_13, BurstOfFire2);
        ReleaseBurst = BurstOfFire2;
    }
    if (get_val(UP) && event_press(JUMP)) {
        if (AutoRunOnOff == 1) {
            AutoRunOnOff = 2;
        } else if (AutoRunOnOff == 2) {
            AutoRunOnOff = 1;
        }
        set_pvar(SPVAR_6, AutoRunOnOff);
 
        if (AutoRunOnOff == 1) {
            combo_run(RumbleNotifier);
        }
    }
    if (AutoRunOnOff == 1) {
        if (get_val(12) < -95) { combo_run(AutoSprint);
        }
    }
    if (get_val(UP) && event_press(CROUCH)) {
        if (LongJumpOnOff == 2) {
            LongJumpOnOff = 1;
            set_pvar(SPVAR_7, LongJumpOnOff);
        } else if (LongJumpOnOff == 1) {
            LongJumpOnOff = 2;
            set_pvar(SPVAR_7, LongJumpOnOff);
            combo_run(RumbleNotifier);
        }
    }
    if (LongJumpOnOff == 2 && get_val(JUMP)) {
         combo_run(LongJump);
    }
    if (get_val(UP) && event_press(RELOAD)){         
        if (QuickReload == 1) {
            QuickReload = 2;
        } else if (QuickReload == 2) {
            QuickReload = 1;
        }
        set_pvar(SPVAR_8, QuickReload);
 
        if (QuickReload == 1) {
            combo_run(RumbleNotifier);
        }
    }
    if (QuickReload == 1 && event_press(RELOAD)) {
        combo_run(FastReload);
    }
    if (QuickReload == 1 && get_val(JUMP)) {
        if (get_val(TACTICAL)) {ReloadRate = ReloadRate - 1; }
        if (get_val(LETHAL)) {ReloadRate = ReloadRate + 1; }
 
        if (ReloadRate > 4000) { ReloadRate = 4000; }
        if (ReloadRate < 500) { ReloadRate = 500; }
 
        set_pvar(SPVAR_9, ReloadRate);
        ReloadTime = ReloadRate;
        set_val(TACTICAL, 0); set_val(LETHAL, 0);
    }
    if (get_val(DOWN) && event_press(JUMP)) {
        if (AntiRecoilOnOff == 1) {
            AntiRecoilOnOff = 2;
        } else if (AntiRecoilOnOff == 2) {
            AntiRecoilOnOff = 1;
        }
        set_pvar(SPVAR_10, AntiRecoilOnOff);
 
        if (AntiRecoilOnOff == 1) {
            combo_run(RumbleNotifier);
        }
    }
    if (AntiRecoilOnOff == 1 && get_val(ADS) && get_val(FIRE)) {
        combo_run(AntiRecoilADV);
    }
    if (get_val(DOWN) && event_press(CROUCH)){         
        if (DropShotOnOff == 1) {
            DropShotOnOff = 2;
        } else if (DropShotOnOff == 2) {
            DropShotOnOff = 1;
        }
 
        set_pvar(SPVAR_14, DropShotOnOff);
 
        if (DropShotOnOff == 1) {
            combo_run(RumbleNotifier);
        }
    }
    if (DropShotOnOff == 1) {
        if((!get_val(ADS) && event_press(FIRE)) || (event_release(ADS) && get_val(FIRE))) {
            combo_run(DropShot);
            combo_stop(AutoSprint);
        }
    }
}
 
combo    RumbleNotifier      {
    set_rumble(RUMBLE_A, 100);
    wait                (300);
    reset_rumble();
}
combo  DoubleRumbleNotifier  {
    set_rumble(RUMBLE_A, 100);
    wait                (300);
    set_rumble  (RUMBLE_A, 0);
    wait                (300);
    set_rumble(RUMBLE_A, 100);
    wait                (400);
    reset_rumble();
}
combo  TripleRumbleNotifier  {
    set_rumble(RUMBLE_A, 100);
    wait                (300);
    set_rumble  (RUMBLE_A, 0);
    wait                (300);
    set_rumble(RUMBLE_A, 100);
    wait                (400);
    set_rumble  (RUMBLE_A, 0);
    wait                (300);
    set_rumble(RUMBLE_A, 100);
    wait                (400);
    reset_rumble();
}
combo      RapidFire         {
    set_val        (FIRE, ON);
    wait           (HoldTime);
    set_val       (FIRE, OFF);
    wait           (HoldTime);
}
combo      RapidFire2        {
    set_val        (FIRE, ON);
    wait          (HoldTime2);
    set_val       (FIRE, OFF);
    wait          (HoldTime2);
}
combo      BurstFire         {
    set_val        (FIRE, ON);
    wait          (HoldBurst);
    set_val       (FIRE, OFF);
    wait       (ReleaseBurst);
}
combo      QuickScope        {
    set_val         (ADS,100);
    wait         (SniperHold)// P-06 needs 10 // Locus needs 250 // SVG-100 needs 300
    set_val         (ADS,100);
    set_val        (FIRE,100);
    wait                 (50);
    set_val         (ADS,100);
    wait      (SniperRelease)// P-06 needs 250 // Locus needs 10 // SVG-100 needs 20
}
combo       QSH_fire         {
    set_val         (ADS,100);
    set_val        (FIRE,100);
    wait                 (50);
    set_val         (ADS,100);
    wait      (SniperRelease)// P-06 needs 250 // Locus needs 10 // SVG-100 needs 20
    }
combo       Akimbos          {
    set_val        (ADS, OFF);
    wait          (HoldTime2);
    set_val         (ADS, ON);
    wait          (HoldTime2);
}
combo      AutoSprint        {
    set_val       (SPRINT,ON);
    wait                 (10);
    set_val       (SPRINT,ON);
}
combo      FastReload        {
    set_val       (SPRINT, 0);
    wait         (ReloadTime);
    set_val      (SWITCH, ON);
    wait                 (40);
    set_val       (SWITCH, 0);
    wait                 (30);
    set_val      (SWITCH, ON);
    wait                 (40);
    set_val       (SWITCH, 0);
}
combo      LongJump          {
    set_val       (JUMP, 100);
    wait                (160);
    set_val         (JUMP, 0);
    wait                 (60);
}
combo      DropShot          {
    set_val     (CROUCH, 100);
    wait                (380);
}
combo     AntiRecoilADV      {
    if(ar_fire && get_val(FIRE)) {
        ar_tmp = get_val(10) + ANTI_RECOIL_FORCE;
        if(ar_tmp > 100) ar_tmp = 100;
        else if(ar_tmp < -100) ar_tmp = -100;
        set_val(10, ar_tmp);
    }
}