From 47da640d7763ee1e00badb7476ac5afc4f864367 Mon Sep 17 00:00:00 2001 From: Anand S Date: Sun, 15 Jul 2018 05:56:30 +0530 Subject: Add support for per-player FOV overrides and multipliers --- src/player.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src/player.h') diff --git a/src/player.h b/src/player.h index b0c3b2574..de7f427e9 100644 --- a/src/player.h +++ b/src/player.h @@ -32,6 +32,12 @@ with this program; if not, write to the Free Software Foundation, Inc., #define PLAYERNAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_" #define PLAYERNAME_ALLOWED_CHARS_USER_EXPL "'a' to 'z', 'A' to 'Z', '0' to '9', '-', '_'" +struct PlayerFovSpec +{ + f32 fov; + bool is_multiplier; +}; + struct PlayerControl { PlayerControl() = default; @@ -178,6 +184,16 @@ public: void setWieldIndex(u16 index); u16 getWieldIndex() const { return m_wield_index; } + void setFov(const PlayerFovSpec &spec) + { + m_fov_spec = spec; + } + + const PlayerFovSpec &getFov() const + { + return m_fov_spec; + } + u32 keyPressed = 0; HudElement* getHud(u32 id); @@ -187,10 +203,12 @@ public: u32 hud_flags; s32 hud_hotbar_itemcount; + protected: char m_name[PLAYERNAME_SIZE]; v3f m_speed; u16 m_wield_index = 0; + PlayerFovSpec m_fov_spec = { 0.0f, false }; std::vector hud; private: -- cgit v1.2.3