예제 #1
0
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);

}
예제 #2
0
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);
}