From f92e9f6f07b1e3834c2ca58ce3510734819d08e4 Mon Sep 17 00:00:00 2001 From: Arne Dußin Date: Wed, 27 Jan 2021 14:01:50 +0100 Subject: Rework graf karto to fit the client/server structure --- src/client/input/binding.rs | 123 +++++++++++++++++++++++++++ src/client/input/button.rs | 177 +++++++++++++++++++++++++++++++++++++++ src/client/input/mod.rs | 200 ++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 500 insertions(+) create mode 100644 src/client/input/binding.rs create mode 100644 src/client/input/button.rs create mode 100644 src/client/input/mod.rs (limited to 'src/client/input') diff --git a/src/client/input/binding.rs b/src/client/input/binding.rs new file mode 100644 index 0000000..386fb66 --- /dev/null +++ b/src/client/input/binding.rs @@ -0,0 +1,123 @@ +//! Bindings module, which is a key combination that does something when pressed. + +use super::Button; +use raylib::RaylibHandle; +use serde::{Deserialize, Serialize}; + +/// Binding struct, which holds any number of buttons (keyboard and mouse may be mixed, if desired) +#[derive(Clone, PartialEq, Eq, Hash, Serialize, Deserialize)] +pub struct Binding { + buttons: Vec