Something went wrong. Try again.
the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
Something went wrong. Try again.
2.6 kB · 85 lines
C
at main
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586#pragma once
class IntBuffer;class Options;class Textures;class ResourceLocation;
class Font{private: int *charWidths;public: int fontTexture; Random *random;
private: int colors[32]; // RGB colors for formatting
Textures *textures;
float xPos; float yPos;
bool enforceUnicodeSheet; // use unicode sheet for ascii bool bidirectional; // use bidi to flip strings
int m_cols; // Number of columns in font sheet int m_rows; // Number of rows in font sheet int m_charWidth; // Maximum character width int m_charHeight; // Maximum character height ResourceLocation *m_textureLocation; // Texture std::map<int, int> m_charMap;
public: Font(Options *options, const wstring& name, Textures* textures, bool enforceUnicode, ResourceLocation *textureLocation, int cols, int rows, int charWidth, int charHeight, unsigned short charMap[] = NULL);#ifndef _XBOX // 4J Stu - This dtor clashes with one in xui! We never delete these anyway so take it out for now. Can go back when we have got rid of XUI ~Font();#endif void renderFakeCB(IntBuffer *cb); // 4J added
private: void renderCharacter(wchar_t c); // 4J added
public: void drawShadow(const wstring& str, int x, int y, int color); void drawShadowWordWrap(const wstring &str, int x, int y, int w, int color, int h); // 4J Added h param void draw(const wstring &str, int x, int y, int color); /** * Reorders the string according to bidirectional levels. A bit expensive at * the moment. * * @param str * @return */private: wstring reorderBidi(const wstring &str);
void draw(const wstring &str, bool dropShadow); void draw(const wstring& str, int x, int y, int color, bool dropShadow); int MapCharacter(wchar_t c); // 4J added bool CharacterExists(wchar_t c); // 4J added
public: int width(const wstring& str); wstring sanitize(const wstring& str); void drawWordWrap(const wstring &string, int x, int y, int w, int col, int h); // 4J Added h param
private: void drawWordWrapInternal(const wstring &string, int x, int y, int w, int col, int h); // 4J Added h param
public: void drawWordWrap(const wstring &string, int x, int y, int w, int col, bool darken, int h); // 4J Added h param
private: void drawWordWrapInternal(const wstring& string, int x, int y, int w, int col, bool darken, int h); // 4J Added h param
public: int wordWrapHeight(const wstring& string, int w); void setEnforceUnicodeSheet(bool enforceUnicodeSheet); void setBidirectional(bool bidirectional);
// 4J-PB - check for invalid player name - Japanese local name bool AllCharactersValid(const wstring &str);};