Beispiel #1
0
int Vid_GetGameKeys()
{
	int i, c = 0;

	// empty input buffer, get new key state

	while (Vid_GetKey() != -1);

	if (Vid_GetCtrlBreak()) {
		c |= K_BREAK;
	}
	if (keysdown[KEY_FLIP]) {
		keysdown[KEY_FLIP] = 0;
		c |= K_FLIP;
	}
	if (keysdown[KEY_PULLUP])
		c |= K_FLAPU;
	if (keysdown[KEY_PULLDOWN])
		c |= K_FLAPD;
	if (keysdown[KEY_ACCEL]) {
		keysdown[KEY_ACCEL] = 0;
		c |= K_ACCEL;
	}
	if (keysdown[KEY_DECEL]) {
		keysdown[KEY_DECEL] = 0;
		c |= K_DEACC;
	}
	if (keysdown[KEY_SOUND]) {
		keysdown[KEY_SOUND] = 0;
		c |= K_SOUND;
	}
	if (keysdown[KEY_BOMB])
		c |= K_BOMB;
	if (keysdown[KEY_FIRE])
		c |= K_SHOT;
	if (keysdown[KEY_HOME])
		c |= K_HOME;
	if (keysdown[KEY_MISSILE]) {
		keysdown[KEY_MISSILE] = 0;
		c |= K_MISSILE;
	}
	if (keysdown[KEY_STARBURST]) {
		keysdown[KEY_STARBURST] = 0;
		c |= K_STARBURST;
	}

	// clear bits in key array

	for (i=0; i<NUM_KEYS; ++i) {
		keysdown[i] &= ~2;
	}

	return c;
}
Beispiel #2
0
int swgetc()
{
	int i;

	while(!(i = Vid_GetKey())) {

		// sdh 15/11/2001: dont thrash the processor while 
		// waiting for a key press

		Timer_Sleep(100);

		swsndupdate();
		if (ctlbreak())
			break;
	}

	return i;
}