GetScriptDesc<CBaseEntity>
0x00611410 · 7899 bytes · __cdecl
_Z13GetScriptDescI11CBaseEntityEP17ScriptClassDesc_tPT_.part.344
Decompiled
ScriptClassDesc_t * (1 param)
/* ScriptClassDesc_t* GetScriptDesc<CBaseEntity>(CBaseEntity*) [clone .part.344] */
ScriptClassDesc_t * GetScriptDesc<CBaseEntity>(CBaseEntity *param_1)
{
CUtlVector<int,CUtlMemory<int,int>> *pCVar1;
undefined4 uVar2;
int iVar3;
void *pvVar4;
ScriptClassDesc_t *pSVar5;
undefined4 *puVar6;
int local_20 [4];
GetScriptDesc<CBaseEntity>(CBaseEntity*)::bInitialized = 1;
g_CBaseEntity_ScriptDesc._8_4_ = s_Root_class_of_all_server_side_en_00c5dfc4;
g_CBaseEntity_ScriptDesc._0_4_ = s_CBaseEntity_00c5c304;
g_CBaseEntity_ScriptDesc._4_4_ = s_CBaseEntity_00c5c304;
g_CBaseEntity_ScriptDesc._12_4_ = 0;
g_CBaseEntity_ScriptDesc._44_4_ = &g_BaseEntityScriptInstanceHelper;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] =
"Adds an I/O connection that will call the named function when the specified output fires";
*puVar6 = "ConnectOutput";
puVar6[1] = "ConnectOutputToScript";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 2) {
puVar6[5] = 2;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(8);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],8);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding2<CBaseEntity*,void(CBaseEntity::*)(char_const*,char_const*),void,char_const*,char_const*>
::Call;
puVar6[10] = CBaseEntity::ConnectOutputToScript;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Removes a connected script function from an I/O event.";
*puVar6 = "DisconnectOutput";
puVar6[1] = "DisconnectOutputFromScript";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 2) {
puVar6[5] = 2;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(8);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],8);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding2<CBaseEntity*,void(CBaseEntity::*)(char_const*,char_const*),void,char_const*,char_const*>
::Call;
puVar6[10] = CBaseEntity::DisconnectOutputFromScript;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetHealth";
puVar6[1] = "GetHealth";
puVar6[3] = 5;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,int(CBaseEntity::*)(),int>::Call;
puVar6[10] = CBaseEntity::GetHealth;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetHealth";
puVar6[1] = "SetHealth";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 5;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(int),void,int>::Call;
puVar6[10] = CBaseEntity::SetHealth;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetMaxHealth";
puVar6[1] = "GetMaxHealth";
puVar6[3] = 5;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,int(CBaseEntity::*)(),int>::Call;
puVar6[10] = 0x1fd;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetMaxHealth";
puVar6[1] = "SetMaxHealth";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 5;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(int),void,int>::Call;
puVar6[10] = CBaseEntity::SetMaxHealth;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "(flDamage, nDamageType, hAttacker)";
*puVar6 = "TakeDamage";
puVar6[1] = "ScriptTakeDamage";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 3) {
puVar6[5] = 3;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(0xc);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],0xc);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
pCVar1 = (CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 5;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 0x20;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding3<CBaseEntity*,void(CBaseEntity::*)(float,int,HSCRIPT__*),void,float,int,HSCRIPT__*>
::Call;
puVar6[10] = CBaseEntity::ScriptTakeDamage;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] =
"(hInflictor, hAttacker, hWeapon, vecDamageForce, vecDamagePosition, flDamage, nDamageType)";
*puVar6 = "TakeDamageEx";
puVar6[1] = "ScriptTakeDamageEx";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 7) {
puVar6[5] = 7;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(0x1c);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],0x1c);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
pCVar1 = (CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4);
local_20[0] = 0x20;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 0x20;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 0x20;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 5;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding7<CBaseEntity*,void(CBaseEntity::*)(HSCRIPT__*,HSCRIPT__*,HSCRIPT__*,Vector,Vector,float,int),void,HSCRIPT__*,HSCRIPT__*,HSCRIPT__*,Vector,Vector,float,int>
::Call;
puVar6[10] = CBaseEntity::ScriptTakeDamageEx;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetModelName";
puVar6[1] = "ScriptGetModelName";
puVar6[3] = 0x1f;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,char_const*(CBaseEntity::*)(),char_const*>::Call;
puVar6[10] = 0x39;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Set a model for this entity";
*puVar6 = "SetModel";
puVar6[1] = "SetModel";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(char_const*),void,char_const*>
::Call;
puVar6[10] = 0x71;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "IsPlayer";
puVar6[1] = "IsPlayer";
puVar6[3] = 6;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,bool(CBaseEntity::*)(),bool>::Call;
puVar6[10] = 0x16d;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetEntityIndex";
puVar6[1] = "entindex";
puVar6[3] = 5;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,int(CBaseEntity::*)(),int>::Call;
puVar6[10] = CBaseEntity::entindex;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "PrecacheModel";
puVar6[1] = "ScriptPrecacheModel";
puVar6[3] = 5;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,int(CBaseEntity::*)(char_const*),int,char_const*>::
Call;
puVar6[10] = CBaseEntity::ScriptPrecacheModel;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "PrecacheScriptSound";
puVar6[1] = "Script_PrecacheScriptSound";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(char_const*),void,char_const*>
::Call;
puVar6[10] = CBaseEntity::Script_PrecacheScriptSound;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "Kill";
puVar6[1] = "ScriptInputKill";
puVar6[3] = 0;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,void(CBaseEntity::*)(),void>::Call;
puVar6[10] = CBaseEntity::ScriptInputKill;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetClassname";
puVar6[1] = "GetClassname";
puVar6[3] = 0x1f;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,char_const*(CBaseEntity::*)(),char_const*>::Call;
puVar6[10] = CBaseEntity::GetClassname;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetName";
puVar6[1] = "GetEntityNameAsCStr";
puVar6[3] = 0x1f;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,char_const*(CBaseEntity::*)(),char_const*>::Call;
puVar6[10] = CBaseEntity::GetEntityNameAsCStr;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get the entity name stripped of template unique decoration";
*puVar6 = "GetPreTemplateName";
puVar6[1] = "GetPreTemplateName";
puVar6[3] = 0x1f;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,char_const*(CBaseEntity::*)(),char_const*>::Call;
puVar6[10] = CBaseEntity::GetPreTemplateName;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get the entity as an EHANDLE";
*puVar6 = "GetEntityHandle";
puVar6[1] = "ScriptGetEHandle";
puVar6[3] = 0x1e;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,CHandle<CBaseEntity>(CBaseEntity::*)(),CHandle<CBaseEntity>>
::Call;
puVar6[10] = CBaseEntity::ScriptGetEHandle;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetOrigin";
puVar6[1] = "GetAbsOrigin";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector_const&(CBaseEntity::*)(),Vector_const&>::
Call;
puVar6[10] = CBaseEntity::GetAbsOrigin;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetOrigin";
puVar6[1] = "ScriptSetOrigin";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(Vector_const&),void,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::ScriptSetOrigin;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get the forward vector of the entity";
*puVar6 = "GetForwardVector";
puVar6[1] = "ScriptGetForward";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector_const&(CBaseEntity::*)(),Vector_const&>::
Call;
puVar6[10] = CBaseEntity::ScriptGetForward;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Set the orientation of the entity to have this forward vector";
*puVar6 = "SetForwardVector";
puVar6[1] = "ScriptSetForward";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(Vector_const&),void,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::ScriptSetForward;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get world space center of object - absolute coords";
*puVar6 = "GetCenter";
puVar6[1] = "ScriptGetWorldSpaceCenter";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector(CBaseEntity::*)(),Vector>::Call;
puVar6[10] = CBaseEntity::ScriptGetWorldSpaceCenter;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetVelocity";
puVar6[1] = "GetAbsVelocity";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector_const&(CBaseEntity::*)(),Vector_const&>::
Call;
puVar6[10] = CBaseEntity::GetAbsVelocity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetVelocity";
puVar6[1] = "SetAbsVelocity";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(Vector_const&),void,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::SetAbsVelocity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get Entity relative velocity";
*puVar6 = "GetLocalVelocity";
puVar6[1] = "GetLocalVelocity";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector_const&(CBaseEntity::*)(),Vector_const&>::
Call;
puVar6[10] = CBaseEntity::GetLocalVelocity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get Base? velocity";
*puVar6 = "GetBaseVelocity";
puVar6[1] = "GetBaseVelocity";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector_const&(CBaseEntity::*)(),Vector_const&>::
Call;
puVar6[10] = CBaseEntity::GetBaseVelocity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Maybe local angvel";
*puVar6 = "GetLocalAngularVelocity";
puVar6[1] = "GetLocalAngularVelocity";
puVar6[3] = 0x28;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,QAngle_const&(CBaseEntity::*)(),QAngle_const&>::
Call;
puVar6[10] = CBaseEntity::GetLocalAngularVelocity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Apply a Velocity Impulse";
*puVar6 = "ApplyAbsVelocityImpulse";
puVar6[1] = "ApplyAbsVelocityImpulse";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(Vector_const&),void,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::ApplyAbsVelocityImpulse;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Apply an Ang Velocity Impulse";
*puVar6 = "ApplyLocalAngularVelocityImpulse";
puVar6[1] = "ApplyLocalAngularVelocityImpulse";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(Vector_const&),void,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::ApplyLocalAngularVelocityImpulse;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Set PLAYER friction, ignored for objects";
*puVar6 = "SetFriction";
puVar6[1] = "SetFriction";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(float),void,float>::Call;
puVar6[10] = CBaseEntity::SetFriction;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Set PLAYER gravity, ignored for objects";
*puVar6 = "SetGravity";
puVar6[1] = "SetGravity";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(float),void,float>::Call;
puVar6[10] = CBaseEntity::SetGravity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Takes duration, value for a temporary override";
*puVar6 = "OverrideFriction";
puVar6[1] = "OverrideFriction";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 2) {
puVar6[5] = 2;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(8);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],8);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding2<CBaseEntity*,void(CBaseEntity::*)(float,float),void,float,float>
::Call;
puVar6[10] = CBaseEntity::OverrideFriction;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetAngles";
puVar6[1] = "GetAbsAngles";
puVar6[3] = 0x28;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,QAngle_const&(CBaseEntity::*)(),QAngle_const&>::
Call;
puVar6[10] = CBaseEntity::GetAbsAngles;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetAngles";
puVar6[1] = "SetAbsAngles";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x28;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(QAngle_const&),void,QAngle_const&>
::Call;
puVar6[10] = CBaseEntity::SetAbsAngles;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetLocalOrigin";
puVar6[1] = "GetLocalOrigin";
puVar6[3] = 3;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,Vector_const&(CBaseEntity::*)(),Vector_const&>::
Call;
puVar6[10] = CBaseEntity::GetLocalOrigin;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "GetLocalAngles";
puVar6[1] = "GetLocalAngles";
puVar6[3] = 0x28;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,QAngle_const&(CBaseEntity::*)(),QAngle_const&>::
Call;
puVar6[10] = CBaseEntity::GetLocalAngles;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetLocalOrigin";
puVar6[1] = "SetLocalOrigin";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(Vector_const&),void,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::SetLocalOrigin;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "SetLocalAngles";
puVar6[1] = "SetLocalAngles";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x28;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,void(CBaseEntity::*)(QAngle_const&),void,QAngle_const&>
::Call;
puVar6[10] = CBaseEntity::SetLocalAngles;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] =
"SetContext( name , value, duration ): store any key/value pair in this entity\'s dialog contexts. Value must be a string. Will last for duration (set -1 to mean \'forever\')."
;
*puVar6 = "SetContext";
puVar6[1] = "AddContextForScript";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 3) {
puVar6[5] = 3;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(0xc);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],0xc);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
pCVar1 = (CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4);
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding3<CBaseEntity*,void(CBaseEntity::*)(char_const*,char_const*,float),void,char_const*,char_const*,float>
::Call;
puVar6[10] = CBaseEntity::AddContextForScript;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] =
"SetContext( name , value, duration ): store any key/value pair in this entity\'s dialog contexts. Value must be a number (int or float). Will last for duration (set -1 to mean \'forever\')."
;
*puVar6 = "SetContextNum";
puVar6[1] = "AddContextForScriptNumeric";
puVar6[3] = 0;
puVar6[6] = 1;
if ((int)puVar6[5] < 3) {
puVar6[5] = 3;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(0xc);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],0xc);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
pCVar1 = (CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4);
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore(pCVar1,puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding3<CBaseEntity*,void(CBaseEntity::*)(char_const*,float,float),void,char_const*,float,float>
::Call;
puVar6[10] = CBaseEntity::AddContextForScriptNumeric;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] =
"GetContext( name ): looks up a context and returns it if available. May return string, float, or null (if the context isn\'t found)"
;
*puVar6 = "GetContext";
puVar6[1] = "GetContextForScript";
puVar6[3] = 0x21;
puVar6[6] = 1;
if ((int)puVar6[5] < 1) {
puVar6[5] = 1;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(4);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],4);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding1<CBaseEntity*,CVariantBase<CVariantDefaultAllocator>(CBaseEntity::*)(char_const*),CVariantBase<CVariantDefaultAllocator>,char_const*>
::Call;
puVar6[10] = CBaseEntity::GetContextForScript;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "If in hierarchy, retrieves the entity\'s parent";
*puVar6 = "GetMoveParent";
puVar6[1] = "ScriptGetMoveParent";
puVar6[3] = 0x20;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,HSCRIPT__*(CBaseEntity::*)(),HSCRIPT__*>::Call;
puVar6[10] = CBaseEntity::ScriptGetMoveParent;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "If in hierarchy, walks up the hierarchy to find the root parent";
*puVar6 = "GetRootMoveParent";
puVar6[1] = "ScriptGetRootMoveParent";
puVar6[3] = 0x20;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,HSCRIPT__*(CBaseEntity::*)(),HSCRIPT__*>::Call;
puVar6[10] = CBaseEntity::ScriptGetRootMoveParent;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "FirstMoveChild";
puVar6[1] = "ScriptFirstMoveChild";
puVar6[3] = 0x20;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,HSCRIPT__*(CBaseEntity::*)(),HSCRIPT__*>::Call;
puVar6[10] = CBaseEntity::ScriptFirstMoveChild;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00d539c2;
*puVar6 = "NextMovePeer";
puVar6[1] = "ScriptNextMovePeer";
puVar6[3] = 0x20;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,HSCRIPT__*(CBaseEntity::*)(),HSCRIPT__*>::Call;
puVar6[10] = CBaseEntity::ScriptNextMovePeer;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Get the owner entity, if there is one";
*puVar6 = "GetOwnerEntity";
puVar6[1] = "ScriptGetOwnerEntity";
puVar6[3] = 0x20;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,HSCRIPT__*(CBaseEntity::*)(),HSCRIPT__*>::Call;
puVar6[10] = CBaseEntity::ScriptGetOwnerEntity;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00c5cb2f;
*puVar6 = "__KeyValueFromString";
puVar6[1] = "KeyValueFromString";
puVar6[3] = 6;
puVar6[6] = 1;
if ((int)puVar6[5] < 2) {
puVar6[5] = 2;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(8);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],8);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding2<CBaseEntity*,bool(CBaseEntity::*)(char_const*,char_const*),bool,char_const*,char_const*>
::Call;
puVar6[10] = CBaseEntity::KeyValueFromString;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00c5cb2f;
*puVar6 = "__KeyValueFromInt";
puVar6[1] = "KeyValueFromInt";
puVar6[3] = 6;
puVar6[6] = 1;
if ((int)puVar6[5] < 2) {
puVar6[5] = 2;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(8);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],8);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
local_20[0] = 1;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding2<CBaseEntity*,bool(CBaseEntity::*)(char_const*,float),bool,char_const*,float>
::Call;
puVar6[10] = CBaseEntity::KeyValueFromInt;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = &DAT_00c5cb2f;
*puVar6 = "__KeyValueFromVector";
puVar6[1] = "KeyValueFromVector";
puVar6[3] = 6;
puVar6[6] = 1;
if ((int)puVar6[5] < 2) {
puVar6[5] = 2;
if ((void *)puVar6[4] == (void *)0x0) {
pvVar4 = malloc(8);
puVar6[4] = pvVar4;
}
else {
pvVar4 = realloc((void *)puVar6[4],8);
puVar6[4] = pvVar4;
}
}
else {
pvVar4 = (void *)puVar6[4];
}
puVar6[8] = pvVar4;
local_20[0] = 0x1f;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
local_20[0] = 3;
CUtlVector<int,CUtlMemory<int,int>>::InsertBefore
((CUtlVector<int,CUtlMemory<int,int>> *)(puVar6 + 4),puVar6[7],local_20);
uVar2 = g_CBaseEntity_ScriptDesc._28_4_;
puVar6[9] = CMemberScriptBinding2<CBaseEntity*,bool(CBaseEntity::*)(char_const*,Vector_const&),bool,char_const*,Vector_const&>
::Call;
puVar6[10] = CBaseEntity::KeyValueFromVector;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),uVar2);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Ensure that an entity\'s script scope has been created";
*puVar6 = "ValidateScriptScope";
puVar6[1] = "ValidateScriptScope";
puVar6[3] = 6;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,bool(CBaseEntity::*)(),bool>::Call;
puVar6[10] = CBaseEntity::ValidateScriptScope;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
puVar6 = (undefined4 *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
puVar6[2] = "Retrieve the script-side data associated with an entity";
*puVar6 = "GetScriptScope";
puVar6[1] = "GetScriptScope";
puVar6[3] = 0x20;
puVar6[9] = CMemberScriptBinding0<CBaseEntity*,HSCRIPT__*(CBaseEntity::*)(),HSCRIPT__*>::Call;
puVar6[10] = CBaseEntity::GetScriptScope;
puVar6[0xb] = 1;
iVar3 = CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>>::InsertBefore
((CUtlVector<ScriptFunctionBinding_t,CUtlMemory<ScriptFunctionBinding_t,int>> *)
(g_CBaseEntity_ScriptDesc + 0x10),g_CBaseEntity_ScriptDesc._28_4_);
pSVar5 = (ScriptClassDesc_t *)(iVar3 * 0x30 + g_CBaseEntity_ScriptDesc._16_4_);
*(char **)(pSVar5 + 8) =
"Retrieve the unique identifier used to refer to the entity within the scripting system";
*(char **)pSVar5 = "GetScriptId";
*(char **)(pSVar5 + 4) = "GetScriptId";
*(undefined4 *)(pSVar5 + 0xc) = 0x1f;
*(code **)(pSVar5 + 0x24) =
CMemberScriptBinding0<CBaseEntity*,char_const*(CBaseEntity::*)(),char_const*>::Call;
*(code **)(pSVar5 + 0x28) = CBaseEntity::GetScriptId;
*(undefined4 *)(pSVar5 + 0x2c) = 1;
return pSVar5;
}
SourceMod gamedata
paste intoaddons/sourcemod/gamedata/<your_plugin>.txt
used as the SourceMod key — change to fit your plugin's convention
SourceMod library name (server / engine / matchmaking)
Just a Signatures{} block, ready to drop into a gamedata
file. Wire it up in your plugin however you like - SDKCall, DHooks,
raw memory ops, or anything else.
Signatures + Functions block. The plugin uses
DHookCreateFromConf - DHooks reads return type, this-type,
calling convention, and argument types straight from the gamedata. Less
boilerplate in the plugin, types travel with the gamedata.
Gamedata KeyValues
DHooks plugin example
Type inference is best-effort from the C signature - sanity-check the DHooks types before shipping.