增加loader

This commit is contained in:
Huoji's
2023-10-08 01:56:49 +08:00
parent 9232d1c390
commit d787a7da07
28 changed files with 1692 additions and 131 deletions

View File

@@ -0,0 +1,49 @@
#pragma once
#include "../sdk.h"
//cancer fix me
struct Vector_SimPleSdk
{
public:
float x, y, z;
Vector_SimPleSdk()
{}
Vector_SimPleSdk(float x_, float y_, float z_)
{
x = x_;
y = y_;
z = z_;
}
};
struct Vector2D
{
public:
float x, y;
Vector2D()
{}
Vector2D(float x_, float y_)
{
x = x_;
y = y_;
}
};
struct Vector4D
{
public:
float x, y, z, c;
Vector4D()
{}
Vector4D(float x_, float y_, float z_, float c_)
{
x = x_;
y = y_;
z = z_;
c = c_;
}
};

367
csgo2/sdk/public/color.h Normal file
View File

@@ -0,0 +1,367 @@
#pragma once
#include "../sdk.h"
class Color
{
public:
Color()
{
*((int*)this) = 0;
}
Color(int color32)
{
*((int*)this) = color32;
}
Color(int _r, int _g, int _b)
{
SetColor(_r, _g, _b, 255);
}
Color(int _r, int _g, int _b, int _a)
{
SetColor(_r, _g, _b, _a);
}
void SetColor(int _r, int _g, int _b, int _a = 255)
{
_color[0] = (unsigned char)_r;
_color[1] = (unsigned char)_g;
_color[2] = (unsigned char)_b;
_color[3] = (unsigned char)_a;
}
void GetColor(int& _r, int& _g, int& _b, int& _a) const
{
_r = _color[0];
_g = _color[1];
_b = _color[2];
_a = _color[3];
}
void SetRawColor(int color32)
{
*((int*)this) = color32;
}
int GetRawColor() const
{
return *((int*)this);
}
int GetD3DColor() const
{
return ((int)((((_color[3]) & 0xff) << 24) | (((_color[0]) & 0xff) << 16) | (((_color[1]) & 0xff) << 8) | ((_color[2]) & 0xff)));
}
inline int r() const
{
return _color[0];
}
inline int g() const
{
return _color[1];
}
inline int b() const
{
return _color[2];
}
inline int a() const
{
return _color[3];
}
inline float rBase() const
{
return _color[0] / 255.0f;
}
inline float gBase() const
{
return _color[1] / 255.0f;
}
inline float bBase() const
{
return _color[2] / 255.0f;
}
inline float aBase() const
{
return _color[3] / 255.0f;
}
unsigned char& operator[](int index)
{
return _color[index];
}
const unsigned char& operator[](int index) const
{
return _color[index];
}
bool operator ==(const Color& rhs) const
{
return (*((int*)this) == *((int*)&rhs));
}
bool operator !=(const Color& rhs) const
{
return !(operator==(rhs));
}
Color& operator=(const Color& rhs)
{
SetRawColor(rhs.GetRawColor());
return *this;
}
float* Base()
{
float clr[3];
clr[0] = _color[0] / 255.0f;
clr[1] = _color[1] / 255.0f;
clr[2] = _color[2] / 255.0f;
return &clr[0];
}
float* BaseAlpha()
{
float clr[4];
clr[0] = _color[0] / 255.0f;
clr[1] = _color[1] / 255.0f;
clr[2] = _color[2] / 255.0f;
clr[3] = _color[3] / 255.0f;
return &clr[0];
}
float Hue() const
{
if (_color[0] == _color[1] && _color[1] == _color[2])
{
return 0.0f;
}
float r = _color[0] / 255.0f;
float g = _color[1] / 255.0f;
float b = _color[2] / 255.0f;
float max = r > g ? r : g > b ? g : b,
min = r < g ? r : g < b ? g : b;
float delta = max - min;
float hue = 0.0f;
if (r == max)
{
hue = (g - b) / delta;
}
else if (g == max)
{
hue = 2 + (b - r) / delta;
}
else if (b == max)
{
hue = 4 + (r - g) / delta;
}
hue *= 60;
if (hue < 0.0f)
{
hue += 360.0f;
}
return hue;
}
float Saturation() const
{
float r = _color[0] / 255.0f;
float g = _color[1] / 255.0f;
float b = _color[2] / 255.0f;
float max = r > g ? r : g > b ? g : b,
min = r < g ? r : g < b ? g : b;
float l, s = 0;
if (max != min)
{
l = (max + min) / 2;
if (l <= 0.5f)
s = (max - min) / (max + min);
else
s = (max - min) / (2 - max - min);
}
return s;
}
float Brightness() const
{
float r = _color[0] / 255.0f;
float g = _color[1] / 255.0f;
float b = _color[2] / 255.0f;
float max = r > g ? r : g > b ? g : b,
min = r < g ? r : g < b ? g : b;
return (max + min) / 2;
}
static Color FromHSB(float hue, float saturation, float brightness)
{
float h = hue == 1.0f ? 0 : hue * 6.0f;
float f = h - (int)h;
float p = brightness * (1.0f - saturation);
float q = brightness * (1.0f - saturation * f);
float t = brightness * (1.0f - (saturation * (1.0f - f)));
if (h < 1)
{
return Color(
(unsigned char)(brightness * 255),
(unsigned char)(t * 255),
(unsigned char)(p * 255)
);
}
else if (h < 2)
{
return Color(
(unsigned char)(q * 255),
(unsigned char)(brightness * 255),
(unsigned char)(p * 255)
);
}
else if (h < 3)
{
return Color(
(unsigned char)(p * 255),
(unsigned char)(brightness * 255),
(unsigned char)(t * 255)
);
}
else if (h < 4)
{
return Color(
(unsigned char)(p * 255),
(unsigned char)(q * 255),
(unsigned char)(brightness * 255)
);
}
else if (h < 5)
{
return Color(
(unsigned char)(t * 255),
(unsigned char)(p * 255),
(unsigned char)(brightness * 255)
);
}
else
{
return Color(
(unsigned char)(brightness * 255),
(unsigned char)(p * 255),
(unsigned char)(q * 255)
);
}
}
static Color Red()
{
return Color(255, 0, 0);
}
static Color Green()
{
return Color(0, 255, 0);
}
static Color Blue()
{
return Color(0, 0, 255);
}
static Color LightBlue()
{
return Color(100, 100, 255);
}
static Color Grey()
{
return Color(128, 128, 128);
}
static Color DarkGrey()
{
return Color(45, 45, 45);
}
static Color Black()
{
return Color(0, 0, 0);
}
static Color White()
{
return Color(255, 255, 255);
}
static Color Purple()
{
return Color(220, 0, 220);
}
//Menu
static Color Background()
{
return Color(55, 55, 55);
}
static Color FrameBorder()
{
return Color(80, 80, 80);
}
static Color MainText()
{
return Color(230, 230, 230);
}
static Color HeaderText()
{
return Color(49, 124, 230);
}
static Color CurrentTab()
{
return Color(55, 55, 55);
}
static Color Tabs()
{
return Color(23, 23, 23);
}
static Color Highlight()
{
return Color(49, 124, 230);
}
static Color ElementBorder()
{
return Color(0, 0, 0);
}
static Color SliderScroll()
{
return Color(78, 143, 230);
}
private:
unsigned char _color[4];
};

