UwUHax/surface.h
2021-08-27 18:58:23 +07:00

75 lines
2.2 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

class ISurface
{
public:
void DrawSetColor(int r, int g, int b, int a)
{
typedef void(__thiscall* OriginalFn)(PVOID, int, int, int, int);
getvfunc<OriginalFn>(this, 11)(this, r, g, b, a);
}
void DrawFilledRect(int x0, int y0, int x1, int y1)
{
typedef void(__thiscall* OriginalFn)(PVOID, int, int, int, int);
getvfunc<OriginalFn>(this, 12)(this, x0, y0, x1, y1);
}
void DrawOutlinedRect(int x0, int y0, int x1, int y1)
{
typedef void(__thiscall* OriginalFn)(PVOID, int, int, int, int);
getvfunc<OriginalFn>(this, 14)(this, x0, y0, x1, y1);
}
void DrawLine(int x0, int y0, int x1, int y1)
{
typedef void(__thiscall* OriginalFn)(PVOID, int, int, int, int);
getvfunc<OriginalFn>(this, 15)(this, x0, y0, x1, y1);
}
void DrawSetTextFont(unsigned long font)
{
typedef void(__thiscall* OriginalFn)(PVOID, unsigned long);
getvfunc<OriginalFn>(this, 17)(this, font);
}
void DrawSetTextColor(int r, int g, int b, int a)
{
typedef void(__thiscall* OriginalFn)(PVOID, int, int, int, int);
getvfunc<OriginalFn>(this, 19)(this, r, g, b, a);
}
void DrawSetTextPos(int x, int y)
{
typedef void(__thiscall* OriginalFn)(PVOID, int, int);
getvfunc<OriginalFn>(this, 20)(this, x, y);
}
void DrawPrintText(const wchar_t *text, int textLen)
{
typedef void(__thiscall* OriginalFn)(PVOID, const wchar_t *, int, int);
return getvfunc<OriginalFn>(this, 22)(this, text, textLen, 0);
}
unsigned long Create_Font()
{
typedef unsigned int(__thiscall* OriginalFn)(PVOID);
return getvfunc<OriginalFn>(this, 63)(this);
}
void SetFontGlyphSet(unsigned long &font, const char *windowsFontName, int tall, int weight, int blur, int scanlines, int flags)
{
typedef void(__thiscall* OriginalFn)(PVOID, unsigned long, const char*, int, int, int, int, int, int, int);
getvfunc<OriginalFn>(this, 64)(this, font, windowsFontName, tall, weight, blur, scanlines, flags, 0, 0);
}
void GetTextSize(unsigned long font, const wchar_t *text, int &wide, int &tall)
{
typedef void(__thiscall* OriginalFn)(void*, unsigned long font, const wchar_t *text, int &wide, int &tall);
getvfunc<OriginalFn>(this, 72)(this, font, text, wide, tall);
}
};