/* Call of Duty PS3 ( By Wiimote & J2Kbr)
*/
// Disable all default remaps
remap REMAP_NULL -> PS3_PS,
REMAP_NULL -> PS3_SELECT,
REMAP_NULL -> PS3_START,
REMAP_NULL -> PS3_R1,
REMAP_NULL -> PS3_R2,
REMAP_NULL -> PS3_R3,
REMAP_NULL -> PS3_L1,
REMAP_NULL -> PS3_L2,
REMAP_NULL -> PS3_L3,
REMAP_NULL -> PS3_RX,
REMAP_NULL -> PS3_RY,
REMAP_NULL -> PS3_LX,
REMAP_NULL -> PS3_LY,
REMAP_NULL -> PS3_UP,
REMAP_NULL -> PS3_DOWN,
REMAP_NULL -> PS3_LEFT,
REMAP_NULL -> PS3_RIGHT,
REMAP_NULL -> PS3_TRIANGLE,
REMAP_NULL -> PS3_CIRCLE,
REMAP_NULL -> PS3_CROSS,
REMAP_NULL -> PS3_SQUARE,
REMAP_NULL -> PS3_ACCX,
REMAP_NULL -> PS3_ACCY,
REMAP_NULL -> PS3_ACCZ,
REMAP_NULL -> PS3_GYRO;
// Set friendly names for the action buttons
define XBM = PS3_PS;
define FIRE_WEAPON = PS3_R1;
define FRAG_NADE = PS3_R2;
define MELEE_ATTACK = PS3_R3;
define AIM_DOWN_SIGHT = PS3_L1;
define SPECIAL_NADE = PS3_L2;
define SPRINT = PS3_L3;
define JUMP = PS3_CROSS;
define CROUCH_PRONE = PS3_CIRCLE;
define USE_RELOAD = PS3_SQUARE;
define SWITCH_WEAPON = PS3_TRIANGLE;
define MENU = PS3_START;
define MOVE_LEFT_RIGHT = PS3_LX;
define MOVE_TOP_DOWN = PS3_LY;
define AIM_LEFT_RIGHT = PS3_RX;
define AIM_TOP_DOWN = PS3_RY;
define LEFT = PS3_LEFT;
define UP = PS3_UP;
define RIGHT = PS3_RIGHT;
define DOWN = PS3_DOWN;
define SELECT = PS3_SELECT;
// Remaps
remap WII_HOME -> USE_RELOAD;
remap WII_MINUS -> SPECIAL_NADE;
remap WII_PLUS -> FRAG_NADE;
remap WII_ONE -> SELECT;
remap WII_C -> AIM_DOWN_SIGHT;
remap WII_Z -> SPRINT;
remap WII_TWO -> MENU;
remap WII_NX -> MOVE_LEFT_RIGHT;
remap WII_NY -> MOVE_TOP_DOWN;
remap WII_UP -> UP;
remap WII_DOWN -> SWITCH_WEAPON;
remap WII_LEFT -> LEFT;
remap WII_RIGHT -> RIGHT;
remap WII_B -> FIRE_WEAPON;
remap WII_A -> JUMP;
remap WII_IRX -> AIM_LEFT_RIGHT;
remap WII_IRY -> AIM_TOP_DOWN;
// Little trick to avoid conflicts
remap WII_RT -> MELEE_ATTACK;
remap WII_ZR -> CROUCH_PRONE;
remap WII_X -> XBM;
remap WII_Y -> DOWN;
define CROUCH = 1;
define PRONE = 2;
int turn = CROUCH;
/* In the script always refers to the WII entries. */
main {
// Pointer remap Stick right PS3
set_val(WII_IRX, inv(get_val(WII_IRX))); // Invert the left-right movement.
sensitivity(WII_IRX, NOT_USE, NOT_USE, NOT_USE, -100, +100);
sensitivity(WII_IRY, NOT_USE, NOT_USE, NOT_USE, -100, +100);
// Reload = wii acc Z < -50
set_val(WII_ACCZ, get_val(WII_ACCZ) +100);
sensitivity(WII_ACCZ, NOT_USE, NOT_USE, NOT_USE, -100, 0);
if(get_val(WII_ACCZ) < -50) {
combo_run(Reload);
}
// Crouch/Prone = wii acc nunchuk Y < -5
set_val(WII_ACCNY, get_val(WII_ACCNY) +30);
sensitivity(WII_ACCNY, NOT_USE, NOT_USE, NOT_USE, -10, 0);
if (get_val(WII_ACCNY) < -5){
if(turn == CROUCH) {
combo_run(first_time);
} else if(turn == PRONE) {
combo_run(second_time);
}
}
if (get_val(WII_Z)){
if (turn == PRONE){
turn = CROUCH;
}
}
if (get_val(WII_A)){
if (turn == PRONE){
turn = CROUCH;
}
}
// Cut = wii acc X < -5
set_val(WII_ACCX, get_val(WII_ACCX)+30);
sensitivity(WII_ACCX, NOT_USE, NOT_USE, NOT_USE, -10, 0);
if (get_val(WII_ACCX) < -5){
combo_run(Cut);
}
}
combo first_time {
set_val(WII_ZR, 100);
combo_run(Crouch);
wait(60); // Fast press
turn = PRONE;
}
combo Crouch {
set_rumble(RUMBLE_A, 50);
wait(100);
set_rumble(RUMBLE_A, 0);
}
combo second_time {
set_val(WII_ZR, 100);
combo_run(Prone);
wait(500); // A little bit longer press
turn = CROUCH;
}
combo Prone {
set_rumble(RUMBLE_A, 50);
wait(100);
set_rumble(RUMBLE_A, 0);
}
combo Reload {
set_val(WII_HOME, 100);
set_rumble(RUMBLE_B, 50);
wait(100);
set_val(WII_HOME, 0);
set_rumble(RUMBLE_B, 0);
}
combo Cut {
set_val(WII_RT, 100);
set_rumble(RUMBLE_B, 50);
wait(100);
set_val(WII_RT, 0);
set_rumble(RUMBLE_B, 0);
}