/*
* ===============================================================================================================================================
* Author: Shadohz
* Game: Resident Evil: Operation Raccoon City
* System: All
* Controller: All
* Game Settings: Default
* Website: https://www.youtube.com/user/Shadohz75
* Copyright: Copyright � 2016 Shadohz, 5Y5T3M 0V3RL04D. All Rights Reserved.
* Restrictions: http://www.copyrighted.com/copyrights/view/qtkq-mp7x-sjos-e3qz. This source is not licensed under "open-source", "public
* domain", nor "source-available". Modification and redistribution requires prior approval. [email protected]
* ===============================================================================================================================================
*/
/*
* ===============================================================================================================================================
* HOW TO USE
*
* CONFIGURATION - The following options must be set after initializing the configuration setup.
*
* Press START and BACK to initialize the configuration setup. Press START and BACK again to disable the configuration setup. You will have 2
* seconds to respond before the configuration setup automatically closes. When selecting a configuration option below, the 2-second timer will
* reset after each button press to allow you plenty of time to set your cooldowns. Raise or lower this value with "ConfigTimeout".
*
*
* Press LEFT STICK to reset defaults.
* This option only works while configuring the setup. This will reset all cooldown times to zero (0) and power priorities removed.
*
*
* Press RIGHT STICK to quick-select your own custom configuration.
* Go to "QuickClick customization" and read the notes commented in the area. Adjust the settings to your liking. Try out the setting and re-adjust
* as necessary. Read the ENTIRE How to Use section first so that you understand how to do On-The-Fly changes as well.
*
*
* Move RIGHT STICK up/down to enable or disable AutoRun.
* Move the right analog (camera) stick up to enable AutoRun. Move the right analog (camera) stick down to disable AutoRun.
*
*
* Press GRENADE to enable and add cooldown time to auto-grenade throw.
* Each press adds one (1) second to the cooldown time for auto-grenade throw. See IMPORTANT note about changing grenade auto-throw behavior. This
* may reduce running into your own grenades and/or when grenades are launched.
*
*
* Press SWITCH to enable and add cooldown time to Auto-Reload after Switch.
* Each press adds one (1) second to cooldown time for automatically reloading you weapon after switching. The script automatically maxes the
* value at four (4) seconds even if you set it higher than that.
*
*
* Press ABILITY to enable and add cooldown time to Active Abilities.
* Each press adds ten (10) seconds to cooldown time for Active Abilities. Setting the value too low may result in Abilities occurring too often
* during combat.
*
*
* Press AIM/FIRE to select Sniper mode or Free Aim mode.
* Press AIM to select Sniper mode. This will prevent auto-grenade throw and Active Abilities from triggering while you are aiming at a target.
* The powers will only engage when you hip-fire. Select FIRE to select Free Aim mode. This will engage auto-grenade throw and Super-Charge while
* aiming or hip-firing. This is more useful for run-and-gun type of setups.
*
*
* Press MELEE to enable AutoMelee.
* Press and hold MELEE to do continuous melee attacks. The script performs ACTION in every cycle so it should increase your chances of landing a
* finish during melee combat. *Note: you must set Sniper/FreeAim mode for this to function.
*
*
* Press D-PAD UP/DOWN to add cooldown time to Fire Modes 1 and 2.
* Press D-PAD UP to add cooldown time to Fire Mode 1. Press D-PAD DOWN to add cooldown time to Fire Mode 2. Max cooldown time is four (4) seconds
* either option. Both types by default are set to 0 (rapidfire). Recommended you set one or the other to one (1). It is not generally necessary
* to have a value higher than one (1) to use the "Charge-up" effect. You will have to set value to one (1) or higher to not sputter automatic
* weapons.
*
*
* Press D-PAD LEFT/RIGHT to add more range to Anti-Recoil Modes 1 and 2.
* The script is designed to allow two different Anti-Recoil settings. One is for Fire Mode 1, the other for Fire Mode 2. Press D-PAD LEFT to add
* more range for Fire Mode 1. Press D-PAD RIGHT to add more range for Fire Mode 2. The AR range is from 0-100. Each button press increases the
* setting in multiples of 5.
*
* ===============================================================================================================================================
* HOW TO USE
* POST-CONFIGURATION (IN-GAME USE) - These are the features you will use after setting up your kit's configuration.
*
* Press LEFT STICK and RIGHT STICK to disable all configurations.
* This will disable all cooldowns and fire behavior. This is a quick-click in case you need to temporarily disable everything. Press Press LEFT
* STICK and RIGHT STICK to disable all configurations. again to re-enable everything.
*
*
* Press RIGHT STICK (RS) to switch between Primary and Secondary Fire modes.
* Pressing the RIGHT STICK will allow you switch between the primary and secondary fire modes that you selected earlier (i.e. switching between
* rapidfire and burst modes).
*
*
* Press LEFT TRIGGER (LT) and RIGHT TRIGGER (RT) or just RIGHT TRIGGER (RT) to perform powers while shooting.
* Press LT+RT (Sniper firing mode) or just RT (Free Aim firing mode or "hip-fire") to have your powers trigger as you're shooting. This is
* activated based on which option you set during the configuration setup-fire mode. "Sniper firing mode" (LT + RT) setting is useful for sniper
* and scout rifle builds and some standard weapons. "Free Aim/hip fire" (RT) is the setting you are most likely to use on other kits.
*
*
* Press and hold Ability for continuous Ability use (looping).
* Press and hold Ability for 3 seconds. This will result in the script automatically running the Active Ability for the player. To disable this
* perform a reset with Configuration Setup.
*
*
* To use other controller settings or layouts, then remove the double backslashes on the appropriate SWAP lines at the very top of the MAIN
* section.
*
*
* IMPORTANT: To add more cooldown time or to change the Fire Mode behavior, press START + BACK, then press the appropiate D-PAD, Y, LB, RB, or
* LT/RT button. If you have set the cooldown time too high on one or more powers/charge-up weapon then press START + BACK then LS to reset the
* entire setup.
*
* IMPORTANT: New script functionality has been added to DEFINES section. Set GRENADEMOTION and AbilityMotion. Set these options to 1-4. "Dead
* Center" will not trigger grenade/charge unless the movement stick is centered (i.e. you've come to a stop or moving lateral). "Free" will
* trigger grenade/charge regardless of movement. "Offensive" will trigger grenade/charge when movement stick is forward. "Defensive" will trigger
* grenade/charge when movement stick is backwards (retreating). GRENADEMOTION and AbilityMotion do not have to be set to the same value, so you
* mix the behavior based on your character build and playstyle. Be sure to test out the timing and behavior. Also added is Anti-AFK feature.
* Scroll to the bottom of script and add your custom AFK/FARM (default is Aiming). Set the timer (in seconds) in DEFINES section. The AAFK will
* not activate unless you have configured the script to run. It checks for button presses every second. If no buttons have been pressed by the
* time it reaches your set AAFK cooldown, then it will automatically been the AAFK behavior. You must press any button in order to make the AAFK
* stop performing.
*
* ===============================================================================================================================================
*/
/*
* ===============================================================================================================================================
* VERSION CHANGES
*
* 1.00 - First version includes my standard On-The-Fly customization. Features include: Auto-Run, Automatic Grenade Throw, Automatic Active
* Abilities, Automatic Melee, Automatic Reload on Switch (weapons), User-Specific Quick Config.
*
* 1.01 - Added a PressTime for TurboMelee so player can click while in Menu without aborting.
*
* 1.10 - Added Active Ability loop feature to allow continuous looping of benign Active Abilities.
*
* 1.20 - Changed disable mods from DPAD-UP to LS/RS combination. Added all the Controller Layouts possible. Added a separate variable "Reload
* Delay". This will allow player to alter the amount of time the script will wait after switching weapons to perform an auto-reload. May be
* necessary to alter value for "slow draw" weapons that repeatedly fail to reload after switching. Added condition to ignore reloads not
* triggered by pressing Switch Weapons.
*
* ===============================================================================================================================================
*/
/*
* ===============================================================================================================================================
* DEFINES
* ===============================================================================================================================================
*/
define HoldTime = 50; // Hold: How long to hold down the Combo button. Increase/decrease affects shooting speed/burst behavior.
define RestTime = 500; // Rest: How long to wait before pressing the Combo button again. Increase/decrease affects reload behavior.
define CdMultiplier=1; // The number of seconds to increase between D-PAD presses for Cooldown timers.
define ConfigTimeout=2; // Amount of time before the Configuration Setup will close automatically.
define Mode1=8; // Button assigned to resetting configuration.
define Mode2=5; // Button assigned to switching Fire Modes
define SprintTimeout = 750; // Minimum time required before AutoSprint is re-enabled.
define ReloadDelay = 500; // Amount of time (in milliseconds) script will delay after switching weapons to trigger a reload.
//define ReloadTimeout = 3000; // Global Block Timeout
define AafkCdTime = 0; // Anti-Away From Keyboard Cooldown time (in seconds).
define GrenadeMotion = 1; // 1=Dead Center, 2=Free, 3=Offensive, 4=Defensive.
define AbilityMotion = 2; // 1=Dead Center, 2=Free, 3=Offensive, 4=Defensive.
// Controller Variables
define Dashboard = 0; // XB1_XBOX XB360_XBOX PS4_PS PS3_PS WII_HOME WII_HOME
define Status = 1; // XB1_VIEW XB360_BACK PS4_SHARE PS3_SELECT WII_MINUS WII_MINUS
define Menu = 2; // XB1_MENU XB360_START PS4_OPTIONS PS3_START WII_PLUS WII_PLUS
define Grenade = 3; // XB1_RB XB360_RB PS4_R1 PS3_R1 WII_RT
define Fire = 4; // XB1_RT XB360_RT PS4_R2 PS3_R2 WII_ZR
define Trigger = 5; // XB1_RS XB360_RS PS4_R3 PS3_R3 WII_ONE
define Switch = 6; // XB1_LB XB360_LB PS4_L1 PS3_L1 WII_C WII_LT
define Aim = 7; // XB1_LT XB360_LT PS4_L2 PS3_L2 WII_Z WII_ZL
define Sprint = 8; // XB1_LS XB360_LS PS4_L3 PS3_L3 WII_TWO
define AnaCamSS = 9; // XB1_RX XB360_RX PS4_RX PS3_RX WII_RX
define AnaCamUD = 10; // XB1_RY XB360_RY PS4_RY PS3_RY WII_RY
define AnaMovSS = 11; // XB1_LX XB360_LX PS4_LX PS3_LX WII_NX WII_LX
define AnaMovUD = 12; // XB1_LY XB360_LY PS4_LY PS3_LY WII_NY WII_LY
define DPAD1 = 13; // XB1_UP XB360_UP PS4_UP PS3_UP WII_UP WII_UP
define DPAD2 = 14; // XB1_DOWN XB360_DOWN PS4_DOWN PS3_DOWN WII_DOWN WII_DOWN
define DPAD3 = 15; // XB1_LEFT XB360_LEFT PS4_LEFT PS3_LEFT WII_LEFT WII_LEFT
define DPAD4 = 16; // XB1_RIGHT XB360_RIGHT PS4_RIGHT PS3_RIGHT WII_RIGHT WII_RIGHT
define Ability = 17; // XB1_Y XB360_Y PS4_TRIANGLE PS3_TRIANGLE WII_X
define Melee = 18; // XB1_B XB360_B PS4_CIRCLE PS3_CIRCLE WII_B WII_B
define Action = 19; // XB1_A XB360_A PS4_CROSS PS3_CROSS WII_A WII_A
define Reload = 20; // XB1_X XB360_X PS4_SQUARE PS3_SQUARE WII_Y
/*
* ===============================================================================================================================================
* MAPPINGS
* ===============================================================================================================================================
*/
/*
* ===============================================================================================================================================
* INITIALIZED VARIABLES
* ===============================================================================================================================================
*/
// No need to change anything else
int CdPTime0,CdPTime1,CdPTime2,CdPTime3,CdGTime0,CdGTime1,CdCheck,CdWait;
int led, currentled, run;
int Power0,Power1,Power2,Power3;
int seconds0,seconds1,seconds2,seconds3;
int configsetup, Reset;
int timelimit=1000;//, minutes, hours;
int Start_at=FALSE;
int Finish_at=TRUE;
int refresh=FALSE;
int ConfigSelect=0;
int FirePrimary=TRUE;
int AutoRun=FALSE;
int ConfigSeconds,position,snipe;
int AafkSeconds,AutoZoom=FALSE,AutoMelee=FALSE;
int FireSqueeze,FireRelease,AbCycle;
int ARSet1,ARSet2,ARComp,SwitchUp;
init {
led = 0;
reset_leds();
while(led<4){
if(get_led(led)==1) currentled = led;
led = led+1;
}
} // End Initialization
/*
* ===============================================================================================================================================
* MAIN
* ===============================================================================================================================================
*/
main {
//swap(Switch,Aim); swap(Grenade,Fire); //Controller Type B
//swap(AnaCamSS,AnaMovSS);swap(AnaCamUD,AnaMovUD); //Controller Type C
//swap(Switch,Aim);swap(Grenade,Fire);swap(AnaCamSS,AnaMovSS);swap(AnaCamUD,AnaMovUD); //Controller Type D
set_val(TRACE_1,ARSet1);
set_val(TRACE_2,ARSet2);
set_val(TRACE_3,seconds0);
set_val(TRACE_4,seconds1);
set_val(TRACE_5,seconds2);
set_val(TRACE_6,seconds3);
if(CdCheck == 0){Start_at=TRUE;Finish_at=FALSE;timelimit=1000;}
if(Start_at )
{// Timer count seconds, minutes, hour
timelimit=timelimit- get_rtime();
if( timelimit<=0) {
ConfigSeconds=ConfigSeconds+1;
seconds0=seconds0+1;
seconds1=seconds1+1;
seconds2=seconds2+1;
seconds3=seconds3+1;
AafkSeconds=AafkSeconds+1
timelimit=1000;
} // seconds count
}
if((event_press(Menu) && get_val(Status)) || (get_val(Menu) && event_press(Status))) {
if(!configsetup) {
set_led(currentled,2);
configsetup = TRUE;
CdCheck=1;
combo_run(RumbleStrong);
ConfigSeconds=0;
}
}
if(configsetup == TRUE) {
if (ConfigSeconds>=ConfigTimeout) {
configsetup = FALSE;
reset_leds();
combo_run(RumbleWeak);
}
if(event_press(Mode1)) {
ConfigSelect = 0;
CdPTime0=0;
CdPTime1=0;
CdPTime2=0;
CdPTime3=0;
CdGTime0=0;
CdGTime1=0;
FirePrimary = TRUE;
AutoRun = FALSE;
//AutoZoom = FALSE;
AutoMelee = FALSE;
AbCycle=0;
ARSet1=0;
ARSet2=0;
ConfigSeconds=0;
}
// QuickClick customization
if(event_press(Mode2)) {
ConfigSelect = 2; // Fire Mode: Set to 1 for Sniper mode. Set to 2 for Free Aim mode.
CdPTime0=10; // Active Ability: Set the amount of time script performs a check for Active Ability. Do not set this too low or else your character will constantly throw melees in combat. 60 seconds or higher should be sufficient.
CdPTime1=0; // Reload: Set the amount of time to pass before script attempts to reload as you fire.
CdPTime2=0; // Grenade: Set the countdown time for how often the script will check if grenade is okay to throw.
CdPTime3=1; // Switch-reload: Set the amount of time the script will wait before it attempts to automatically reload after you switch weapons. Recommended: 2. 1 is too low. Higher than 2 will act as delayed reload.
CdGTime0=0; // Fire mode type 1: 0 is rapid fire. 1 or higher creates a burst delay (in seconds). Recommended: 0 for pistols, semi-autos, etc. 1 for autos and charged weapons. Recommended to leave one of these set to 0 and the other to 1.
CdGTime1=1; // Fire mode type 1: 0 is rapid fire. 1 or higher creates a burst delay (in seconds). Recommended: 0 for pistols, semi-autos, etc. 1 for autos and charged weapons. Recommended to leave one of these set to 0 and the other to 1.
seconds0=120; // Do not change
seconds1=120; // Do not change
seconds2=120; // Do not change
seconds3=120; // Do not change
FirePrimary = TRUE; // Do not change
AutoRun = TRUE; // AutoRun: Set to FALSE to disable. Set to TRUE to enable. Enabling will cause your character to automatically sprint when you press forward on the controller. AutoRun can cause infrequent animation cancels of Reload. Try raising or lowering the SprintTimeout (max 4000) in Defines to see if it makes a difference for your character.
//AutoZoom = FALSE; // Autozoom: Set to FALSE to disable. Set to TRUE to enable. Enabled will cause player to automatically zoom while shooting.
AutoMelee= TRUE; // AutoMelee: Set to FALSE to disable. Seto to TRUE to enable. Enabled will cause player to repeatedly attack while holding down Melee.
AbCycle = 0; // Active Ability cycling: 0 is disabled. 1 is enabled. Enabling causes the script to loop the Active Ability according to the set Ability cooldown. This is useful for characters benign Abilities, such as Threat Scanner, that the player would like to cycle as they play.
ARSet1 = 50; // Anti-Recoil 1: Anti-recoil value setting for Fire mode type 1.
ARSet2 = 0; // Anti-Recoil 2: Anti-recoil value setting for Fire mode type 2.
ConfigSeconds=0; // Do not change
}
if (get_val(AnaCamUD)<-90) {
AutoRun = TRUE;
ConfigSeconds=0;
} else if (get_val(AnaCamUD)>90) {
AutoRun = FALSE;
ConfigSeconds=0;
}
if (get_val(AnaCamSS)<-90) {
AutoZoom = TRUE;
ConfigSeconds=0;
} else if (get_val(AnaCamSS)>90) {
AutoZoom = FALSE;
ConfigSeconds=0;
}
if (event_press(Ability)) {
CdPTime0 = CdPTime0 + (CdMultiplier * 10);
ConfigSeconds=0;
}
if (event_press(Reload)) {
CdPTime1 = CdPTime1 + CdMultiplier;
ConfigSeconds=0;
}
if (event_press(Grenade)) {
CdPTime2 = CdPTime2 + CdMultiplier;
ConfigSeconds=0;
}
if (event_press(Switch)) {
CdPTime3 = CdPTime3 + CdMultiplier;
ConfigSeconds=0;
}
if (event_press(DPAD2)) {
CdGTime0 = CdGTime0 + CdMultiplier;
ConfigSeconds=0;
}
if (event_press(DPAD3)) {
CdGTime1 = CdGTime1 + CdMultiplier;
ConfigSeconds=0;
}
if (event_press(DPAD3)) {
ARSet1 = ARSet1 + (CdMultiplier * 5);
ConfigSeconds=0;
}
if (event_press(DPAD4)) {
ARSet2 = ARSet2 + (CdMultiplier * 5);
ConfigSeconds=0;
}
if(event_press(Aim)) {
ConfigSelect = 1;
ConfigSeconds=0;
}
if(event_press(Fire)) {
ConfigSelect = 2;
ConfigSeconds=0;
}
if (event_press(Melee)) {
AutoMelee = !AutoMelee;
ConfigSeconds=0;
}
} //END OF CONFIG SETUP
if(configsetup == FALSE) {
if((event_press(Mode1) && get_val(Mode2)) || (get_val(Mode2) && event_press(Mode1))) {
if (ConfigSelect == 2) {
Reset = 2;
ConfigSelect = 0;
} else if (ConfigSelect == 1) {
Reset = 1;
ConfigSelect = 0;
} else if (Reset == 1) {
Reset = 0;
ConfigSelect = 1;
} else if (Reset == 2) {
Reset = 0;
ConfigSelect = 2;
}
}
if (AafkCdTime > 0 && ConfigSelect>0) {
if (get_val(0) || get_val(1) || get_val(2) || get_val(3) ||
get_val(4) || get_val(5) || get_val(6) || get_val(7) ||
get_val(8) || get_val(13) || get_val(14) || get_val(15) ||
get_val(16) || get_val(17) || get_val(18) || get_val(19) ||
get_val(20)) {
AafkSeconds=0;
} else if (AafkSeconds>AafkCdTime) {
combo_run(AAFK);
}
}
if(event_press(Ability)) {
seconds0=0;
} else if(event_press(Reload)) {
seconds1=0;
} else if(event_press(Grenade)) {
seconds2=0;
} else if(event_press(Switch)) {
seconds3=0;
}
if (AutoRun==3 && seconds3>=CdPTime3) {
AutoRun=TRUE;
} else if (AutoRun==4 && seconds3>=(SprintTimeout/1000)) {
AutoRun=TRUE;
} else if(AutoRun == TRUE && (get_val(Aim)>10 || get_val(Fire)>10) && ConfigSelect > 0) { // Disables AutoRun immediately after pressing Aim or Fire
set_val(Sprint,0);
AutoRun=4;
seconds3=0;
} else if(event_press(Switch) && ConfigSelect > 0) { // Auto-reload after switching weapons
if(CdPTime3 > 0) {
SwitchUp = 1;
combo_run(AutoReload);
}
} else if(event_press(Reload) && ConfigSelect > 0) { // Disables Autorun after pressing Reload
if(AutoRun == TRUE ) {
combo_run(AutoReload);
}
} else if (get_val(AnaMovUD) < -90 && AutoRun == TRUE && ConfigSelect > 0) { // Auto-Sprint when moving forward. Triggers every 3 seconds (or SprintTimeout setting) when pressing forward.
combo_run(AutoSprint);
}
if (get_val(Melee) > 90 && get_ptime(Melee)>= 500 && AutoMelee == TRUE && ConfigSelect > 0){
combo_run(TurboMelee);
}
if (event_press(Mode2) && ConfigSelect >0) {
FirePrimary=!FirePrimary
/* if(FirePrimary == TRUE) {
FirePrimary = FALSE;
} else {
FirePrimary = TRUE;
}
*/ }
if (get_val(Ability)>90 && get_ptime(Ability)>3000 && CdPTime0>0 && ConfigSelect>0 && !AbCycle) {
AbCycle=!AbCycle;
combo_run(RumbleWeak);
}
if(AbCycle && (seconds0 > CdPTime0)) {
combo_run(Power0Sub);
seconds0=0;
}
if (ConfigSelect == 1 && get_val(Aim) >90 && get_val(Fire)>90) {
snipe=1;
combo_run(Control); // Does not use powers while aiming and firing in Sniper mode
} else if (ConfigSelect == 1 && get_val(Aim)<90 && get_val(Fire)>90) { // Removed from line: && AllSet == TRUE
snipe=0;
combo_run(Control); // Uses powers and RF when NOT aiming in Sniper mode
} else if (ConfigSelect == 2 && get_val(Fire)>90) { // Removed from line: && AllSet == TRUE
snipe=0;
combo_run(Control); // Uses powers and RF when not using Sniper mode
}
}//END OF REALTIME
}// End Main
/*
* ===============================================================================================================================================
* COMBINATIONS
* ===============================================================================================================================================
*/
combo Control {
set_led(currentled, 0);
if (snipe==1) {
if (seconds0 >= CdPTime0 && seconds0>0) {
seconds0=CdPTime0-5;
} else if (seconds1 >= CdPTime1 && seconds1>0) {
seconds1=CdPTime1-5;
} else if (seconds2 >= CdPTime2 && seconds2>0) {
seconds2=CdPTime2-5;
} else {combo_run (Control2);}
} else if (snipe==0) {
if ((seconds0 > CdPTime0) && (CdPTime0 > 0) && AbilityMotion == 1 && abs(get_val(AnaMovUD))<=40) {
combo_run (Power0Sub); // AnaMovUD set to only activate when controller is dead center
} else if ((seconds0 > CdPTime0) && (CdPTime0 > 0) && AbilityMotion == 2 && abs(get_val(AnaMovUD))<=100) {
combo_run (Power0Sub); // AnaMovUD set to activate Charge regardless of controller direction
} else if ((seconds0 > CdPTime0) && (CdPTime0 > 0) && AbilityMotion == 3 && get_val(AnaMovUD)<=-90) {
combo_run (Power0Sub); // AnaMovUD set to activate Charge while moving forward
} else if ((seconds0 > CdPTime0) && (CdPTime0 > 0) && AbilityMotion == 4 && get_val(AnaMovUD)>=90) {
combo_run (Power0Sub); // AnaMovUD set to activate Charge while moving backwards
/* } else if (PowerIsSet1==1 && (seconds1 > CdPTime1) && (CdPTime1 > 0)) {
combo_run (Power1Sub);
*/ } else if ((seconds2 > CdPTime2) && (CdPTime2 > 0) && GrenadeMotion == 1 && abs(get_val(AnaMovUD))<=40) {
combo_run (Power2Sub); // AnaMovUD set to only throw grenades when controller is dead center
} else if ((seconds2 > CdPTime2) && (CdPTime2 > 0) && GrenadeMotion == 2 && abs(get_val(AnaMovUD))<=100) {
combo_run (Power2Sub); // AnaMovUD set to throw grenades regardless of controller direction
} else if ((seconds2 > CdPTime2) && (CdPTime2 > 0) && GrenadeMotion == 3 && get_val(AnaMovUD)<=-90) {
combo_run (Power2Sub); // AnaMovUD set to only throw grenade while moving forward
} else if ((seconds2 > CdPTime2) && (CdPTime2 > 0) && GrenadeMotion == 4 && get_val(AnaMovUD)>=90) {
combo_run (Power2Sub); // AnaMovUD set to throw grenades while moving backwards direction
} else {combo_run (Control2);}
}
} // End combo
combo Control2 {
if (FirePrimary == TRUE) {
//FireSqueeze=irand(150,200); FireRelease=irand(50,100);
FireSqueeze=irand(10,200); FireRelease=irand(10,100);
combo_run (Shoot1Sub);
} else {
FireSqueeze=irand(10,200); FireRelease=irand(10,100);
combo_run (Shoot2Sub);
}
}
combo Shoot1Sub {
set_led(currentled, 1);
if (CdGTime0 > 4) {
CdWait=4000;
} else if (CdGTime0 == 0) {
CdWait=FireSqueeze;
} else CdWait = CdGTime0 * 1000;
//if (get_val(Fire)>90 && CdGTime0>0 && AutoZoom==TRUE) {set_val(Aim,100);}
wait(CdWait) ;
//if (get_val(Fire)>90 && CdGTime0==0 && AutoZoom==TRUE) {set_val(Aim,100);}
if (get_val(Fire)>90) {set_val(Fire, 0);}
wait (FireRelease);
call(AntiRecoil);
} //End Combo
combo Shoot2Sub {
set_led(currentled, 1);
if (CdGTime1 > 4) {
CdWait=4000;
} else if (CdGTime1 == 0) {
CdWait=FireSqueeze;
} else CdWait = CdGTime1 * 1000;
//if (get_val(Fire)>90 && CdGTime1>0 && AutoZoom==TRUE) {set_val(Aim,100);}
wait(CdWait);
//if (get_val(Fire)>90 && CdGTime1==0 && AutoZoom==TRUE) {set_val(Aim,100);}
if (get_val(Fire)>90) {set_val(Fire, 0);}
wait (FireRelease);
call(AntiRecoil);
} // End Combo
combo Power0Sub {
set_led(currentled, 1);
set_val(Ability, 100);
wait(600);
seconds0=0;
} // End Combo
/*
combo Power1Sub {
set_led(currentled, 1);
set_val(Reload, 100);
wait(HoldTime);
seconds1=0;
} // End Combo
*/
combo Power2Sub {
set_led(currentled, 1);
set_val(Grenade, 100);
wait(HoldTime);
seconds2=0;
} // End Combo
combo AutoReload {
if(AutoRun==TRUE) {
AutoRun=3;
position=get_val(AnaMovUD);
set_val(AnaMovUD,0);
set_val(AnaMovUD,position);
seconds3=0;
}
wait(ReloadDelay);
if (SwitchUp == 1) {set_val(Reload,100);}
wait(HoldTime);
SwitchUp = 0;
seconds3=0;
} // End Combo
combo AAFK {
/* set_val(AnaCamSS,100);
wait(RestTime);
set_val(AnaCamUD,100);
wait(RestTime);
set_val(AnaMovSS,100);
wait(RestTime);
set_val(AnaMovUD,100);
wait(RestTime);
*/ set_val(Aim,100);
wait(RestTime);
set_val(Ability,100);
wait(RestTime);
set_val(Reload,100);
wait(RestTime);
} // End Combo
combo AutoSprint{
set_val(Sprint,100);
block(Sprint,SprintTimeout);
}
combo TurboMelee{
wait(HoldTime);
set_val(Melee,0);
wait(HoldTime);
set_val(Action,100);
}
combo RumbleStrong {
set_rumble(RUMBLE_A, 100);
wait(RestTime);
set_rumble(RUMBLE_A, 0);
}
combo RumbleWeak {
set_rumble(RUMBLE_B, 100);
wait(RestTime);
set_rumble(RUMBLE_B, 0);
}
combo AntiRecoil {
if (FirePrimary == TRUE) {
ARComp = get_val(AnaCamUD) + ARSet1;
if(ARComp > 100) ARComp = 100;
set_val(AnaCamUD, ARComp);
}
else {
ARComp = get_val(AnaCamUD) + ARSet2;
if(ARComp > 100) ARComp = 100;
set_val(AnaCamUD, ARComp);
}
wait(HoldTime);
}
\0