ddnet/src/game/client/components/emoticon.h
2021-10-07 16:48:25 +02:00

42 lines
1.2 KiB
C++

/* (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. */
#ifndef GAME_CLIENT_COMPONENTS_EMOTICON_H
#define GAME_CLIENT_COMPONENTS_EMOTICON_H
#include <base/vmath.h>
#include <game/client/component.h>
class CEmoticon : public CComponent
{
void DrawCircle(float x, float y, float r, int Segments);
bool m_WasActive;
bool m_Active;
vec2 m_SelectorMouse;
int m_SelectedEmote;
int m_SelectedEyeEmote;
static void ConKeyEmoticon(IConsole::IResult *pResult, void *pUserData);
static void ConEmote(IConsole::IResult *pResult, void *pUserData);
EComponentMouseMovementBlockMode OnMouseWrongStateImpl();
public:
CEmoticon();
virtual void OnReset();
virtual void OnConsoleInit();
virtual void OnRender();
virtual void OnRelease();
virtual EComponentMouseMovementBlockMode OnMouseInWindowPos(int X, int Y);
virtual EComponentMouseMovementBlockMode OnMouseAbsoluteInWindowPos(int X, int Y);
virtual EComponentMouseMovementBlockMode OnMouseInWindowRelativeMove(int X, int Y);
virtual EComponentMouseMovementBlockMode OnMouseRelativeMove(float x, float y);
void Emote(int Emote);
void EyeEmote(int EyeEmote);
};
#endif