Run a script while holding a button

Titan One general support. Questions, firmware update, feature request.

Run a script while holding a button

Postby clvillers » Fri Apr 08, 2016 7:57 pm

I want the following script to run while I hold right Trigger and stop when I release right Trigger. How would i change the script to accomplish this? Thanks in advance!

Also would there be a way to have it setup instead of holding the right trigger intead pressing it once starts the script and pressing it again stops the script. Would like to see what both methods look like if possible thanks!
Code: Select all
main {
    if(get_val(XB1_RT)) {
        combo_run(Turbo_1);
    }
}

combo Turbo_1 {
        set_val(XB1_RT, 100);
    wait(280);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 100);
    wait(140);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 0);
    wait(180);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 100);
    wait(100);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 0);
    wait(210);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 100);
    wait(140);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 0);
    wait(510);
    set_val(XB1_RT, 0);
    wait(370);
    set_val(XB1_RT, 100);
    wait(290);
    set_val(XB1_RT, 0);
    wait(80);
    set_val(XB1_A, 100);
    wait(140);
    set_val(XB1_A, 0);
    wait(550);
    set_val(XB1_A, 100);
    wait(130);
    set_val(XB1_LY, 31);
    set_val(XB1_A, 100);
    wait(50);
    set_val(XB1_LY, 38);
    set_val(XB1_A, 0);
    wait(80);
    set_val(XB1_LY, 0);
    wait(200);
    set_val(XB1_X, 100);
    wait(130);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 100);
    wait(60);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 0);
    wait(220);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 100);
    wait(140);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 0);
    wait(130);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 100);
    wait(150);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 0);
    wait(210);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 100);
    wait(140);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 0);
    wait(140);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 100);
    wait(130);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 0);
    wait(170);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 100);
    wait(120);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 0);
    wait(140);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 100);
    wait(160);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 0);
    wait(420);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 100);
    wait(120);
    set_val(XB1_RT, 100);
    set_val(XB1_X, 0);
    wait(130);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 100);
    wait(120);
    set_val(XB1_RT, 100);
    set_val(XB1_Y, 0);
    wait(150);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 100);
    wait(290);
    set_val(XB1_RT, 100);
    set_val(XB1_B, 0);
    wait(210);
    set_val(XB1_RT, 0);
}
User avatar
clvillers
Sergeant
Sergeant
 
Posts: 7
Joined: Sun Jan 17, 2016 8:25 am

Re: Run a script while holding a button

Postby bonefisher » Fri Apr 08, 2016 8:56 pm

Code: Select all

int RT_flag = FALSE;



main {
    if(!RT_flag && get_val(XB1_RT)) {
        RT_flag = TRUE;
        combo_run(Turbo_1);
        } if( RT_flag && event_release(4)) {
        RT_flag = FALSE;
        combo_stop(Turbo_1);
        }
}

combo Turbo_1 {
 set_val(XB1_RT, 100);
 wait(280);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(180);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(100);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(210);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(510);
 set_val(XB1_RT, 0);
 wait(370);
 set_val(XB1_RT, 100);
 wait(290);
 set_val(XB1_RT, 0);
 wait(80);
 set_val(XB1_A, 100);
 wait(140);
 set_val(XB1_A, 0);
 wait(550);
 set_val(XB1_A, 100);
 wait(130);
 set_val(XB1_LY, 31);
 set_val(XB1_A, 100);
 wait(50);
 set_val(XB1_LY, 38);
 set_val(XB1_A, 0);
 wait(80);
 set_val(XB1_LY, 0);
 wait(200);
 set_val(XB1_X, 100);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(60);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(220);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(150);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(210);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(170);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(120);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(160);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(420);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(120);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(120);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(150);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(290);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(210);
 set_val(XB1_RT, 0);
}
bonefisher
Lieutenant General
Lieutenant General
 
Posts: 5413
Joined: Thu Jan 29, 2015 10:49 am

Re: Run a script while holding a button

Postby bonefisher » Fri Apr 08, 2016 8:56 pm

Code: Select all

int OnOff;

init {
    OnOff = get_pvar(SPVAR_1, 1, 2, 2);
}

main {
    if (event_press(4)) {
        if (OnOff == 1) {
            OnOff = 2;
        } else if (OnOff == 2) {
            OnOff = 1;
        }
        set_pvar(SPVAR_1, OnOff);
    }
    if (OnOff == 1) {
        combo_run(Turbo_1);
        } if(OnOff == 2 ) {
            combo_stop(Turbo_1);
            }
}

combo Turbo_1 {
 set_val(XB1_RT, 100);
 wait(280);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(180);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(100);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(210);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(510);
 set_val(XB1_RT, 0);
 wait(370);
 set_val(XB1_RT, 100);
 wait(290);
 set_val(XB1_RT, 0);
 wait(80);
 set_val(XB1_A, 100);
 wait(140);
 set_val(XB1_A, 0);
 wait(550);
 set_val(XB1_A, 100);
 wait(130);
 set_val(XB1_LY, 31);
 set_val(XB1_A, 100);
 wait(50);
 set_val(XB1_LY, 38);
 set_val(XB1_A, 0);
 wait(80);
 set_val(XB1_LY, 0);
 wait(200);
 set_val(XB1_X, 100);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(60);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(220);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(150);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(210);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(170);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(120);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(140);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(160);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(420);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 100);
 wait(120);
 set_val(XB1_RT, 100);
 set_val(XB1_X, 0);
 wait(130);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 100);
 wait(120);
 set_val(XB1_RT, 100);
 set_val(XB1_Y, 0);
 wait(150);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 100);
 wait(290);
 set_val(XB1_RT, 100);
 set_val(XB1_B, 0);
 wait(210);
 set_val(XB1_RT, 0);
}
bonefisher
Lieutenant General
Lieutenant General
 
Posts: 5413
Joined: Thu Jan 29, 2015 10:49 am


Return to Titan One Device

Who is online

Users browsing this forum: No registered users and 92 guests