KB + XIM + Titan2 - Fortnite Combos
Re: KB + XIM + Titan2 - Fortnite Combos
Awesome!
That's pretty much the fastest script around.
Good Job MAL8010
Here is my setup:
Input Translator
My Mouse Side Button is Build,
WASD for movement and Q(Previus Weapon), E(Next Weapon)
I use the Orbweaver, like this:
That's pretty much the fastest script around.
Good Job MAL8010
Here is my setup:
- Code: Select all
#pragma METAINFO("<Mark", 1, 0, "FORTNITE BUILDER PRO - McGregor Turbo Build - M&KB-BuildArrows")
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_14 //manual reset of tracking (pickaxe)
#define Wall (KEY_RIGHTARROW)
#define Floor (KEY_DOWNARROW)
#define Stair (KEY_LEFTARROW)
#define RB (KEY_E)
#define Build (MBUTTON_4)
#define Fire (MBUTTON_1)
#define ADS (MBUTTON_2)
#define InitailEnd_Wait 30
#define SameButton_Wait 60
#define GenericBetweenButton_Wait 60
//mode and tracker
int mode;
int NavState;
//building hotkeys and tracker
int LastPieceBuild; // 0 = NULL | 1 = Wall | 2 = Floor | 3 = Stair |
main {
mouse_passthru();
key_passthru();
//------------------------------------------------------------------------------
//MODE TRACKING
if (mode == 0) {
set_light('B');
}
if (mode == 1) {
set_light('G');
}
if (mode > 1) {
mode = 0;}
if ((event_release(BUTTON_15)) && (mode == 0)){
mode = 1; //building mode
}
else if (event_release(BUTTON_15) && (mode == 1)) {
mode = 0; //combat mode
}
if ((event_release(BUTTON_14)) && (mode == 1)) {
mode = 0; //building mode to axe
}
//------------------------------------------------------------------------------
//TRACKER RESETS
//manual tracker reset to pickaxe
if (event_active(Reset)) {
mode = 0;
}
//Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11) || event_release (BUTTON_13)) {
NavState = 1;}
// Pressing B to cancel resets
if (event_release (BUTTON_15) && NavState) {
mode = mode + 1;
NavState = 0;}
///------------------------------------------------------------------------------
// LOAD-OUTS
if(key_status(Wall)){
if(mode == 0){ //is on Combat Mode
combo_run(BuildWall); //build the first new wall
}
else
if((mode == 1) && (LastPieceBuild != 1)){ //if last piece is not a Wall, double tap RT
combo_run(RT2);
}
else
if((mode == 1) && (LastPieceBuild == 1)){ // if last piece as wall, turbo mode on
combo_run(RT1);
}
}
if(key_status(Floor)){
if(mode == 0){
combo_run(BuildFloor);
}
else
if((mode == 1) && (LastPieceBuild != 2)){
combo_run(RB2);
}
else
if((mode == 1) && (LastPieceBuild == 2)){
combo_run(RB1);
}
}
if(key_status(Stair)){
if(mode == 0){
combo_run(BuildStair);
}
else
if((mode == 1) && (LastPieceBuild != 3)){
combo_run(ADS2);
}
else
if((mode == 1) && (LastPieceBuild == 3)){
combo_run(ADS1);
}
}
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
//------------------------------------------------------------------------------
//LED
if (mode == 1){
switch(LastPieceBuild) {
// case 0: display_overlay(_0_, 2000); break;
case 1: display_overlay(_1_, 2000); break;
case 2: display_overlay(_2_, 2000); break;
case 3: display_overlay(_3_, 2000); break;
}
}
if (mode == 0) {
display_overlay(_0_, 2000); }
} // main
combo BuildWall {
wait(InitailEnd_Wait);
mouse_set(Build, 1);
wait(SameButton_Wait);
mouse_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 1;
}
combo BuildFloor {
wait(InitailEnd_Wait);
mouse_set(Build, 1);
wait(SameButton_Wait);
mouse_set(Build, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 2;
}
combo BuildStair {
wait(InitailEnd_Wait);
mouse_set(Build, 1);
wait(SameButton_Wait);
mouse_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 3;
}
combo RT2 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB2 {
wait(InitailEnd_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS2 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo RT1 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB1 {
wait(InitailEnd_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS1 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
Input Translator
My Mouse Side Button is Build,
WASD for movement and Q(Previus Weapon), E(Next Weapon)
I use the Orbweaver, like this:
-
alanmcgregor - Major
- Posts: 981
- Joined: Tue Mar 27, 2018 8:38 am
Re: KB + XIM + Titan2 - Fortnite Combos
Heyho
Im at home now and was able to play some rounds with the new script, its nice, but I have one problem.
I dont like to open build mode first, I want it same before with only one button. I will try to edit the script to my liking, but I think it isnt only "add circle" to every combo, because of the tracking. I hope somebody can help me.
Here is my code:
I dont use any Input-Translator on my T2.
Cheers and thanks for your work
Im at home now and was able to play some rounds with the new script, its nice, but I have one problem.
I dont like to open build mode first, I want it same before with only one button. I will try to edit the script to my liking, but I think it isnt only "add circle" to every combo, because of the tracking. I hope somebody can help me.
Here is my code:
- Code: Select all
#pragma METAINFO("<MAL APEX + T2", 1, 0, "")
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_14 //manual reset of tracking (pickaxe)
#define Wall (KEY_Y)
#define Floor (KEY_U)
#define Stair (KEY_I)
#define RB (KEY_E)
#define Build (KEY_F)
#define Fire (MBUTTON_1)
#define ADS (MBUTTON_2)
#define InitailEnd_Wait 30
#define SameButton_Wait 60
#define GenericBetweenButton_Wait 60
fix32 minv2 = 23.00*23.00 ; // adjust so resting position never register.
//mode and tracker
int mode;
int NavState;
//building hotkeys and tracker
int LastPieceBuild; // 0 = NULL | 1 = Wall | 2 = Floor | 3 = Stair |
init {
//------------------------------------------------------------------------------
// KEYBOARD BINDINGS
const uint8 map[] = {
MOUSE_X, STICK_1_X,
MOUSE_Y, STICK_1_Y,
};
const uint8 map2[] = {
KEY_W, STICK_2_Y | KEYMAP_NEGATIVE,
KEY_A, STICK_2_X | KEYMAP_NEGATIVE,
KEY_S, STICK_2_Y,
KEY_D, STICK_2_X,
KEY_ESCAPE, BUTTON_3, // XBOX
KEY_TAB, BUTTON_10, // VIEW
KEY_F12, BUTTON_1,
KEY_PAUSE, BUTTON_11,
// BUTTON_3, // MENU
// BUTTON_4, // RB
// BUTTON_5, // RT
// KEY_C, BUTTON_6, // RS
// BUTTON_7, // LB
// BUTTON_8, // LT
KEY_LEFTSHIFT, BUTTON_9, // LS
// KEY_CAPSLOCK, BUTTON_10, // UP
KEY_DOWNARROW, BUTTON_11, // DOWN
KEY_UPARROW, BUTTON_2,
KEY_LEFTARROW, BUTTON_12,
KEY_RIGHTARROW, BUTTON_13,
// BUTTON_12, // LEFT
// BUTTON_13, // RIGHT
KEY_R, BUTTON_17,
KEY_K, BUTTON_14,
KEY_F, BUTTON_15,
KEY_Q, BUTTON_7,
KEY_E, BUTTON_4,
// Y
// BUTTON_15, // B
KEY_SPACEBAR, BUTTON_16, // A
KEY_LEFTCONTROL, BUTTON_6, // X
};
keymapping(map2);
mousemapping(map);
}
main {
mouse_passthru();
key_passthru();
if(key_status(KEY_1)) {
combo_run(dance1);
}
if(key_status(KEY_2)) {
combo_run(dance2);
}
if(key_status(KEY_3)) {
combo_run(dance3);
}
if(key_status(KEY_4)) {
combo_run(dance4);
}
if(key_status(KEY_5)) {
combo_run(dance5);
}
if(key_status(KEY_6)) {
combo_run(dance6);
}
//------------------------------------------------------------------------------
//MODE TRACKING
if (mode == 0) {
set_light('G');
}
if (mode == 1) {
set_light('R');
}
if (mode > 1) {
mode = 0;}
if ((event_release(BUTTON_15)) && (mode == 0)){
mode = 1; //building mode
}
else if (event_release(BUTTON_15) && (mode == 1)) {
mode = 0; //combat mode
}
if ((event_release(BUTTON_14)) && (mode == 1)) {
mode = 0; //building mode to axe
}
//------------------------------------------------------------------------------
//TRACKER RESETS
//manual tracker reset to pickaxe
if (event_active(Reset)) {
mode = 0;
}
//Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11) || event_release (BUTTON_13)) {
NavState = 1;}
// Pressing B to cancel resets
if (event_release (BUTTON_15) && NavState) {
mode = mode + 1;
NavState = 0;}
///------------------------------------------------------------------------------
// LOAD-OUTS
if(key_status(Wall)){
if(mode == 0){ //is on Combat Mode
combo_run(BuildWall); //build the first new wall
}
else
if((mode == 1) && (LastPieceBuild != 1)){ //if last piece is not a Wall, double tap RT
combo_run(RT2);
}
else
if((mode == 1) && (LastPieceBuild == 1)){ // if last piece as wall, turbo mode on
combo_run(RT1);
}
}
if(key_status(Floor)){
if(mode == 0){
combo_run(BuildFloor);
}
else
if((mode == 1) && (LastPieceBuild != 2)){
combo_run(RB2);
}
else
if((mode == 1) && (LastPieceBuild == 2)){
combo_run(RB1);
}
}
if(key_status(Stair)){
if(mode == 0){
combo_run(BuildStair);
}
else
if((mode == 1) && (LastPieceBuild != 3)){
combo_run(ADS2);
}
else
if((mode == 1) && (LastPieceBuild == 3)){
combo_run(ADS1);
}
}
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
//------------------------------------------------------------------------------
//LED
if (mode == 1){
switch(LastPieceBuild) {
// case 0: display_overlay(_0_, 2000); break;
case 1: display_overlay(_1_, 2000); break;
case 2: display_overlay(_2_, 2000); break;
case 3: display_overlay(_3_, 2000); break;
}
}
if (mode == 0) {
display_overlay(_0_, 2000); }
} // main
combo BuildWall {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 1;
}
combo BuildFloor {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 2;
}
combo BuildStair {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 3;
}
combo RT2 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB2 {
wait(InitailEnd_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS2 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo ADS3 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo RT1 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB1 {
wait(InitailEnd_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS1 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo dance1 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(160);
mouse_set(MOUSE_Y, -100);
wait(120);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, 100);
}
combo dance2 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_Y, 100);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, -100);
}
combo dance3 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -40);
}
combo dance4 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 50);
}
combo dance5 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -50);
}
combo dance6 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 40);
}
void WASD(uint8 io_x, uint8 io_y){
fix32 rx = get_actual(io_x) ;
fix32 ry = get_actual(io_y) ;
fix32 ovl = 10.00; // 20 degrees overlap so diagonals movement also register
fix32 angle = atan2(ry,rx) * 180.00 / PI;
fix32 radius2 = rx*rx + ry*ry ;
if ( radius2 >= minv2 ) {
//W
if ( angle < (-45.00+ovl) && angle > (-135.00-ovl) ) { key_set(KEY_W,1);}
//A
if ( abs(angle) > (135.00-ovl) ) { key_set(KEY_A,1);}
//S
if ( angle > (45.00-ovl) && angle < (135.00+ovl) ) { key_set(KEY_S,1);}
//D
if (abs(angle) < (45.00+ovl) ) { key_set(KEY_D,1);}
}
return;
}
I dont use any Input-Translator on my T2.
Cheers and thanks for your work
-
Silktouch - Sergeant Major
- Posts: 70
- Joined: Sat Mar 03, 2018 2:57 pm
Re: KB + XIM + Titan2 - Fortnite Combos
Silktouch wrote:Heyho
Im at home now and was able to play some rounds with the new script, its nice, but I have one problem.
I dont like to open build mode first, I want it same before with only one button. I will try to edit the script to my liking, but I think it isnt only "add circle" to every combo, because of the tracking. I hope somebody can help me.
Here is my code:
- Code: Select all
#pragma METAINFO("<MAL APEX + T2", 1, 0, "")
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_14 //manual reset of tracking (pickaxe)
#define Wall (KEY_Y)
#define Floor (KEY_U)
#define Stair (KEY_I)
#define RB (KEY_E)
#define Build (KEY_F)
#define Fire (MBUTTON_1)
#define ADS (MBUTTON_2)
#define InitailEnd_Wait 30
#define SameButton_Wait 60
#define GenericBetweenButton_Wait 60
fix32 minv2 = 23.00*23.00 ; // adjust so resting position never register.
//mode and tracker
int mode;
int NavState;
//building hotkeys and tracker
int LastPieceBuild; // 0 = NULL | 1 = Wall | 2 = Floor | 3 = Stair |
init {
//------------------------------------------------------------------------------
// KEYBOARD BINDINGS
const uint8 map[] = {
MOUSE_X, STICK_1_X,
MOUSE_Y, STICK_1_Y,
};
const uint8 map2[] = {
KEY_W, STICK_2_Y | KEYMAP_NEGATIVE,
KEY_A, STICK_2_X | KEYMAP_NEGATIVE,
KEY_S, STICK_2_Y,
KEY_D, STICK_2_X,
KEY_ESCAPE, BUTTON_3, // XBOX
KEY_TAB, BUTTON_10, // VIEW
KEY_F12, BUTTON_1,
KEY_PAUSE, BUTTON_11,
// BUTTON_3, // MENU
// BUTTON_4, // RB
// BUTTON_5, // RT
// KEY_C, BUTTON_6, // RS
// BUTTON_7, // LB
// BUTTON_8, // LT
KEY_LEFTSHIFT, BUTTON_9, // LS
// KEY_CAPSLOCK, BUTTON_10, // UP
KEY_DOWNARROW, BUTTON_11, // DOWN
KEY_UPARROW, BUTTON_2,
KEY_LEFTARROW, BUTTON_12,
KEY_RIGHTARROW, BUTTON_13,
// BUTTON_12, // LEFT
// BUTTON_13, // RIGHT
KEY_R, BUTTON_17,
KEY_K, BUTTON_14,
KEY_F, BUTTON_15,
KEY_Q, BUTTON_7,
KEY_E, BUTTON_4,
// Y
// BUTTON_15, // B
KEY_SPACEBAR, BUTTON_16, // A
KEY_LEFTCONTROL, BUTTON_6, // X
};
keymapping(map2);
mousemapping(map);
}
main {
mouse_passthru();
key_passthru();
if(key_status(KEY_1)) {
combo_run(dance1);
}
if(key_status(KEY_2)) {
combo_run(dance2);
}
if(key_status(KEY_3)) {
combo_run(dance3);
}
if(key_status(KEY_4)) {
combo_run(dance4);
}
if(key_status(KEY_5)) {
combo_run(dance5);
}
if(key_status(KEY_6)) {
combo_run(dance6);
}
//------------------------------------------------------------------------------
//MODE TRACKING
if (mode == 0) {
set_light('G');
}
if (mode == 1) {
set_light('R');
}
if (mode > 1) {
mode = 0;}
if ((event_release(BUTTON_15)) && (mode == 0)){
mode = 1; //building mode
}
else if (event_release(BUTTON_15) && (mode == 1)) {
mode = 0; //combat mode
}
if ((event_release(BUTTON_14)) && (mode == 1)) {
mode = 0; //building mode to axe
}
//------------------------------------------------------------------------------
//TRACKER RESETS
//manual tracker reset to pickaxe
if (event_active(Reset)) {
mode = 0;
}
//Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11) || event_release (BUTTON_13)) {
NavState = 1;}
// Pressing B to cancel resets
if (event_release (BUTTON_15) && NavState) {
mode = mode + 1;
NavState = 0;}
///------------------------------------------------------------------------------
// LOAD-OUTS
if(key_status(Wall)){
if(mode == 0){ //is on Combat Mode
combo_run(BuildWall); //build the first new wall
}
else
if((mode == 1) && (LastPieceBuild != 1)){ //if last piece is not a Wall, double tap RT
combo_run(RT2);
}
else
if((mode == 1) && (LastPieceBuild == 1)){ // if last piece as wall, turbo mode on
combo_run(RT1);
}
}
if(key_status(Floor)){
if(mode == 0){
combo_run(BuildFloor);
}
else
if((mode == 1) && (LastPieceBuild != 2)){
combo_run(RB2);
}
else
if((mode == 1) && (LastPieceBuild == 2)){
combo_run(RB1);
}
}
if(key_status(Stair)){
if(mode == 0){
combo_run(BuildStair);
}
else
if((mode == 1) && (LastPieceBuild != 3)){
combo_run(ADS2);
}
else
if((mode == 1) && (LastPieceBuild == 3)){
combo_run(ADS1);
}
}
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
//------------------------------------------------------------------------------
//LED
if (mode == 1){
switch(LastPieceBuild) {
// case 0: display_overlay(_0_, 2000); break;
case 1: display_overlay(_1_, 2000); break;
case 2: display_overlay(_2_, 2000); break;
case 3: display_overlay(_3_, 2000); break;
}
}
if (mode == 0) {
display_overlay(_0_, 2000); }
} // main
combo BuildWall {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 1;
}
combo BuildFloor {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 2;
}
combo BuildStair {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 3;
}
combo RT2 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB2 {
wait(InitailEnd_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS2 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo ADS3 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo RT1 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB1 {
wait(InitailEnd_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS1 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo dance1 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(160);
mouse_set(MOUSE_Y, -100);
wait(120);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, 100);
}
combo dance2 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_Y, 100);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, -100);
}
combo dance3 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -40);
}
combo dance4 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 50);
}
combo dance5 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -50);
}
combo dance6 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 40);
}
void WASD(uint8 io_x, uint8 io_y){
fix32 rx = get_actual(io_x) ;
fix32 ry = get_actual(io_y) ;
fix32 ovl = 10.00; // 20 degrees overlap so diagonals movement also register
fix32 angle = atan2(ry,rx) * 180.00 / PI;
fix32 radius2 = rx*rx + ry*ry ;
if ( radius2 >= minv2 ) {
//W
if ( angle < (-45.00+ovl) && angle > (-135.00-ovl) ) { key_set(KEY_W,1);}
//A
if ( abs(angle) > (135.00-ovl) ) { key_set(KEY_A,1);}
//S
if ( angle > (45.00-ovl) && angle < (135.00+ovl) ) { key_set(KEY_S,1);}
//D
if (abs(angle) < (45.00+ovl) ) { key_set(KEY_D,1);}
}
return;
}
I dont use any Input-Translator on my T2.
Cheers and thanks for your work
The combo's work the same as before, just press your piece keys to build the desired piece
-
MAL8010 - Sergeant Major of the Army
- Posts: 263
- Joined: Sun Feb 05, 2017 3:12 pm
Re: KB + XIM + Titan2 - Fortnite Combos
Edit: Ok, all work now. Had some problems with "mouse_set, key_set". But I must say, I like the old building with Combat-Pro more. With the new building I have so many tracking errors and sometime I want to shoot my weapon but nothing happens. But the old script is perfect for now, I think I will wait for an updated Builder-Pro, maybe then its more usable for me.
-
Silktouch - Sergeant Major
- Posts: 70
- Joined: Sat Mar 03, 2018 2:57 pm
Re: KB + XIM + Titan2 - Fortnite Combos
Silktouch wrote:Edit: Ok, all work now. Had some problems with "mouse_set, key_set". But I must say, I like the old building with Combat-Pro more. With the new building I have so many tracking errors and sometime I want to shoot my weapon but nothing happens. But the old script is perfect for now, I think I will wait for an updated Builder-Pro, maybe then its more usable for me.
If you are having consistent issues with building wrong piece then you likely have an error in the script or in game latency is causing an issue. Works fine for me.
With regards firing and nothing happening that's a known in game problem for this controller layout. https://trello.com/b/Bs7hgkma/fortnite-community-issues
-
MAL8010 - Sergeant Major of the Army
- Posts: 263
- Joined: Sun Feb 05, 2017 3:12 pm
Re: KB + XIM + Titan2 - Fortnite Combos
Silktouch wrote:Edit: Ok, all work now. Had some problems with "mouse_set, key_set". But I must say, I like the old building with Combat-Pro more. With the new building I have so many tracking errors and sometime I want to shoot my weapon but nothing happens. But the old script is perfect for now, I think I will wait for an updated Builder-Pro, maybe then its more usable for me.
No problems here too.
Seems something on your code or latency issues.
The code is pretty straight forward as it is, I don't see how can be more updated. Actually this script uses less tracking than the Combat Pro one.
Scripts do not reprogram the game, is more like having a robot doing keystrokes and manage events for you, as precise as possible. Less keystrokes always be better, faster and less prone to network issues.
-
alanmcgregor - Major
- Posts: 981
- Joined: Tue Mar 27, 2018 8:38 am
Re: KB + XIM + Titan2 - Fortnite Combos
alanmcgregor wrote:Silktouch wrote:Edit: Ok, all work now. Had some problems with "mouse_set, key_set". But I must say, I like the old building with Combat-Pro more. With the new building I have so many tracking errors and sometime I want to shoot my weapon but nothing happens. But the old script is perfect for now, I think I will wait for an updated Builder-Pro, maybe then its more usable for me.
No problems here too.
Seems something on your code or latency issues.
The code is pretty straight forward as it is, I don't see how can be more updated. Actually this script uses less tracking than the Combat Pro one.
Scripts do not reprogram the game, is more like having a robot doing keystrokes and manage events for you, as precise as possible. Less keystrokes always be better, faster and less prone to network issues.
Will try it out again, I think to its something with my code.
With updated I meant the "Builder-Pro" Config, maybe with only one button press after entering building mode, many people requested that.
-
Silktouch - Sergeant Major
- Posts: 70
- Joined: Sat Mar 03, 2018 2:57 pm
Re: KB + XIM + Titan2 - Fortnite Combos
HI Mark
I've been working hours on this and read thru all the posts numerous times and think I am real close but just cant get it to work.
Xbox1 + Nav Controller + G502 Mouse
I saved this following script into slot 1 on the Titan 2.
I saved the IT into slot 1 on Titan 2
I compiled it with no errors.
I then plug Nav and G502 into T2. T2 into slot 2 on Apex Hub. XBox controller into slot 1 on Apex Hub. Apex Hub into Apex. Apex into Console.
When I push the side buttons on the mouse that I have assigned to build pieces, the display on the TItan2 does change b/t 1, 2 and 3 and red light comes on.
The output light on Titan 2 does not light up, and Apex Manager does not recognize Titan 2. No Nav or Mouse actions make it through to the Apex.
Any thoughts would be appreciated.
Thanks!
I've been working hours on this and read thru all the posts numerous times and think I am real close but just cant get it to work.
Xbox1 + Nav Controller + G502 Mouse
I saved this following script into slot 1 on the Titan 2.
I saved the IT into slot 1 on Titan 2
I compiled it with no errors.
- Code: Select all
#pragma METAINFO("<Mark>", 1, 0, "Fortnite Builder")
#ifndef PS3NAV_GPH_
#define PS3NAV_GPH_
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#include <ps3.gph>
#define Reset BUTTON_14 //manual reset of tracking (pickaxe)
#define Wall (KEY_B)
#define Floor (KEY_N)
#define Stair (KEY_J)
#define RB (MOUSE_WHEEL)
#define Build (KEY_END)
#define Fire (MBUTTON_1)
#define ADS (KEY_SPACEBAR)
#define InitailEnd_Wait 30
#define SameButton_Wait 60
#define GenericBetweenButton_Wait 60
fix32 minv2 = 23.00*23.00 ; // adjust so resting position never register.
//mode and tracker
int mode;
int NavState;
//building hotkeys and tracker
int LastPieceBuild; // 0 = NULL | 1 = Wall | 2 = Floor | 3 = Stair |
main {
mouse_passthru();
key_passthru();
//------------------------------------------------------------------------------
//NAV MAPPING
if (get_actual(PS3_UP)) { key_set(KEY_UPARROW,1);}
if (get_actual(PS3_L1)) { key_set(KEY_P,1); }
if (get_actual(PS3_L2)) { key_set(KEY_SPACEBAR,1); }
if (get_actual(PS3_L3)) { key_set(KEY_LEFTSHIFT,1); }
if (get_actual(PS3_PS)) { key_set(KEY_ESCAPE,1); }
if (get_actual(PS3_DOWN)) { key_set(KEY_DOWNARROW ,1); }
if (get_actual(PS3_LEFT)) { key_set(KEY_LEFTARROW ,1); }
if (get_actual(PS3_RIGHT)) { key_set(KEY_RIGHTARROW ,1); }
if (get_actual(PS3_UP)) { key_set(KEY_UPARROW,1);}
if (get_actual(PS3_CIRCLE)) { key_set(KEY_H,1);}
if (get_actual(PS3_CROSS)) { key_set(KEY_G,1);}
if (get_actual(PS3_SELECT)) { key_set(KEY_V,1);}
if (get_actual(PS3_TRIANGLE)) { key_set(KEY_Y,1);}
if (get_actual(STICK_2_X)||get_actual(STICK_2_Y)) {
set_val(STICK_2_X,0);
set_val(STICK_2_Y,0);
WASD(STICK_2_X,STICK_2_Y);
}
//------------------------------------------------------------------------------
//MODE TRACKING
if (mode == 0) {
set_light('G');
}
if (mode == 1) {
set_light('R');
}
if (mode > 1) {
mode = 0;}
if ((event_release(BUTTON_15)) && (mode == 0)){
mode = 1; //building mode
}
else if (event_release(BUTTON_15) && (mode == 1)) {
mode = 0; //combat mode
}
if ((event_release(BUTTON_14)) && (mode == 1)) {
mode = 0; //building mode to axe
}
//------------------------------------------------------------------------------
//TRACKER RESETS
//manual tracker reset to pickaxe
if (event_active(Reset)) {
mode = 0;
}
//Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11) || event_release (BUTTON_13)) {
NavState = 1;}
// Pressing B to cancel resets
if (event_release (BUTTON_15) && NavState) {
mode = mode + 1;
NavState = 0;}
///------------------------------------------------------------------------------
// LOAD-OUTS
if(key_status(Wall)){
if(mode == 0){ //is on Combat Mode
combo_run(BuildWall); //build the first new wall
}
else
if((mode == 1) && (LastPieceBuild != 1)){ //if last piece is not a Wall, double tap RT
combo_run(RT2);
}
else
if((mode == 1) && (LastPieceBuild == 1)){ // if last piece as wall, turbo mode on
combo_run(RT1);
}
}
if(key_status(Floor)){
if(mode == 0){
combo_run(BuildFloor);
}
else
if((mode == 1) && (LastPieceBuild != 2)){
combo_run(RB2);
}
else
if((mode == 1) && (LastPieceBuild == 2)){
combo_run(RB1);
}
}
if(key_status(Stair)){
if(mode == 0){
combo_run(BuildStair);
}
else
if((mode == 1) && (LastPieceBuild != 3)){
combo_run(ADS2);
}
else
if((mode == 1) && (LastPieceBuild == 3)){
combo_run(ADS1);
}
}
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
//------------------------------------------------------------------------------
//LED
if (mode == 1){
switch(LastPieceBuild) {
// case 0: display_overlay(_0_, 2000); break;
case 1: display_overlay(_1_, 2000); break;
case 2: display_overlay(_2_, 2000); break;
case 3: display_overlay(_3_, 2000); break;
}
}
if (mode == 0) {
display_overlay(_0_, 2000); }
} // main
combo BuildWall {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 1;
}
combo BuildFloor {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 2;
}
combo BuildStair {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 3;
}
combo RT2 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB2 {
wait(InitailEnd_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(GenericBetweenButton_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS2 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo ADS3 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(GenericBetweenButton_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo RT1 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB1 {
wait(InitailEnd_Wait);
mouse_set(RB, -1);
wait(SameButton_Wait);
mouse_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS1 {
wait(InitailEnd_Wait);
key_set(ADS, 1);
wait(SameButton_Wait);
key_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
void WASD(uint8 io_x, uint8 io_y){
fix32 rx = get_actual(io_x) ;
fix32 ry = get_actual(io_y) ;
fix32 ovl = 10.00; // 20 degrees overlap so diagonals movement also register
fix32 angle = atan2(ry,rx) * 180.00 / PI;
fix32 radius2 = rx*rx + ry*ry ;
if ( radius2 >= minv2 ) {
//W
if ( angle < (-45.00+ovl) && angle > (-135.00-ovl) ) { key_set(KEY_W,1);}
//A
if ( abs(angle) > (135.00-ovl) ) { key_set(KEY_A,1);}
//S
if ( angle > (45.00-ovl) && angle < (135.00+ovl) ) { key_set(KEY_S,1);}
//D
if (abs(angle) < (45.00+ovl) ) { key_set(KEY_D,1);}
}
return;
}
#endif
I then plug Nav and G502 into T2. T2 into slot 2 on Apex Hub. XBox controller into slot 1 on Apex Hub. Apex Hub into Apex. Apex into Console.
When I push the side buttons on the mouse that I have assigned to build pieces, the display on the TItan2 does change b/t 1, 2 and 3 and red light comes on.
The output light on Titan 2 does not light up, and Apex Manager does not recognize Titan 2. No Nav or Mouse actions make it through to the Apex.
Any thoughts would be appreciated.
Thanks!
Last edited by Umby18 on Fri Apr 20, 2018 12:50 pm, edited 1 time in total.
-
Umby18 - Sergeant
- Posts: 7
- Joined: Sat Apr 14, 2018 8:52 pm
Re: KB + XIM + Titan2 - Fortnite Combos
So I tried more today and now I know the big problems that I have with this new "builder-pro" setup:
1. In nearly 90% I cant edit my buildings, rarely, I dont know why, I can easily select my pieces (the blue pieces in edit mode), but in most of the time nothing happens when I click the blue boxes. One time I was able to edit my wall, but stairs its just not possible, its same I dont click the boxes.
2. Editing is one big point for me too that leads to tracking errors, sometimes I left editing mode and after quit building mode but my T2 thinks im still in BM.
I know Alan dont play that much, maybe it never happens to him. But MAL, I think you play more then him, this ever happened to you? I hope no, because then its only a code thing, but I dont know what, because I changed nothing.
Here is my code:
I hope somebody can help me with this, because it feels smoother with building, but with this "bugs" I cant use it (must destroy all my walls, because I cant edit :D)
Cheers
1. In nearly 90% I cant edit my buildings, rarely, I dont know why, I can easily select my pieces (the blue pieces in edit mode), but in most of the time nothing happens when I click the blue boxes. One time I was able to edit my wall, but stairs its just not possible, its same I dont click the boxes.
2. Editing is one big point for me too that leads to tracking errors, sometimes I left editing mode and after quit building mode but my T2 thinks im still in BM.
I know Alan dont play that much, maybe it never happens to him. But MAL, I think you play more then him, this ever happened to you? I hope no, because then its only a code thing, but I dont know what, because I changed nothing.
Here is my code:
- Code: Select all
#pragma METAINFO("<MAL APEX + T2", 1, 0, "")
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_14 //manual reset of tracking (pickaxe)
#define Wall (KEY_Y)
#define Floor (KEY_U)
#define Stair (KEY_I)
#define RB (KEY_E)
#define Build (KEY_F)
#define Fire (MBUTTON_1)
#define ADS (MBUTTON_2)
#define InitailEnd_Wait 40
#define SameButton_Wait 80
#define GenericBetweenButton_Wait 80
fix32 minv2 = 23.00*23.00 ; // adjust so resting position never register.
//mode and tracker
int mode;
int NavState;
//building hotkeys and tracker
int LastPieceBuild; // 0 = NULL | 1 = Wall | 2 = Floor | 3 = Stair |
init {
//------------------------------------------------------------------------------
// KEYBOARD BINDINGS
const uint8 map[] = {
MOUSE_X, STICK_1_X,
MOUSE_Y, STICK_1_Y,
};
const uint8 map2[] = {
KEY_W, STICK_2_Y | KEYMAP_NEGATIVE,
KEY_A, STICK_2_X | KEYMAP_NEGATIVE,
KEY_S, STICK_2_Y,
KEY_D, STICK_2_X,
KEY_ESCAPE, BUTTON_3, // XBOX
KEY_TAB, BUTTON_10, // VIEW
KEY_F12, BUTTON_1,
KEY_PAUSE, BUTTON_11,
// BUTTON_3, // MENU
// BUTTON_4, // RB
// BUTTON_5, // RT
// KEY_C, BUTTON_6, // RS
// BUTTON_7, // LB
// BUTTON_8, // LT
KEY_LEFTSHIFT, BUTTON_9, // LS
// KEY_CAPSLOCK, BUTTON_10, // UP
KEY_DOWNARROW, BUTTON_11, // DOWN
KEY_UPARROW, BUTTON_2,
KEY_LEFTARROW, BUTTON_12,
KEY_RIGHTARROW, BUTTON_13,
// BUTTON_12, // LEFT
// BUTTON_13, // RIGHT
KEY_R, BUTTON_17,
KEY_K, BUTTON_14,
KEY_F, BUTTON_15,
KEY_Q, BUTTON_7,
KEY_E, BUTTON_4,
// Y
// BUTTON_15, // B
KEY_SPACEBAR, BUTTON_16, // A
KEY_LEFTCONTROL, BUTTON_6, // X
};
keymapping(map2);
mousemapping(map);
}
main {
mouse_passthru();
key_passthru();
if(key_status(KEY_1)) {
combo_run(dance1);
}
if(key_status(KEY_2)) {
combo_run(dance2);
}
if(key_status(KEY_3)) {
combo_run(dance3);
}
if(key_status(KEY_4)) {
combo_run(dance4);
}
if(key_status(KEY_5)) {
combo_run(dance5);
}
if(key_status(KEY_6)) {
combo_run(dance6);
}
//------------------------------------------------------------------------------
//MODE TRACKING
if (mode == 0) {
set_light('G');
}
if (mode == 1) {
set_light('R');
}
if (mode > 1) {
mode = 0;}
if ((event_release(BUTTON_15)) && (mode == 0)){
mode = 1; //building mode
}
else if (event_release(BUTTON_15) && (mode == 1)) {
mode = 0; //combat mode
}
if ((event_release(BUTTON_14)) && (mode == 1)) {
mode = 0; //building mode to axe
}
//------------------------------------------------------------------------------
//TRACKER RESETS
//manual tracker reset to pickaxe
if (event_active(Reset)) {
mode = 0;
}
//Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11) || event_release (BUTTON_13)) {
NavState = 1;}
// Pressing B to cancel resets
if (event_release (BUTTON_15) && NavState) {
mode = mode + 1;
NavState = 0;}
///------------------------------------------------------------------------------
// LOAD-OUTS
if(key_status(Wall)){
if(mode == 0){ //is on Combat Mode
combo_run(BuildWall); //build the first new wall
}
else
if((mode == 1) && (LastPieceBuild != 1)){ //if last piece is not a Wall, double tap RT
combo_run(RT2);
}
else
if((mode == 1) && (LastPieceBuild == 1)){ // if last piece as wall, turbo mode on
combo_run(RT1);
}
}
if(key_status(Floor)){
if(mode == 0){
combo_run(BuildFloor);
}
else
if((mode == 1) && (LastPieceBuild != 2)){
combo_run(RB2);
}
else
if((mode == 1) && (LastPieceBuild == 2)){
combo_run(RB1);
}
}
if(key_status(Stair)){
if(mode == 0){
combo_run(BuildStair);
}
else
if((mode == 1) && (LastPieceBuild != 3)){
combo_run(ADS2);
}
else
if((mode == 1) && (LastPieceBuild == 3)){
combo_run(ADS1);
}
}
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
//------------------------------------------------------------------------------
//LED
if (mode == 1){
switch(LastPieceBuild) {
// case 0: display_overlay(_0_, 2000); break;
case 1: display_overlay(_1_, 2000); break;
case 2: display_overlay(_2_, 2000); break;
case 3: display_overlay(_3_, 2000); break;
}
}
if (mode == 0) {
display_overlay(_0_, 2000); }
} // main
combo BuildWall {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 1;
}
combo BuildFloor {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 2;
}
combo BuildStair {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 3;
}
combo RT2 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB2 {
wait(InitailEnd_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS2 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo ADS3 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo RT1 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB1 {
wait(InitailEnd_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS1 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo dance1 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(160);
mouse_set(MOUSE_Y, -100);
wait(120);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, 100);
}
combo dance2 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_Y, 100);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, -100);
}
combo dance3 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -40);
}
combo dance4 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 50);
}
combo dance5 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -50);
}
combo dance6 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 40);
}
void WASD(uint8 io_x, uint8 io_y){
fix32 rx = get_actual(io_x) ;
fix32 ry = get_actual(io_y) ;
fix32 ovl = 10.00; // 20 degrees overlap so diagonals movement also register
fix32 angle = atan2(ry,rx) * 180.00 / PI;
fix32 radius2 = rx*rx + ry*ry ;
if ( radius2 >= minv2 ) {
//W
if ( angle < (-45.00+ovl) && angle > (-135.00-ovl) ) { key_set(KEY_W,1);}
//A
if ( abs(angle) > (135.00-ovl) ) { key_set(KEY_A,1);}
//S
if ( angle > (45.00-ovl) && angle < (135.00+ovl) ) { key_set(KEY_S,1);}
//D
if (abs(angle) < (45.00+ovl) ) { key_set(KEY_D,1);}
}
return;
}
I hope somebody can help me with this, because it feels smoother with building, but with this "bugs" I cant use it (must destroy all my walls, because I cant edit :D)
Cheers
-
Silktouch - Sergeant Major
- Posts: 70
- Joined: Sat Mar 03, 2018 2:57 pm
Re: KB + XIM + Titan2 - Fortnite Combos
Silktouch wrote:So I tried more today and now I know the big problems that I have with this new "builder-pro" setup:
1. In nearly 90% I cant edit my buildings, rarely, I dont know why, I can easily select my pieces (the blue pieces in edit mode), but in most of the time nothing happens when I click the blue boxes. One time I was able to edit my wall, but stairs its just not possible, its same I dont click the boxes.
2. Editing is one big point for me too that leads to tracking errors, sometimes I left editing mode and after quit building mode but my T2 thinks im still in BM.
I know Alan dont play that much, maybe it never happens to him. But MAL, I think you play more then him, this ever happened to you? I hope no, because then its only a code thing, but I dont know what, because I changed nothing.
Here is my code:
- Code: Select all
#pragma METAINFO("<MAL APEX + T2", 1, 0, "")
#include <keyboard.gph>
#include <display.gph>
#include "light_k.gph"
#include <mouse.gph>
#define Reset BUTTON_14 //manual reset of tracking (pickaxe)
#define Wall (KEY_Y)
#define Floor (KEY_U)
#define Stair (KEY_I)
#define RB (KEY_E)
#define Build (KEY_F)
#define Fire (MBUTTON_1)
#define ADS (MBUTTON_2)
#define InitailEnd_Wait 40
#define SameButton_Wait 80
#define GenericBetweenButton_Wait 80
fix32 minv2 = 23.00*23.00 ; // adjust so resting position never register.
//mode and tracker
int mode;
int NavState;
//building hotkeys and tracker
int LastPieceBuild; // 0 = NULL | 1 = Wall | 2 = Floor | 3 = Stair |
init {
//------------------------------------------------------------------------------
// KEYBOARD BINDINGS
const uint8 map[] = {
MOUSE_X, STICK_1_X,
MOUSE_Y, STICK_1_Y,
};
const uint8 map2[] = {
KEY_W, STICK_2_Y | KEYMAP_NEGATIVE,
KEY_A, STICK_2_X | KEYMAP_NEGATIVE,
KEY_S, STICK_2_Y,
KEY_D, STICK_2_X,
KEY_ESCAPE, BUTTON_3, // XBOX
KEY_TAB, BUTTON_10, // VIEW
KEY_F12, BUTTON_1,
KEY_PAUSE, BUTTON_11,
// BUTTON_3, // MENU
// BUTTON_4, // RB
// BUTTON_5, // RT
// KEY_C, BUTTON_6, // RS
// BUTTON_7, // LB
// BUTTON_8, // LT
KEY_LEFTSHIFT, BUTTON_9, // LS
// KEY_CAPSLOCK, BUTTON_10, // UP
KEY_DOWNARROW, BUTTON_11, // DOWN
KEY_UPARROW, BUTTON_2,
KEY_LEFTARROW, BUTTON_12,
KEY_RIGHTARROW, BUTTON_13,
// BUTTON_12, // LEFT
// BUTTON_13, // RIGHT
KEY_R, BUTTON_17,
KEY_K, BUTTON_14,
KEY_F, BUTTON_15,
KEY_Q, BUTTON_7,
KEY_E, BUTTON_4,
// Y
// BUTTON_15, // B
KEY_SPACEBAR, BUTTON_16, // A
KEY_LEFTCONTROL, BUTTON_6, // X
};
keymapping(map2);
mousemapping(map);
}
main {
mouse_passthru();
key_passthru();
if(key_status(KEY_1)) {
combo_run(dance1);
}
if(key_status(KEY_2)) {
combo_run(dance2);
}
if(key_status(KEY_3)) {
combo_run(dance3);
}
if(key_status(KEY_4)) {
combo_run(dance4);
}
if(key_status(KEY_5)) {
combo_run(dance5);
}
if(key_status(KEY_6)) {
combo_run(dance6);
}
//------------------------------------------------------------------------------
//MODE TRACKING
if (mode == 0) {
set_light('G');
}
if (mode == 1) {
set_light('R');
}
if (mode > 1) {
mode = 0;}
if ((event_release(BUTTON_15)) && (mode == 0)){
mode = 1; //building mode
}
else if (event_release(BUTTON_15) && (mode == 1)) {
mode = 0; //combat mode
}
if ((event_release(BUTTON_14)) && (mode == 1)) {
mode = 0; //building mode to axe
}
//------------------------------------------------------------------------------
//TRACKER RESETS
//manual tracker reset to pickaxe
if (event_active(Reset)) {
mode = 0;
}
//Since B is cancel as well as enter building mode, need to reset tracker if using to cancel out of xbox menu, inventory, game menu, emotes
if (event_release (BUTTON_1) || event_release (BUTTON_3) || event_release (BUTTON_10) || event_release (BUTTON_11) || event_release (BUTTON_13)) {
NavState = 1;}
// Pressing B to cancel resets
if (event_release (BUTTON_15) && NavState) {
mode = mode + 1;
NavState = 0;}
///------------------------------------------------------------------------------
// LOAD-OUTS
if(key_status(Wall)){
if(mode == 0){ //is on Combat Mode
combo_run(BuildWall); //build the first new wall
}
else
if((mode == 1) && (LastPieceBuild != 1)){ //if last piece is not a Wall, double tap RT
combo_run(RT2);
}
else
if((mode == 1) && (LastPieceBuild == 1)){ // if last piece as wall, turbo mode on
combo_run(RT1);
}
}
if(key_status(Floor)){
if(mode == 0){
combo_run(BuildFloor);
}
else
if((mode == 1) && (LastPieceBuild != 2)){
combo_run(RB2);
}
else
if((mode == 1) && (LastPieceBuild == 2)){
combo_run(RB1);
}
}
if(key_status(Stair)){
if(mode == 0){
combo_run(BuildStair);
}
else
if((mode == 1) && (LastPieceBuild != 3)){
combo_run(ADS2);
}
else
if((mode == 1) && (LastPieceBuild == 3)){
combo_run(ADS1);
}
}
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
//------------------------------------------------------------------------------
//LED
if (mode == 1){
switch(LastPieceBuild) {
// case 0: display_overlay(_0_, 2000); break;
case 1: display_overlay(_1_, 2000); break;
case 2: display_overlay(_2_, 2000); break;
case 3: display_overlay(_3_, 2000); break;
}
}
if (mode == 0) {
display_overlay(_0_, 2000); }
} // main
combo BuildWall {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 1;
}
combo BuildFloor {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 2;
}
combo BuildStair {
wait(InitailEnd_Wait);
key_set(Build, 1);
wait(SameButton_Wait);
key_set(Build, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
mode = 1;
LastPieceBuild = 3;
}
combo RT2 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(GenericBetweenButton_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB2 {
wait(InitailEnd_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(GenericBetweenButton_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS2 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo ADS3 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(GenericBetweenButton_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo RT1 {
wait(InitailEnd_Wait);
mouse_set(Fire, 1);
wait(SameButton_Wait);
mouse_set(Fire, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 1;
}
combo RB1 {
wait(InitailEnd_Wait);
key_set(RB, 1);
wait(SameButton_Wait);
key_set(RB, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 2;
}
combo ADS1 {
wait(InitailEnd_Wait);
mouse_set(ADS, 1);
wait(SameButton_Wait);
mouse_set(ADS, 0);
wait(InitailEnd_Wait);
LastPieceBuild = 3;
}
combo dance1 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(160);
mouse_set(MOUSE_Y, -100);
wait(120);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, 100);
}
combo dance2 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_Y, 100);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_Y, -100);
}
combo dance3 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -40);
}
combo dance4 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, -50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, 50);
}
combo dance5 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 50);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -50);
}
combo dance6 {
key_set(KEY_DOWNARROW, 1);
wait(100);
key_set(KEY_DOWNARROW, 0);
wait(120);
mouse_set(MOUSE_X, 100);
mouse_set(MOUSE_Y, -40);
wait(180);
key_set(KEY_SPACEBAR, 1);
wait(200);
key_set(KEY_SPACEBAR, 0);
mouse_set(MOUSE_X, -100);
mouse_set(MOUSE_Y, 40);
}
void WASD(uint8 io_x, uint8 io_y){
fix32 rx = get_actual(io_x) ;
fix32 ry = get_actual(io_y) ;
fix32 ovl = 10.00; // 20 degrees overlap so diagonals movement also register
fix32 angle = atan2(ry,rx) * 180.00 / PI;
fix32 radius2 = rx*rx + ry*ry ;
if ( radius2 >= minv2 ) {
//W
if ( angle < (-45.00+ovl) && angle > (-135.00-ovl) ) { key_set(KEY_W,1);}
//A
if ( abs(angle) > (135.00-ovl) ) { key_set(KEY_A,1);}
//S
if ( angle > (45.00-ovl) && angle < (135.00+ovl) ) { key_set(KEY_S,1);}
//D
if (abs(angle) < (45.00+ovl) ) { key_set(KEY_D,1);}
}
return;
}
I hope somebody can help me with this, because it feels smoother with building, but with this "bugs" I cant use it (must destroy all my walls, because I cant edit :D)
Cheers
I do recall having issues with editing too but forgot about it.
Thinking about it, it will be because of the turbo building code
- Code: Select all
//turbo build using Fire
if((mode == 1) && (LastPieceBuild > 0 ) && mouse_status(Fire)){
mouse_set(Fire, 0);
if (LastPieceBuild == 1) combo_run (RT1);
else if (LastPieceBuild == 2) combo_run(RB1);
else combo_run(ADS1);
}
When you edit a structure you press the build button and then RT to highlight - which is triggering the turbo build code above. I think the workaround is to reset LastPieceBuild whenever you exit build mode and thus when you press edit it won't trigger the above. I can't implement and test until later tonight.
-
MAL8010 - Sergeant Major of the Army
- Posts: 263
- Joined: Sun Feb 05, 2017 3:12 pm
Return to GPC2 Script Programming
Who is online
Users browsing this forum: Google [Bot] and 91 guests