Skip to content

Instantly share code, notes, and snippets.

@DrSammyD
Created October 22, 2015 15:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save DrSammyD/4c8832b636688437016d to your computer and use it in GitHub Desktop.
Save DrSammyD/4c8832b636688437016d to your computer and use it in GitHub Desktop.
Rivals of Aether gpc program
/* *
* GPC SCRIPT
*
* GPC is a scripting language with C-like syntax.
* To learn more access GPC Language Reference on Help menu.
* *********************************************************** */
define LP = XB360_X;
define LK = XB360_A;
define MP = XB360_Y;
define MK = XB360_B;
define HP = XB360_RB;
define HK = XB360_RT;
define TP = XB360_LB;
define TK = XB360_LT;
define CX = XB360_RX;
define CY = XB360_RY;
define UP = XB360_UP;
define DOWN = XB360_DOWN;
define LEFT = XB360_LEFT;
define RIGHT = XB360_RIGHT;
define LX = XB360_LX;
define LY = XB360_LY;
define DStick = XB360_RB;
define LSmash = XB360_LY;
define FLSmash = XB360_LX;
define RSmash = XB360_LY;
define FRSmash = XB360_LX;
define LSmashDir = 100;
define FLSmashDir = 155;
define RSmashDir = 155;
define FRSmashDir = 100;
data (
//X nudge left matrix
-100,-33, 66,
-100, 0,100,
-100,-33, 66,
//Y nudge left matrix
-66,-100,-100,
33, 0,-33,
66, 100,100,
//X nudge right matrix
-66,33,100,
-100, 0,100,
-66,33,100,
//Y nudge right matrix
-100,-100,-66,
-33, 0, 33,
100, 100, 66
);
int TPPtime, LPPtime, RowIndex, ColumnIndex, mIndex, DStickFlag;
init{
}
main {
TPPtime = get_ptime(TP);
LPPtime = get_ptime(LP);
if(
get_ptime(HP) < 10
^^
get_ptime(HK) < 10
^^
get_ptime(TPPtime) < 10
^^
get_ptime(TK) < 10
^^
get_ptime(MP) < 10
^^
get_ptime(MK) < 10
^^
get_ptime(LK) < 10
^^
get_ptime(LPPtime) < 10
){
set_val(HP, 0);
set_val(HK, 0);
set_val(TP, 0);
set_val(TK, 0);
set_val(MP, 0);
set_val(MK, 0);
set_val(LK, 0);
set_val(LP, 0);
}
if(setCombo(MP,HP)) set_val(CY,-100);
if(setCombo(MK,HK)) set_val(CY,100);
if(setCombo(LP,MP)) set_val(CX,-100);
if(setCombo(HP,TP)) set_val(CX,100);
//Nudge left
if((LPPtime > 70 || TPPtime > 70) && get_val(MP)){
set_val(LK,0); set_val(MK,0);
setNudge(0,9);
}
//Nudge right
if((LPPtime > 70 || TPPtime > 70) && get_val(HP)){
set_val(TP,0); set_val(TK,0);
setNudge(18,27);
}
if(setCombo(LP,LK)){set_val(FLSmash,FLSmashDir); set_val(HP,100); }
if(setCombo(MP,MK)){set_val(LSmash,LSmashDir); set_val(HP,100); }
if(setCombo(HP,HK)){set_val(RSmash,RSmashDir); set_val(HP,100); }
if(setCombo(TP,TK)){set_val(FRSmash,FRSmashDir); set_val(HP,100); }
}
//Set combos
function setCombo(B1, B2){
if(get_val(B1) && get_val(B2)){
set_val(B1,0); set_val(B2,0);
return 1;
}
return 0;
}
//Calculate and set nudge
function setNudge(xMatrixIndex, yMatrixIndex){
RowIndex = 1;
ColumnIndex = 1;
if(get_val(UP) > 0){
set_val(UP, 0);
RowIndex = 0;
}
if(get_val(DOWN) > 0){
set_val(DOWN, 0);
RowIndex = 2;
}
if(get_val(LEFT) > 0){
set_val(LEFT, 0);
ColumnIndex = 0;
}
if(get_val(RIGHT) > 0){
set_val(RIGHT, 0);
ColumnIndex = 2;
}
mIndex = RowIndex*3+ColumnIndex;
set_val(LX, dchar(xMatrixIndex+mIndex));
set_val(LY, dchar(yMatrixIndex+mIndex));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment