Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2012-03-03 23:13:33 +0000
committerStijn Buys <ingar@osirion.org>2012-03-03 23:13:33 +0000
commitf0a4a7d7213b61714542d64a7559648a086df26a (patch)
treebe1735fd6ff784b85639549ff399f66ee9590ea4 /src/client/input.cc
parentf17abe1b819f6fb3f1ad755396a6e88ce21fd388 (diff)
Added +fire action, default bind to mouse button 2.
Diffstat (limited to 'src/client/input.cc')
-rw-r--r--src/client/input.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/client/input.cc b/src/client/input.cc
index 69be2ab..480ba61 100644
--- a/src/client/input.cc
+++ b/src/client/input.cc
@@ -56,6 +56,8 @@ float local_strafe = 0.0f;
float local_vstrafe = 0.0f;
float local_afterburner = 0.0f;
+int local_controlflags = core::EntityControlable::ControlFlagNone;
+
// last controlled entity
unsigned int last_control = 0;
@@ -432,6 +434,12 @@ void action_press(Key *key)
case Action::ZoomOut:
render::Camera::set_zoom(+0.1f);
break;
+
+ /* -- fire control -------------------------------- */
+
+ case Action::Fire:
+ local_controlflags = local_controlflags & core::EntityControlable::ControlFlagFire;
+ break;
}
}
@@ -529,6 +537,12 @@ void action_release(Key *key)
break;
case Action::ZoomOut:
break;
+
+ /* -- fire control -------------------------------- */
+
+ case Action::Fire:
+ local_controlflags = local_controlflags & ~core::EntityControlable::ControlFlagFire;
+ break;
}
}
@@ -683,6 +697,8 @@ void reset()
local_vstrafe = 0.0f;
local_strafe = 0.0f;
local_afterburner = 0.0f;
+
+ local_controlflags = core::EntityControlable::ControlFlagNone;
if (core::localcontrol()) {
local_thrust = core::localcontrol()->thrust();
@@ -900,6 +916,7 @@ void frame()
core::localcontrol()->set_strafe(local_strafe);
core::localcontrol()->set_vstrafe(local_vstrafe);
core::localcontrol()->set_afterburner(local_afterburner);
+ core::localcontrol()->set_control_flags(local_controlflags);
} else {