/* (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_EMOJIS_H #define GAME_CLIENT_COMPONENTS_EMOJIS_H #include #include class CEmojis : public CComponent { public: struct CEmojiInfo { int m_ID; int index; int length; bool operator<(const CEmojiInfo &Other) { if (index < Other.index) return true; if (index == Other.index) return length >= Other.length; return false; } }; struct CEmoji { int m_ID; char m_UTF[17]; char m_UNICODE[64]; char m_Alias[64]; }; int Num() const; const CEmoji *GetByAlias(const char *alias) const; const CEmoji *GetByIndex(int index) const; void Render(int i, float x, float y, float w, float h); private: array m_aEmojis; void LoadEmojisIndexfile(); void OnInit(); }; #endif