Beispiel #1
0
/**
 * Function:	InputKeyboard::ProcessKBInput(...)
 * Description:	Method to see if the keyboardbuffer can be red or that a aquire is needed
 * @ param argIsToggle
 *	 Boolean to see if the key that is pressed a togglebutton is
 * @ param argKeyIsPressed
 *	 Byte containing the key that must be checked
 */
bool InputKeyboard::ProcessKBInput( byte argKeyIsPressed ) 
{ 
	if(!SUCCEEDED( dDevice->Poll() ))
	{
		DoAcquire();
	}
	
	dDevice->GetDeviceState( sizeof( keyBuffer ) , (LPVOID)&keyBuffer );

	// Check if keybuffer contains given key
	int pressed = KEYDOWN( keyBuffer, argKeyIsPressed );

	// pressed == 0 or 128 (0x80); meaning false or true
	if( pressed == 0 )
	{
		return false;
	}
	else
	{
		return true;
	}

	if (KEYDOWN( keyBuffer, DIK_W ) || KEYDOWN( keyBuffer, DIK_UP ))
		;//Move forward
	else if (KEYDOWN( keyBuffer, DIK_A || KEYDOWN( keyBuffer, DIK_LEFT )))
		;//Move left
	else if (KEYDOWN( keyBuffer, DIK_S || KEYDOWN( keyBuffer, DIK_DOWN )))
		;//Move backward
	else if (KEYDOWN( keyBuffer, DIK_D || KEYDOWN( keyBuffer, DIK_RIGHT)))
		;//Move right


}
Beispiel #2
0
/**
* Function:	Mouse::GetMouseInput()
* Description:	Method to see if the mousebuffer can be red or that a aquire is needed
*/
MouseStruct Mouse::GetMouseInput()
{
	if (!SUCCEEDED(_dDevice->Poll()))
		DoAcquire();

	SetTheMouseBuffer();

	return _bufferedMouse;
}