View File

@@ -127,7 +127,36 @@ inline CGlobalVars::CGlobalVars() :
}
class CSharedEdictChangeInfo;
class IAchievementMgr;
class CCommandContext;
enum CommandTarget_t
{
CT_NO_TARGET = -1,
CT_FIRST_SPLITSCREEN_CLIENT = 0,
CT_LAST_SPLITSCREEN_CLIENT = 3,
};
class CCommandContext
{
public:
CCommandContext(CommandTarget_t nTarget, CPlayerSlot nSlot) :
m_nTarget(nTarget), m_nPlayerSlot(nSlot)
{
}
CommandTarget_t GetTarget() const
{
return m_nTarget;
}
CPlayerSlot GetPlayerSlot() const
{
return m_nPlayerSlot;
}
private:
CommandTarget_t m_nTarget;
CPlayerSlot m_nPlayerSlot;
};
class EconControlPointInfo_t;
struct EconItemInfo_t {

84
csgo2/sdk/public/icvar.h Normal file
View File

@@ -0,0 +1,84 @@
#pragma once
#include "../sdk.h"
class ConCommandBase;
class ConVar;
class Color;
class IConVarListener;
class CConVarDetail;
struct ConVarSnapshot_t;
union CVValue_t;
class KeyValues;
class ConVarRefAbstract;
class ConVarHandle;
struct CSplitScreenSlot;
class ConCommandHandle;
class ConCommand;
typedef void(*FnChangeCallbackGlobal_t)(ConVarRefAbstract* cvar, CSplitScreenSlot nSlot, const char* pNewValue, const char* pOldValue);
typedef void(*FnChangeCallback_t)(ConVarRefAbstract* cvar, CSplitScreenSlot nSlot, CVValue_t* pNewValue, CVValue_t* pOldValue);
class ConCommandRefAbstract;
class ConVarRefAbstract;
class ICVarListenerCallbacks
{
public:
virtual void OnConVarCreated(ConVarRefAbstract* pNewCvar) = 0;
virtual void OnConCommandCreated(ConCommandRefAbstract* pNewCommand) = 0;
};
//-----------------------------------------------------------------------------
// Purpose: DLL interface to ConVars/ConCommands
//-----------------------------------------------------------------------------
class ICvar : public IAppSystem
{
public:
// bAllowDeveloper - Allows finding convars with FCVAR_DEVELOPMENTONLY flag
virtual ConVarHandle FindConVar(const char* name, bool bAllowDeveloper = false) = 0;
virtual ConVarHandle FindFirstConVar() = 0;
virtual ConVarHandle FindNextConVar(ConVarHandle prev) = 0;
virtual void SetConVarValue(ConVarHandle cvarid, CSplitScreenSlot nSlot, CVValue_t* pNewValue, CVValue_t* pOldValue) = 0;
virtual ConCommandHandle FindCommand(const char* name) = 0;
virtual ConCommandHandle FindFirstCommand() = 0;
virtual ConCommandHandle FindNextCommand(ConCommandHandle prev) = 0;
virtual void DispatchConCommand(ConCommandHandle cmd, const CCommandContext& ctx, const CCommand& args) = 0;
// Install a global change callback (to be called when any convar changes)
virtual void InstallGlobalChangeCallback(FnChangeCallbackGlobal_t callback) = 0;
virtual void RemoveGlobalChangeCallback(FnChangeCallbackGlobal_t callback) = 0;
virtual void CallGlobalChangeCallbacks(ConVarRefAbstract* var, CSplitScreenSlot nSlot, const char* pOldString, float flOldValue) = 0;
// Reverts cvars which contain a specific flag
virtual void RevertFlaggedConVars(int nFlag) = 0;
virtual void SetMaxSplitScreenSlots(int nSlots) = 0;
virtual int GetMaxSplitScreenSlots() const = 0;
virtual void RegisterCreationListeners(ICVarListenerCallbacks* callbacks) = 0;
virtual void RemoveCreationListeners(ICVarListenerCallbacks* callbacks) = 0;
virtual void unk1() = 0;
virtual void ResetConVarsToDefaultValues(const char* pszPrefix) = 0;
virtual ConVarSnapshot_t* TakeConVarSnapshot(void) = 0;
virtual void ResetConVarsToSnapshot(ConVarSnapshot_t* pSnapshot) = 0;
virtual void DestroyConVarSnapshot(ConVarSnapshot_t* pSnaoshot) = 0;
virtual characterset_t GetCharacterSet(void) = 0;
virtual void SetConVarsFromGameInfo(KeyValues* pKV) = 0;
virtual void unk2() = 0;
// Register, unregister vars
virtual void RegisterConVar(ConVar* pConVar, int64 nAdditionalFlags, ConVarHandle& pCvarRef, ConVar& pCvar) = 0;
virtual void UnregisterConVar(ConVarHandle handle) = 0;
virtual ConVar* GetConVar(ConVarHandle handle) = 0;
// Register, unregister commands
virtual ConCommandHandle RegisterConCommand(ConCommand* pCmd, int64 nAdditionalFlags = 0) = 0;
virtual void UnregisterConCommand(ConCommandHandle handle) = 0;
virtual ConCommand* GetCommand(ConCommandHandle handle) = 0;
virtual void QueueThreadSetValue(ConVarRefAbstract* ref, CSplitScreenSlot nSlot, CVValue_t* value) = 0;
};