nuclide/Source/server/cstrike/input.c

65 lines
1.2 KiB
C
Raw Normal View History

2019-01-16 16:43:50 +00:00
/***
*
* Copyright (c) 2016-2019 Marco 'eukara' Hladik. All rights reserved.
*
* See the file LICENSE attached with the sources for usage details.
*
****/
2016-12-01 17:50:48 +00:00
/*
=================
Input_Handle
Handles impulse and whatnot
=================
*/
void Game_Input(void)
{
// Dead, specatator
if (self.health <= 0) {
/*if (self.button2) {
if (infokey(self, "*spectator") == "0") {
forceinfokey(self, "*spectator", "1");
} else {
forceinfokey(self, "*spectator", "1");
}
}*/
2017-04-19 21:06:41 +00:00
return;
}
// TODO: Make this fast switch only
if (self.impulse == 3) {
Weapon_Switch(SLOT_MELEE);
} else if (self.impulse == 2) {
Weapon_Switch(SLOT_SECONDARY);
} else if (self.impulse == 1) {
Weapon_Switch(SLOT_PRIMARY);
} else if (self.impulse == 4) {
Weapon_Switch(SLOT_GRENADE);
}
if (self.button5) {
Player_UseDown();
} else {
Player_UseUp();
}
if (self.button0) {
if (fGameState != GAME_FREEZE) {
Weapon_PrimaryAttack(self.weapon);
}
} else if (self.button4) {
Weapon_Reload(self.weapon);
} else if (self.button3) {
Weapon_SecondaryAttack(self.weapon);
2016-12-24 15:30:44 +00:00
} else {
Weapon_Release();
2016-12-01 17:50:48 +00:00
}
if (self.impulse == 100) {
Flashlight_Toggle();
}
2016-12-01 23:33:44 +00:00
self.impulse = 0;
2016-12-01 17:50:48 +00:00
}