2010-11-20 10:37:14 +00:00
|
|
|
/* (c) Magnus Auvinen. See licence.txt in the root of the distribution for more information. */
|
|
|
|
/* If you are missing that file, acquire a complete release at teeworlds.com. */
|
2010-05-29 07:25:38 +00:00
|
|
|
#ifndef GAME_CLIENT_COMPONENTS_CONTROLS_H
|
|
|
|
#define GAME_CLIENT_COMPONENTS_CONTROLS_H
|
|
|
|
#include <base/vmath.h>
|
|
|
|
#include <game/client/component.h>
|
|
|
|
|
|
|
|
class CControls : public CComponent
|
2011-04-13 18:37:12 +00:00
|
|
|
{
|
2010-05-29 07:25:38 +00:00
|
|
|
public:
|
|
|
|
vec2 m_MousePos;
|
|
|
|
vec2 m_TargetPos;
|
|
|
|
|
|
|
|
CNetObj_PlayerInput m_InputData;
|
2010-05-31 21:40:40 +00:00
|
|
|
CNetObj_PlayerInput m_LastData;
|
2010-05-29 07:25:38 +00:00
|
|
|
int m_InputDirectionLeft;
|
|
|
|
int m_InputDirectionRight;
|
|
|
|
|
|
|
|
CControls();
|
2011-04-13 18:37:12 +00:00
|
|
|
|
2010-05-31 21:40:40 +00:00
|
|
|
virtual void OnReset();
|
2011-01-17 11:28:37 +00:00
|
|
|
virtual void OnRelease();
|
2010-05-29 07:25:38 +00:00
|
|
|
virtual void OnRender();
|
|
|
|
virtual void OnMessage(int MsgType, void *pRawMsg);
|
|
|
|
virtual bool OnMouseMove(float x, float y);
|
|
|
|
virtual void OnConsoleInit();
|
2010-08-10 11:54:13 +00:00
|
|
|
virtual void OnPlayerDeath();
|
2011-04-13 18:37:12 +00:00
|
|
|
|
2010-05-29 07:25:38 +00:00
|
|
|
int SnapInput(int *pData);
|
2010-09-19 14:00:46 +00:00
|
|
|
void ClampMousePos();
|
2010-05-29 07:25:38 +00:00
|
|
|
};
|
|
|
|
#endif
|