/* *
* Game: Medal of Honor - Multiplayer ONLY(1)
* Plataform: PS3
* Controller: Frag FX v1
* Game Settings: MAX - Alternate / Default
* Frag FX: MIN
* (1) The sensitivity adjustments for single player mode are different
* -------------------------------------------------------------------- */
define MODE_OFF = 0;
define MODE_A = 1;
define RFA_T1 = 40, RFA_T2 = 20;
define MODE_B = 2;
define RFB_T1 = 300, RFB_T2 = 40;
// Buttons Assignments
// -----------------------
remap PS3_R3 -> PS3_L3; // R3: Sprint
remap PS3_L3 -> PS3_R3; // L3: Crounch
remap PS3_R2 -> PS3_CROSS; // R2: Jump
remap PS3_L2 -> PS3_R2; // L2: Throw Grenade
remap PS3_CROSS -> PS3_L2; // CROSS: Alternative
// CIRCLE: Melee
// SQUARE: Reload
// TRIANGLE: Change Weapon
// -----------------------
int mode = MODE_B, t1 = RFB_T1, t2 = RFB_T2;
int autoSwitch = FALSE;
main {
// Frag FX mouse sensitivity
// We really did a good job here. The mouse feels perfect.
if(get_val(PS3_RX) && get_val(PS3_RY)) {
sensitivity(PS3_RX, NOT_USE, 60, 2, -100, +100);
sensitivity(PS3_RY, NOT_USE, 60, 2, -100, +100);
}
sensitivity(PS3_RX, 38, NOT_USE, 8, -99, +99);
sensitivity(PS3_RY, 38, 125, 6, -99, +99);
// Remove deadzone of movement stick
sensitivity(PS3_LX, NOT_USE, 60, 40, -100, +100);
sensitivity(PS3_LY, NOT_USE, 60, 40, -100, +100);
// R3 + L1 to change to especial weapon
if(get_val(PS3_R3) && get_val(PS3_L1)) {
set_val(PS3_R3, 0);
set_val(PS3_CROSS, 100);
}
// Sniper stop breathe
if(get_val(PS3_L1) == 100) {
set_val(PS3_R3, 100);
}
// UP -> offensive strikes
if(get_val(PS3_UP)) {
set_val(PS3_UP, 0);
set_val(PS3_LEFT, 100);
}
// Control JDAM missile with left stick (is hard do it with mouse)
if(get_val(PS3_R3) && get_val(PS3_TRIANGLE)) {
set_val(PS3_R3, 0);
set_val(PS3_TRIANGLE, 0);
swap(PS3_RX, PS3_LX);
swap(PS3_RY, PS3_LY);
}
// Rapid Fire - Modes of Operation
// Quick tap on the start button to switch between modes.
// R3 + START to turn off rapid fire.
if(get_val(PS3_R3)) {
if((get_val(PS3_START) || event_release(PS3_START)) && mode) {
mode = MODE_OFF;
}
set_val(PS3_START, 0);
} else if(event_release(PS3_START) && get_ptime(PS3_START) < 140) {
if(mode == MODE_A) {
mode = MODE_B;
t1 = RFB_T1;
t2 = RFB_T2;
autoSwitch = TRUE;
} else {
mode = MODE_A;
t1 = RFA_T1;
t2 = RFA_T2;
autoSwitch = FALSE;
}
}
block(PS3_START, 200);
// Changes automatically to the mode A when using the side arm.
if(autoSwitch && event_press(PS3_TRIANGLE)) {
if(mode == MODE_A) {
mode = MODE_B;
t1 = RFB_T1;
t2 = RFB_T2;
} else {
mode = MODE_A;
t1 = RFA_T1;
t2 = RFA_T2;
}
}
// Trigger 'rapid fire' combo
if(get_val(PS3_R1)) {
set_val(PS3_R1, 100);
if(mode == MODE_A || (mode == MODE_B && get_val(PS3_L1))) {
combo_run(RapidFire);
}
} else if(event_release(PS3_R1)) {
combo_stop(RapidFire);
}
}
combo RapidFire {
set_val(PS3_R1, 100);
wait(t1);
set_val(PS3_R1, 0);
wait(t2);
set_val(PS3_R1, 0);
}