Anti recoil xim apex + bo4 qol slide script?
5 posts
• Page 1 of 1
Anti recoil xim apex + bo4 qol slide script?
hey guys dont u think it would be great if someone could combine the antirecoil scritpt for xim apex from alanmcgregor with the slide part from the script bo4 qol from pablosscripts?
Thanks let me know what u guys think about this.
Thanks let me know what u guys think about this.
-
Rocketeeer - Private
- Posts: 1
- Joined: Tue Feb 05, 2019 2:09 pm
Re: Anti recoil xim apex + bo4 qol slide script?
Do you have a good Anti-Recoil Script that works with APEX ? can you please post that
-
Jalal - Sergeant Major
- Posts: 73
- Joined: Wed Apr 26, 2017 7:42 am
Re: Anti recoil xim apex + bo4 qol slide script?
- Code: Select all
#pragma METAINFO("BO4 BLACKOUT", 1, 0, "bonefisher")
#include <display.gph>
#define wait(a) wait((int)a);
#define float fix32
float rf_active, rf_release;
uint8 bUseAntiRecoil = 1;
uint16 ARecoilDelay = 0;
float MinARecoilPercent = 18.0;
float StickNoise = 6.50;
int psv;
int arv;
int i;
int b;
const fix32 wcfg[] =
{
/*rf_active| rf_release*/
76.0, 0.0, //blink 0
37.5, 37.5, //blink 1
64.0, 16.3, //blink 2
40.5, 120.0,//blink 3
60.0, 120.0,//blink 4
80.0, 120.0,//blink 5
240.0, 40.0,//blink 6
340.0, 80.0,//blink 7
540.0, 80.0 //blink 8
};
const fix32 warcfg[] =
{ //anti_recoil
/*vertical| horizontal*/
16.0, 0.0,//blink 0
20.0, 0.0,//blink 1
24.0, 0.0,//blink 2
26.0, 0.0,//blink 3
28.0, 0.0,//blink 4
30.0, 0.0,//blink 5
32.0, 0.0,//blink 6
36.0, 0.0,//blink 7
40.0, 0.0 //blink 8
};
init
{
psv = 0;
i = 0;
arv = 0;
b = 0;
}
main {
// - WEAPON TRACKING - - - - - - - - - - - - - - - - - - - - - - - - - - -
#define WEAPON_PRIMARY 0
#define WEAPON_SECONDARY 1
static uint8 weapon;
if(event_active(BUTTON_5) && time_release(BUTTON_5) <= 200) {
weapon = WEAPON_SECONDARY;
display_overlay(_P_, 500);
} else if(event_release(BUTTON_5)) {
weapon = WEAPON_PRIMARY;
display_overlay(_S_, 500);
}
if(is_active(BUTTON_8))
{
set_val(BUTTON_10, 0.0);
if(event_active(BUTTON_10)){
psv = psv + 1;
i = i + 1;
if(psv > 8) psv = 0;
if(i > 8) i = 0;
pmem_write(1, psv);
pmem_write(18, i);
pmem_save();
Blink(i);
}
}
// - RAPIDFIRE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(get_actual(BUTTON_5)) {
if(weapon) { // SECONDARY
if(event_active(BUTTON_5)) {
rf_active = 37.5;
rf_release = 37.5;
} combo_run(Rapidfire);
} else { // PRIMARY
if(event_active(BUTTON_5)) {
rf_active = wcfg[2*psv+0];
rf_release = wcfg[2*psv+1];
} combo_run(Rapidfire);
}
} else combo_stop(Rapidfire);
// - ANTI RECOIL - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(is_active(BUTTON_8))
{
set_val(BUTTON_11, 0.0);
if(event_active(BUTTON_11)){
arv = arv + 1;
b = b + 1;
if(arv > 8) arv = 0;
if(b > 8) b = 0;
pmem_write(5, arv);
pmem_write(22, b);
pmem_save();
Blinks(b);
}
}
if (get_actual(BUTTON_5) && time_active(BUTTON_5) >= ARecoilDelay)
{
if (abs(get_actual(STICK_1_X)) < StickNoise) set_val(STICK_1_X, 0.0);
if (abs(get_actual(STICK_1_Y)) < StickNoise) set_val(STICK_1_Y, 0.0);
if (abs(get_actual(STICK_2_X)) < StickNoise) set_val(STICK_2_X, 0.0);
if (abs(get_actual(STICK_2_Y)) < StickNoise) set_val(STICK_2_Y, 0.0);
if (bUseAntiRecoil == 1)
{
if (get_actual(BUTTON_8) && get_val(BUTTON_5))
{
AntiRecoil(STICK_1_Y, warcfg[2*arv+0]);
AntiRecoil(STICK_1_X, warcfg[2*arv+1]);
}
}
}
// - COMMON MODS - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(get_actual(BUTTON_5)) {
set_val(BUTTON_5, 100.0); // HAIR TRIGGGER
}
if(get_actual(BUTTON_8)) {
if(get_actual(BUTTON_8) && time_active(BUTTON_8)>= 140) {
set_val(BUTTON_9, 100.0); // HOLD BREATH
}
set_val(BUTTON_8, 100.0); // HAIR TRIGGGER
}
// - SPRINT MOD - - - - - - - - - - - - - - - - - - - - - - - - - - -
#define SPRINT_OFF 0
#define SPRINT_ON 1
static uint8 sprint;
if(event_active(BUTTON_16)|| event_active(BUTTON_5)||
event_active(BUTTON_9)|| is_active(STICK_2_Y)
&& time_release(STICK_2_Y) < 250)
{
sprint = SPRINT_ON;
goto SPRINT_LIGHTBAR;
}
else if(event_active(BUTTON_8)|| event_active(BUTTON_15)||
event_active(BUTTON_17))
{
if(sprint || !sprint)
{
switch(sprint)
{
case SPRINT_OFF: sprint = SPRINT_ON; break;
case SPRINT_ON: sprint = SPRINT_OFF; break;
}
} else sprint = SPRINT_OFF;
SPRINT_LIGHTBAR:
led_reset();
switch(sprint)
{
case SPRINT_OFF: display_overlay(_0_, 500); break;
case SPRINT_ON: display_overlay(_1_, 500); break;
}
}
if(sprint == SPRINT_ON && get_actual(STICK_2_Y) < -95.0){
combo_run(easy_sprint);
}
if(sprint == SPRINT_OFF){
set_val(STICK_2_X, get_val(STICK_2_X) / 1.1);
set_val(STICK_2_Y, get_val(STICK_2_Y) / 1.1);
}
if(get_actual(STICK_2_Y) < -75.0 &&
event_release(BUTTON_15) && time_active(BUTTON_15) < 160)
{
combo_run(BO4_Slide);
}
}
combo Rapidfire
{
set_val(BUTTON_5, 100.0);
wait(rf_active);
set_val(BUTTON_5, rf_release ? 0.0 : 100.0);
wait(rf_release);
set_val(BUTTON_5, rf_release ? 0.0 : 100.0);
}
combo easy_sprint
{
set_val(BUTTON_9, 0.0);
wait(200);
set_val(BUTTON_9, 100.0);
wait(80);
set_val(BUTTON_9, 100.0);
}
combo BO4_Slide
{
set_val(STICK_2_Y,-100.0);
wait(20);
set_val(STICK_2_Y,-100.0);
set_val(BUTTON_9,100.0);
wait(50);
set_val(STICK_2_Y,-100.0);
set_val(BUTTON_15,100.0);
wait(200);
set_val(STICK_2_Y,-100.0);
wait(300);
}
void AntiRecoil(uint8 AxisToApply, float ARecoilToApply)
{
float CurrentX = get_val(STICK_1_X);
float CurrentY = get_val(STICK_1_Y);
float MinARecoilFactor = MinARecoilPercent / 100.0;
float MinARecoilToApply = MinARecoilFactor * ARecoilToApply;
//This sets the ARecoil to be dependent on both X and Y axis movement. With more emphasis on Y
float MovementARecoilToApply = (1.0 - MinARecoilFactor) * ((ARecoilToApply * (100.0 - sqrt(CurrentX*CurrentX + CurrentY*CurrentY))) / (100.0 + abs(CurrentX) + (CurrentY*CurrentY*0.5)));
set_val(AxisToApply, MinARecoilToApply + MovementARecoilToApply + get_val(AxisToApply));
}
bool blinking;
void Blink(uint8 no) {
led_reset();
if(no) led_vmset(LED_1, 150, 500, i+1);
blinking = 1;
}
bool blinker;
void Blinks(uint8 nos) {
led_reset();
if(nos) led_vmset(LED_1, 150, 500, b+1);
blinker = 1;
}
main {
if(blinking && !led_vmget(LED_1)) {
led_reset();
blinking = 0;
}
if(blinker && !led_vmget(LED_1)) {
led_reset();
blinker = 0;
}
}
I have been using this that you can try!
- bonefisher
- Lieutenant General
- Posts: 5413
- Joined: Thu Jan 29, 2015 10:49 am
Re: Anti recoil xim apex + bo4 qol slide script?
bonefisher wrote:
- Code: Select all
#pragma METAINFO("BO4 BLACKOUT", 1, 0, "bonefisher")
#include <display.gph>
#define wait(a) wait((int)a);
#define float fix32
float rf_active, rf_release;
uint8 bUseAntiRecoil = 1;
uint16 ARecoilDelay = 0;
float MinARecoilPercent = 18.0;
float StickNoise = 6.50;
int psv;
int arv;
int i;
int b;
const fix32 wcfg[] =
{
/*rf_active| rf_release*/
76.0, 0.0, //blink 0
37.5, 37.5, //blink 1
64.0, 16.3, //blink 2
40.5, 120.0,//blink 3
60.0, 120.0,//blink 4
80.0, 120.0,//blink 5
240.0, 40.0,//blink 6
340.0, 80.0,//blink 7
540.0, 80.0 //blink 8
};
const fix32 warcfg[] =
{ //anti_recoil
/*vertical| horizontal*/
16.0, 0.0,//blink 0
20.0, 0.0,//blink 1
24.0, 0.0,//blink 2
26.0, 0.0,//blink 3
28.0, 0.0,//blink 4
30.0, 0.0,//blink 5
32.0, 0.0,//blink 6
36.0, 0.0,//blink 7
40.0, 0.0 //blink 8
};
init
{
psv = 0;
i = 0;
arv = 0;
b = 0;
}
main {
// - WEAPON TRACKING - - - - - - - - - - - - - - - - - - - - - - - - - - -
#define WEAPON_PRIMARY 0
#define WEAPON_SECONDARY 1
static uint8 weapon;
if(event_active(BUTTON_5) && time_release(BUTTON_5) <= 200) {
weapon = WEAPON_SECONDARY;
display_overlay(_P_, 500);
} else if(event_release(BUTTON_5)) {
weapon = WEAPON_PRIMARY;
display_overlay(_S_, 500);
}
if(is_active(BUTTON_8))
{
set_val(BUTTON_10, 0.0);
if(event_active(BUTTON_10)){
psv = psv + 1;
i = i + 1;
if(psv > 8) psv = 0;
if(i > 8) i = 0;
pmem_write(1, psv);
pmem_write(18, i);
pmem_save();
Blink(i);
}
}
// - RAPIDFIRE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(get_actual(BUTTON_5)) {
if(weapon) { // SECONDARY
if(event_active(BUTTON_5)) {
rf_active = 37.5;
rf_release = 37.5;
} combo_run(Rapidfire);
} else { // PRIMARY
if(event_active(BUTTON_5)) {
rf_active = wcfg[2*psv+0];
rf_release = wcfg[2*psv+1];
} combo_run(Rapidfire);
}
} else combo_stop(Rapidfire);
// - ANTI RECOIL - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(is_active(BUTTON_8))
{
set_val(BUTTON_11, 0.0);
if(event_active(BUTTON_11)){
arv = arv + 1;
b = b + 1;
if(arv > 8) arv = 0;
if(b > 8) b = 0;
pmem_write(5, arv);
pmem_write(22, b);
pmem_save();
Blinks(b);
}
}
if (get_actual(BUTTON_5) && time_active(BUTTON_5) >= ARecoilDelay)
{
if (abs(get_actual(STICK_1_X)) < StickNoise) set_val(STICK_1_X, 0.0);
if (abs(get_actual(STICK_1_Y)) < StickNoise) set_val(STICK_1_Y, 0.0);
if (abs(get_actual(STICK_2_X)) < StickNoise) set_val(STICK_2_X, 0.0);
if (abs(get_actual(STICK_2_Y)) < StickNoise) set_val(STICK_2_Y, 0.0);
if (bUseAntiRecoil == 1)
{
if (get_actual(BUTTON_8) && get_val(BUTTON_5))
{
AntiRecoil(STICK_1_Y, warcfg[2*arv+0]);
AntiRecoil(STICK_1_X, warcfg[2*arv+1]);
}
}
}
// - COMMON MODS - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(get_actual(BUTTON_5)) {
set_val(BUTTON_5, 100.0); // HAIR TRIGGGER
}
if(get_actual(BUTTON_8)) {
if(get_actual(BUTTON_8) && time_active(BUTTON_8)>= 140) {
set_val(BUTTON_9, 100.0); // HOLD BREATH
}
set_val(BUTTON_8, 100.0); // HAIR TRIGGGER
}
// - SPRINT MOD - - - - - - - - - - - - - - - - - - - - - - - - - - -
#define SPRINT_OFF 0
#define SPRINT_ON 1
static uint8 sprint;
if(event_active(BUTTON_16)|| event_active(BUTTON_5)||
event_active(BUTTON_9)|| is_active(STICK_2_Y)
&& time_release(STICK_2_Y) < 250)
{
sprint = SPRINT_ON;
goto SPRINT_LIGHTBAR;
}
else if(event_active(BUTTON_8)|| event_active(BUTTON_15)||
event_active(BUTTON_17))
{
if(sprint || !sprint)
{
switch(sprint)
{
case SPRINT_OFF: sprint = SPRINT_ON; break;
case SPRINT_ON: sprint = SPRINT_OFF; break;
}
} else sprint = SPRINT_OFF;
SPRINT_LIGHTBAR:
led_reset();
switch(sprint)
{
case SPRINT_OFF: display_overlay(_0_, 500); break;
case SPRINT_ON: display_overlay(_1_, 500); break;
}
}
if(sprint == SPRINT_ON && get_actual(STICK_2_Y) < -95.0){
combo_run(easy_sprint);
}
if(sprint == SPRINT_OFF){
set_val(STICK_2_X, get_val(STICK_2_X) / 1.1);
set_val(STICK_2_Y, get_val(STICK_2_Y) / 1.1);
}
if(get_actual(STICK_2_Y) < -75.0 &&
event_release(BUTTON_15) && time_active(BUTTON_15) < 160)
{
combo_run(BO4_Slide);
}
}
combo Rapidfire
{
set_val(BUTTON_5, 100.0);
wait(rf_active);
set_val(BUTTON_5, rf_release ? 0.0 : 100.0);
wait(rf_release);
set_val(BUTTON_5, rf_release ? 0.0 : 100.0);
}
combo easy_sprint
{
set_val(BUTTON_9, 0.0);
wait(200);
set_val(BUTTON_9, 100.0);
wait(80);
set_val(BUTTON_9, 100.0);
}
combo BO4_Slide
{
set_val(STICK_2_Y,-100.0);
wait(20);
set_val(STICK_2_Y,-100.0);
set_val(BUTTON_9,100.0);
wait(50);
set_val(STICK_2_Y,-100.0);
set_val(BUTTON_15,100.0);
wait(200);
set_val(STICK_2_Y,-100.0);
wait(300);
}
void AntiRecoil(uint8 AxisToApply, float ARecoilToApply)
{
float CurrentX = get_val(STICK_1_X);
float CurrentY = get_val(STICK_1_Y);
float MinARecoilFactor = MinARecoilPercent / 100.0;
float MinARecoilToApply = MinARecoilFactor * ARecoilToApply;
//This sets the ARecoil to be dependent on both X and Y axis movement. With more emphasis on Y
float MovementARecoilToApply = (1.0 - MinARecoilFactor) * ((ARecoilToApply * (100.0 - sqrt(CurrentX*CurrentX + CurrentY*CurrentY))) / (100.0 + abs(CurrentX) + (CurrentY*CurrentY*0.5)));
set_val(AxisToApply, MinARecoilToApply + MovementARecoilToApply + get_val(AxisToApply));
}
bool blinking;
void Blink(uint8 no) {
led_reset();
if(no) led_vmset(LED_1, 150, 500, i+1);
blinking = 1;
}
bool blinker;
void Blinks(uint8 nos) {
led_reset();
if(nos) led_vmset(LED_1, 150, 500, b+1);
blinker = 1;
}
main {
if(blinking && !led_vmget(LED_1)) {
led_reset();
blinking = 0;
}
if(blinker && !led_vmget(LED_1)) {
led_reset();
blinker = 0;
}
}
I have been using this that you can try!
how you use it or active, if you have any tips for use thank you
PS4 PRO | XIM APEX | T2 | FW: the latest | Mon: ASUS 28" MG28UQ | Logitech G440 | Logitech G13 | SteelSeries R600 | SteelSeries Siberia 800 | DumaOS Router
-
Puinsai - Sergeant
- Posts: 8
- Joined: Sun Jan 20, 2019 5:51 am
- Location: FRENCH POLYNESIA
Re: Anti recoil xim apex + bo4 qol slide script?
- Code: Select all
#pragma METAINFO("BO4 BLACKOUT", 1, 0, "bonefisher")
/* Adjusting fire modes which are preset but can be changed in const fix32
wcfg[] which example the first one with 0 blinks is 76.0 active hold trigger
time and 0.0 rf_release trigger time. This is used for a automatic weapon
because it loops a solid press of the fire trigger.
Cycling thru the fire modes you hold ADS trigger and click d-pad up and
the Titan will blink for what fire mode your in of 9 preset settings it will
cycle thru 0 thru 8 then back to 0 starting over again.*/
/* Adjusting anti-recoil which are preset but can be changed in const fix32
warcfg[] which the first one is mostly a stablizer at 16.0 vertical and 0.0
horizontal and most likely below the deadzone so may not move on most games.
Cycling thru the anti-recoil modes you hold ADS trigger and click d-pad
down and the Titan will blink for what anti-recoil mode your in of 9 preset
settings it will cycle thru 0 thru 8 then back to 0 starting over again.*/
/* Switching between primary to secondary default rapid fire setting is done
by releasing fire trigger and quickly applying again fire trigger and returns
to primary configuration when release fire trigger to be ready for use again.
So many changes in this game you may not even use feature but is there in case.
The preset modes are designed to be used the way you set them up which I like
having a couple of burst firing automatics which you may have to tune for gun.*/
/* Easy sprint is applied in different ways so you can still have walk mode.
This can be done by double tap forward movement to start run but doesn't need
double tap every time unless you reload or ads. Also for quick sprint mode
when you fire it is applied so to avoid if need escape quick getting fire apond
also can shut sprint down with ads trigger then back on with ads trigger. */
/* Auto features: slide is done by quick tap on crouch button. Hold breath
is applied when ads trigger is engaged. Has hair triggers on fire and ads.*/
#include <display.gph>
#define wait(a) wait((int)a);
#define float fix32
float rf_active, rf_release;
uint8 bUseAntiRecoil = 1;
uint16 ARecoilDelay = 0;
float MinARecoilPercent = 18.0;
float StickNoise = 6.50;
int psv;
int arv;
int i;
int b;
const fix32 wcfg[] =
{
/*rf_active| rf_release*/
76.0, 0.0, //blink 0
37.5, 37.5, //blink 1
64.0, 16.3, //blink 2
40.5, 120.0,//blink 3
60.0, 120.0,//blink 4
80.0, 120.0,//blink 5
240.0, 40.0,//blink 6
340.0, 80.0,//blink 7
540.0, 80.0 //blink 8
};
const fix32 warcfg[] =
{ //anti_recoil
/*vertical| horizontal*/
16.0, 0.0,//blink 0
20.0, 0.0,//blink 1
24.0, 0.0,//blink 2
26.0, 0.0,//blink 3
28.0, 0.0,//blink 4
30.0, 0.0,//blink 5
32.0, 0.0,//blink 6
36.0, 0.0,//blink 7
40.0, 0.0 //blink 8
};
init
{
psv = 0;
i = 0;
arv = 0;
b = 0;
}
main {
// - WEAPON TRACKING - - - - - - - - - - - - - - - - - - - - - - - - - - -
#define WEAPON_PRIMARY 0
#define WEAPON_SECONDARY 1
static uint8 weapon;
if(event_active(BUTTON_5) && time_release(BUTTON_5) <= 200) {
weapon = WEAPON_SECONDARY;
display_overlay(_P_, 500);
} else if(event_release(BUTTON_5)) {
weapon = WEAPON_PRIMARY;
display_overlay(_S_, 500);
}
if(is_active(BUTTON_8))
{
set_val(BUTTON_10, 0.0);
if(event_active(BUTTON_10)){
psv = psv + 1;
i = i + 1;
if(psv > 8) psv = 0;
if(i > 8) i = 0;
pmem_write(1, psv);
pmem_write(18, i);
pmem_save();
Blink(i);
}
}
// - RAPIDFIRE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(get_actual(BUTTON_5)) {
if(weapon) { // SECONDARY
if(event_active(BUTTON_5)) {
rf_active = 37.5;
rf_release = 37.5;
} combo_run(Rapidfire);
} else { // PRIMARY
if(event_active(BUTTON_5)) {
rf_active = wcfg[2*psv+0];
rf_release = wcfg[2*psv+1];
} combo_run(Rapidfire);
}
} else combo_stop(Rapidfire);
// - ANTI RECOIL - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(is_active(BUTTON_8))
{
set_val(BUTTON_11, 0.0);
if(event_active(BUTTON_11)){
arv = arv + 1;
b = b + 1;
if(arv > 8) arv = 0;
if(b > 8) b = 0;
pmem_write(5, arv);
pmem_write(22, b);
pmem_save();
Blinks(b);
}
}
if (get_actual(BUTTON_5) && time_active(BUTTON_5) >= ARecoilDelay)
{
if (abs(get_actual(STICK_1_X)) < StickNoise) set_val(STICK_1_X, 0.0);
if (abs(get_actual(STICK_1_Y)) < StickNoise) set_val(STICK_1_Y, 0.0);
if (abs(get_actual(STICK_2_X)) < StickNoise) set_val(STICK_2_X, 0.0);
if (abs(get_actual(STICK_2_Y)) < StickNoise) set_val(STICK_2_Y, 0.0);
if (bUseAntiRecoil == 1)
{
if (get_actual(BUTTON_8) && get_val(BUTTON_5))
{
AntiRecoil(STICK_1_Y, warcfg[2*arv+0]);
AntiRecoil(STICK_1_X, warcfg[2*arv+1]);
}
}
}
// - COMMON MODS - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
if(get_actual(BUTTON_5)) {
set_val(BUTTON_5, 100.0); // HAIR TRIGGGER
}
if(get_actual(BUTTON_8)) {
if(get_actual(BUTTON_8) && time_active(BUTTON_8)>= 140) {
set_val(BUTTON_9, 100.0); // HOLD BREATH
}
set_val(BUTTON_8, 100.0); // HAIR TRIGGGER
}
// - SPRINT MOD - - - - - - - - - - - - - - - - - - - - - - - - - - -
#define SPRINT_OFF 0
#define SPRINT_ON 1
static uint8 sprint;
if(event_active(BUTTON_16)|| event_active(BUTTON_5)||
event_active(BUTTON_9)|| is_active(STICK_2_Y)
&& time_release(STICK_2_Y) < 250)
{
sprint = SPRINT_ON;
goto SPRINT_LIGHTBAR;
}
else if(event_active(BUTTON_8)|| event_active(BUTTON_15)||
event_active(BUTTON_17))
{
if(sprint || !sprint)
{
switch(sprint)
{
case SPRINT_OFF: sprint = SPRINT_ON; break;
case SPRINT_ON: sprint = SPRINT_OFF; break;
}
} else sprint = SPRINT_OFF;
SPRINT_LIGHTBAR:
led_reset();
switch(sprint)
{
case SPRINT_OFF: display_overlay(_0_, 500); break;
case SPRINT_ON: display_overlay(_1_, 500); break;
}
}
if(sprint == SPRINT_ON && get_actual(STICK_2_Y) < -95.0){
combo_run(easy_sprint);
}
if(sprint == SPRINT_OFF){
set_val(STICK_2_X, get_val(STICK_2_X) / 1.1);
set_val(STICK_2_Y, get_val(STICK_2_Y) / 1.1);
}
if(event_release(BUTTON_15) && time_active(BUTTON_15) < 160)
{
combo_run(BO4_Slide);
}
}
combo Rapidfire
{
set_val(BUTTON_5, 100.0);
wait(rf_active);
set_val(BUTTON_5, rf_release ? 0.0 : 100.0);
wait(rf_release);
set_val(BUTTON_5, rf_release ? 0.0 : 100.0);
}
combo easy_sprint
{
set_val(BUTTON_9, 0.0);
wait(60);
set_val(BUTTON_9, 100.0);
wait(60);
set_val(BUTTON_9, 100.0);
}
combo BO4_Slide
{
set_val(STICK_2_Y,-100.0);
wait(20);
set_val(STICK_2_Y,-100.0);
set_val(BUTTON_9,100.0);
wait(50);
set_val(STICK_2_Y,-100.0);
set_val(BUTTON_15,100.0);
wait(200);
set_val(STICK_2_Y,-100.0);
wait(300);
}
void AntiRecoil(uint8 AxisToApply, float ARecoilToApply)
{
float CurrentX = get_val(STICK_1_X);
float CurrentY = get_val(STICK_1_Y);
float MinARecoilFactor = MinARecoilPercent / 100.0;
float MinARecoilToApply = MinARecoilFactor * ARecoilToApply;
//This sets the ARecoil to be dependent on both X and Y axis movement. With more emphasis on Y
float MovementARecoilToApply = (1.0 - MinARecoilFactor) * ((ARecoilToApply * (100.0 - sqrt(CurrentX*CurrentX + CurrentY*CurrentY))) / (100.0 + abs(CurrentX) + (CurrentY*CurrentY*0.5)));
set_val(AxisToApply, MinARecoilToApply + MovementARecoilToApply + get_val(AxisToApply));
}
bool blinking;
void Blink(uint8 no) {
led_reset();
if(no) led_vmset(LED_1, 150, 500, i+1);
blinking = 1;
}
bool blinker;
void Blinks(uint8 nos) {
led_reset();
if(nos) led_vmset(LED_1, 150, 500, b+1);
blinker = 1;
}
main {
if(blinking && !led_vmget(LED_1)) {
led_reset();
blinking = 0;
}
if(blinker && !led_vmget(LED_1)) {
led_reset();
blinker = 0;
}
}
Info in green top of script now!
- bonefisher
- Lieutenant General
- Posts: 5413
- Joined: Thu Jan 29, 2015 10:49 am
5 posts
• Page 1 of 1
Return to GPC2 Script Programming
Who is online
Users browsing this forum: MSN [Bot] and 81 guests