DDraceNetwork Documentation
Loading...
Searching...
No Matches
controls.h
Go to the documentation of this file.
1/* (c) Magnus Auvinen. See licence.txt in the root of the distribution for more information. */
2/* If you are missing that file, acquire a complete release at teeworlds.com. */
3#ifndef GAME_CLIENT_COMPONENTS_CONTROLS_H
4#define GAME_CLIENT_COMPONENTS_CONTROLS_H
5
6#include <base/vmath.h>
7
8#include <engine/client.h>
9#include <engine/console.h>
10
11#include <generated/protocol.h>
12
14
15class CControls : public CComponent
16{
17public:
18 float GetMinMouseDistance() const;
19 float GetMaxMouseDistance() const;
20
27
31
33
35
42
43 CControls();
44 int Sizeof() const override { return sizeof(*this); }
45
46 void OnReset() override;
47 void OnRender() override;
48 void OnMessage(int MsgType, void *pRawMsg) override;
49 bool OnCursorMove(float x, float y, IInput::ECursorType CursorType) override;
50 void OnConsoleInit() override;
51 virtual void OnPlayerDeath();
52
53 int SnapInput(int *pData);
54 void ClampMousePos();
55 void ResetInput(int Dummy);
56
57private:
58 static void ConKeyInputState(IConsole::IResult *pResult, void *pUserData);
59 static void ConKeyInputCounter(IConsole::IResult *pResult, void *pUserData);
60 static void ConKeyInputSet(IConsole::IResult *pResult, void *pUserData);
61 static void ConKeyInputNextPrevWeapon(IConsole::IResult *pResult, void *pUserData);
62};
63#endif
Definition component.h:165
EMouseInputType m_aMouseInputType[NUM_DUMMIES]
Definition controls.h:32
CControls()
Definition controls.cpp:20
void OnMessage(int MsgType, void *pRawMsg) override
Definition controls.cpp:171
int m_aAmmoCount[NUM_WEAPONS]
Definition controls.h:34
bool OnCursorMove(float x, float y, IInput::ECursorType CursorType) override
Definition controls.cpp:384
static void ConKeyInputCounter(IConsole::IResult *pResult, void *pUserData)
Definition controls.cpp:76
vec2 m_aMousePos[NUM_DUMMIES]
Definition controls.h:28
float GetMinMouseDistance() const
Definition controls.cpp:456
int SnapInput(int *pData)
Definition controls.cpp:183
CNetObj_PlayerInput m_aInputData[NUM_DUMMIES]
Definition controls.h:37
vec2 m_aTargetPos[NUM_DUMMIES]
Definition controls.h:30
void ResetInput(int Dummy)
Definition controls.cpp:40
static void ConKeyInputSet(IConsole::IResult *pResult, void *pUserData)
Definition controls.cpp:96
CNetObj_PlayerInput m_aLastData[NUM_DUMMIES]
Definition controls.h:38
EMouseInputType
Definition controls.h:22
@ ABSOLUTE
Definition controls.h:23
@ AUTOMATED
Definition controls.h:25
@ RELATIVE
Definition controls.h:24
float GetMaxMouseDistance() const
Definition controls.cpp:461
int m_aInputDirectionRight[NUM_DUMMIES]
Definition controls.h:40
vec2 m_aMousePosOnAction[NUM_DUMMIES]
Definition controls.h:29
void ClampMousePos()
Definition controls.cpp:429
int64_t m_LastSendTime
Definition controls.h:36
void OnRender() override
Definition controls.cpp:338
static void ConKeyInputNextPrevWeapon(IConsole::IResult *pResult, void *pUserData)
Definition controls.cpp:105
int m_aShowHookColl[NUM_DUMMIES]
Definition controls.h:41
void OnReset() override
Definition controls.cpp:29
int m_aInputDirectionLeft[NUM_DUMMIES]
Definition controls.h:39
void OnConsoleInit() override
Definition controls.cpp:112
int Sizeof() const override
Definition controls.h:44
static void ConKeyInputState(IConsole::IResult *pResult, void *pUserData)
Definition controls.cpp:66
virtual void OnPlayerDeath()
Definition controls.cpp:54
Definition console.h:64
ECursorType
Definition input.h:42
@ NUM_DUMMIES
Definition enums.h:8
@ NUM_WEAPONS
Definition protocol.h:1586
Definition protocol.h:423
vector2_base< float > vec2
Definition vmath.h:161