void CIVPad::ToControlState(CControlState& controlState, bool bCurrent) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we not have a valid pad? if(!m_pPad) return; // Analog keys SET_ANALOG_KEY(INPUT_MOVE_LEFT, controlState.ucOnFootMove[0]); SET_ANALOG_KEY(INPUT_MOVE_RIGHT, controlState.ucOnFootMove[1]); SET_ANALOG_KEY(INPUT_MOVE_UP, controlState.ucOnFootMove[2]); SET_ANALOG_KEY(INPUT_MOVE_DOWN, controlState.ucOnFootMove[3]); SET_ANALOG_KEY(INPUT_VEH_MOVE_LEFT, controlState.ucInVehicleMove[0]); SET_ANALOG_KEY(INPUT_VEH_MOVE_RIGHT, controlState.ucInVehicleMove[1]); SET_ANALOG_KEY(INPUT_VEH_MOVE_UP, controlState.ucInVehicleMove[2]); SET_ANALOG_KEY(INPUT_VEH_MOVE_DOWN, controlState.ucInVehicleMove[3]); SET_ANALOG_KEY(INPUT_VEH_BRAKE, controlState.ucInVehicleTriggers[0]); SET_ANALOG_KEY(INPUT_VEH_ACCELERATE, controlState.ucInVehicleTriggers[1]); SET_ANALOG_KEY(INPUT_VEH_MOVE_LEFT_2, controlState.ucInVehicleMove2[0]); SET_ANALOG_KEY(INPUT_VEH_MOVE_RIGHT_2, controlState.ucInVehicleMove2[1]); // Binary keys SET_BINARY_KEY(INPUT_ENTER, controlState.keys.bEnterExitVehicle); SET_BINARY_KEY(INPUT_SPRINT, controlState.keys.bSprint); SET_BINARY_KEY(INPUT_JUMP, controlState.keys.bJump); SET_BINARY_KEY(INPUT_ATTACK, controlState.keys.bAttack); SET_BINARY_KEY(INPUT_ATTACK2, controlState.keys.bAttack2); SET_BINARY_KEY(INPUT_AIM, controlState.keys.bAim); SET_BINARY_KEY(INPUT_FREE_AIM, controlState.keys.bFreeAim); SET_BINARY_KEY(INPUT_MELEE_ATTACK1, controlState.keys.bMeleeAttack1); SET_BINARY_KEY(INPUT_MELEE_ATTACK2, controlState.keys.bMeleeAttack2); SET_BINARY_KEY(INPUT_MELEE_KICK, controlState.keys.bMeleeKick); SET_BINARY_KEY(INPUT_MELEE_BLOCK, controlState.keys.bMeleeBlock); SET_BINARY_KEY(INPUT_VEH_HANDBRAKE, controlState.keys.bHandbrake); SET_BINARY_KEY(INPUT_VEH_HANDBRAKE_ALT, controlState.keys.bHandbrake2); SET_BINARY_KEY(INPUT_VEH_HORN, controlState.keys.bHorn); SET_BINARY_KEY(INPUT_VEH_ATTACK, controlState.keys.bDriveBy); SET_BINARY_KEY(INPUT_VEH_ATTACK2, controlState.keys.bHeliPrimaryFire); }
void CClientPadState::FromNetPadState(const CNetworkPadState& netPadState, bool bOnFoot) { // Are we on foot? if(bOnFoot) { // Left Analog L/R byteKeys[INPUT_MOVE_LEFT] = netPadState.byteLeftAnalogLR[0]; byteKeys[INPUT_MOVE_RIGHT] = netPadState.byteLeftAnalogLR[1]; // Left Analog U/D byteKeys[INPUT_MOVE_UP] = netPadState.byteLeftAnalogUD[0]; byteKeys[INPUT_MOVE_DOWN] = netPadState.byteLeftAnalogUD[1]; } else { // In Vehicle Turn Left/Right byteKeys[INPUT_VEH_MOVE_LEFT] = netPadState.byteLeftAnalogLR[0]; byteKeys[INPUT_VEH_MOVE_RIGHT] = netPadState.byteLeftAnalogLR[1]; // In Vehicle Lean Forwards/Backwards byteKeys[INPUT_VEH_MOVE_UP] = netPadState.byteLeftAnalogUD[0]; byteKeys[INPUT_VEH_MOVE_DOWN] = netPadState.byteLeftAnalogUD[1]; } // Enter/Exit Vehicle (Only set if this is the local player) //SET_BINARY_KEY(byteKeys[INPUT_ENTER], netPadState.keys.bEnterExitVehicle); // On Foot Sprint SET_BINARY_KEY(byteKeys[INPUT_SPRINT], netPadState.keys.bSprint); // On Foot Jump SET_BINARY_KEY(byteKeys[INPUT_JUMP], netPadState.keys.bJump); // On Foot Attack SET_BINARY_KEY(byteKeys[INPUT_ATTACK], netPadState.keys.bAttack); // On Foot Free Aim/Melee Lock On 1 SET_BINARY_KEY(byteKeys[INPUT_ATTACK2], netPadState.keys.bFreeAim1); // On Foot Free Aim/Melee Lock On 2 SET_BINARY_KEY(byteKeys[INPUT_AIM], netPadState.keys.bFreeAim2); // On Foot Mouse Aim SET_BINARY_KEY(byteKeys[INPUT_FREE_AIM], netPadState.keys.bMouseAim); // On Foot Combat Punch 1 SET_BINARY_KEY(byteKeys[INPUT_MELEE_ATTACK1], netPadState.keys.bCombatPunch1); // On Foot Combat Punch 2 SET_BINARY_KEY(byteKeys[INPUT_MELEE_ATTACK2], netPadState.keys.bCombatPunch2); // On Foot Combat Kick SET_BINARY_KEY(byteKeys[INPUT_MELEE_KICK], netPadState.keys.bCombatKick); // On Foot Combat Block SET_BINARY_KEY(byteKeys[INPUT_MELEE_BLOCK], netPadState.keys.bCombatBlock); // In Vehicle Accelerate SET_BINARY_KEY(byteKeys[INPUT_VEH_ACCELERATE], netPadState.keys.bAccelerate); // In Vehicle Reverse SET_BINARY_KEY(byteKeys[INPUT_VEH_BRAKE], netPadState.keys.bReverse); // In Vehicle Handbrake 1 SET_BINARY_KEY(byteKeys[INPUT_VEH_HANDBRAKE], netPadState.keys.bHandbrake); // In Vehicle Handbrake 2 SET_BINARY_KEY(byteKeys[INPUT_VEH_HANDBRAKE_ALT], netPadState.keys.bHandbrake2); // In Vehicle Horn SET_BINARY_KEY(byteKeys[INPUT_VEH_HORN], netPadState.keys.bHorn); // In Vehicle Drive By SET_BINARY_KEY(byteKeys[INPUT_VEH_ATTACK], netPadState.keys.bDriveBy); // In Vehicle Heli Primary Fire SET_BINARY_KEY(byteKeys[INPUT_VEH_ATTACK2], netPadState.keys.bHeliPrimaryFire); }