Compare commits

..

2 Commits

Author SHA1 Message Date
a2x
4944a3a630 Avoid generating files for empty modules 2024-04-07 18:23:52 +10:00
a2x
9f37324266 Fix for enum values that could be out of range for their datatype 2024-04-07 15:35:48 +10:00
72 changed files with 196 additions and 268 deletions

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: animationsystem.dll // Module: animationsystem.dll
@ -2697,7 +2697,7 @@ namespace CS2Dumper.Schemas {
public static class CStateMachineUpdateNode { public static class CStateMachineUpdateNode {
public const nint m_stateMachine = 0x68; // CAnimStateMachineUpdater public const nint m_stateMachine = 0x68; // CAnimStateMachineUpdater
public const nint m_stateData = 0xC0; // CUtlVector<CStateNodeStateData> public const nint m_stateData = 0xC0; // CUtlVector<CStateNodeStateData>
public const nint m_transitionData = 0xD8; // CUtlVector<CStateNodeTransition public const nint m_transitionData = 0xD8; // CUtlVector<CStateNodeTransitionData>
public const nint m_bBlockWaningTags = 0xF4; // bool public const nint m_bBlockWaningTags = 0xF4; // bool
public const nint m_bLockStateWhenWaning = 0xF5; // bool public const nint m_bLockStateWhenWaning = 0xF5; // bool
} }

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once
@ -2702,7 +2702,7 @@ namespace cs2_dumper {
namespace CStateMachineUpdateNode { namespace CStateMachineUpdateNode {
constexpr std::ptrdiff_t m_stateMachine = 0x68; // CAnimStateMachineUpdater constexpr std::ptrdiff_t m_stateMachine = 0x68; // CAnimStateMachineUpdater
constexpr std::ptrdiff_t m_stateData = 0xC0; // CUtlVector<CStateNodeStateData> constexpr std::ptrdiff_t m_stateData = 0xC0; // CUtlVector<CStateNodeStateData>
constexpr std::ptrdiff_t m_transitionData = 0xD8; // CUtlVector<CStateNodeTransition constexpr std::ptrdiff_t m_transitionData = 0xD8; // CUtlVector<CStateNodeTransitionData>
constexpr std::ptrdiff_t m_bBlockWaningTags = 0xF4; // bool constexpr std::ptrdiff_t m_bBlockWaningTags = 0xF4; // bool
constexpr std::ptrdiff_t m_bLockStateWhenWaning = 0xF5; // bool constexpr std::ptrdiff_t m_bLockStateWhenWaning = 0xF5; // bool
} }

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -35,7 +35,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum BoneTransformSpace_t { pub enum BoneTransformSpace_t {
BoneTransformSpace_Invalid = 0xFFFFFFFFFFFFFFFF, BoneTransformSpace_Invalid = u32::MAX,
BoneTransformSpace_Parent = 0x0, BoneTransformSpace_Parent = 0x0,
BoneTransformSpace_Model = 0x1, BoneTransformSpace_Model = 0x1,
BoneTransformSpace_World = 0x2 BoneTransformSpace_World = 0x2
@ -82,7 +82,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u8)] #[repr(u8)]
pub enum MovementGait_t { pub enum MovementGait_t {
eInvalid = 0xFFFFFFFFFFFFFFFF, eInvalid = u8::MAX,
eWalk = 0x0, eWalk = 0x0,
eJog = 0x1, eJog = 0x1,
eRun = 0x2, eRun = 0x2,
@ -266,7 +266,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum ModelBoneFlexComponent_t { pub enum ModelBoneFlexComponent_t {
MODEL_BONE_FLEX_INVALID = 0xFFFFFFFFFFFFFFFF, MODEL_BONE_FLEX_INVALID = u32::MAX,
MODEL_BONE_FLEX_TX = 0x0, MODEL_BONE_FLEX_TX = 0x0,
MODEL_BONE_FLEX_TY = 0x1, MODEL_BONE_FLEX_TY = 0x1,
MODEL_BONE_FLEX_TZ = 0x2 MODEL_BONE_FLEX_TZ = 0x2
@ -538,7 +538,7 @@ pub mod cs2_dumper {
// Members count: 3 // Members count: 3
#[repr(u16)] #[repr(u16)]
pub enum AnimScriptType { pub enum AnimScriptType {
ANIMSCRIPT_TYPE_INVALID = 0xFFFFFFFFFFFFFFFF, ANIMSCRIPT_TYPE_INVALID = u16::MAX,
ANIMSCRIPT_FUSE_GENERAL = 0x0, ANIMSCRIPT_FUSE_GENERAL = 0x0,
ANIMSCRIPT_FUSE_STATEMACHINE = 0x1 ANIMSCRIPT_FUSE_STATEMACHINE = 0x1
} }
@ -589,7 +589,7 @@ pub mod cs2_dumper {
// Members count: 18 // Members count: 18
#[repr(u32)] #[repr(u32)]
pub enum ParticleAttachment_t { pub enum ParticleAttachment_t {
PATTACH_INVALID = 0xFFFFFFFFFFFFFFFF, PATTACH_INVALID = u32::MAX,
PATTACH_ABSORIGIN = 0x0, PATTACH_ABSORIGIN = 0x0,
PATTACH_ABSORIGIN_FOLLOW = 0x1, PATTACH_ABSORIGIN_FOLLOW = 0x1,
PATTACH_CUSTOMORIGIN = 0x2, PATTACH_CUSTOMORIGIN = 0x2,
@ -723,7 +723,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u32)] #[repr(u32)]
pub enum ModelConfigAttachmentType_t { pub enum ModelConfigAttachmentType_t {
MODEL_CONFIG_ATTACHMENT_INVALID = 0xFFFFFFFFFFFFFFFF, MODEL_CONFIG_ATTACHMENT_INVALID = u32::MAX,
MODEL_CONFIG_ATTACHMENT_BONE_OR_ATTACHMENT = 0x0, MODEL_CONFIG_ATTACHMENT_BONE_OR_ATTACHMENT = 0x0,
MODEL_CONFIG_ATTACHMENT_ROOT_RELATIVE = 0x1, MODEL_CONFIG_ATTACHMENT_ROOT_RELATIVE = 0x1,
MODEL_CONFIG_ATTACHMENT_BONEMERGE = 0x2, MODEL_CONFIG_ATTACHMENT_BONEMERGE = 0x2,
@ -2770,7 +2770,7 @@ pub mod cs2_dumper {
pub mod CStateMachineUpdateNode { pub mod CStateMachineUpdateNode {
pub const m_stateMachine: usize = 0x68; // CAnimStateMachineUpdater pub const m_stateMachine: usize = 0x68; // CAnimStateMachineUpdater
pub const m_stateData: usize = 0xC0; // CUtlVector<CStateNodeStateData> pub const m_stateData: usize = 0xC0; // CUtlVector<CStateNodeStateData>
pub const m_transitionData: usize = 0xD8; // CUtlVector<CStateNodeTransition pub const m_transitionData: usize = 0xD8; // CUtlVector<CStateNodeTransitionData>
pub const m_bBlockWaningTags: usize = 0xF4; // bool pub const m_bBlockWaningTags: usize = 0xF4; // bool
pub const m_bLockStateWhenWaning: usize = 0xF5; // bool pub const m_bLockStateWhenWaning: usize = 0xF5; // bool
} }

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper { namespace CS2Dumper {
// Module: client.dll // Module: client.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, unused)]

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: client.dll // Module: client.dll
@ -910,8 +910,8 @@ namespace CS2Dumper.Schemas {
// NetworkVarNames: m_hostageRescueZ (int) // NetworkVarNames: m_hostageRescueZ (int)
// NetworkVarNames: m_bEndMatchNextMapAllVoted (bool) // NetworkVarNames: m_bEndMatchNextMapAllVoted (bool)
public static class C_CSPlayerResource { public static class C_CSPlayerResource {
public const nint m_bHostageAlive = 0x550; // bool[12] public const nint m_bHostageAlive = 0x550; //
public const nint m_isHostageFollowingSomeone = 0x55C; // bool[12] public const nint m_isHostageFollowingSomeone = 0x55C; //
public const nint m_iHostageEntityIDs = 0x568; // CEntityIndex[12] public const nint m_iHostageEntityIDs = 0x568; // CEntityIndex[12]
public const nint m_bombsiteCenterA = 0x598; // public const nint m_bombsiteCenterA = 0x598; //
public const nint m_bombsiteCenterB = 0x5A4; // public const nint m_bombsiteCenterB = 0x5A4; //

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once
@ -915,8 +915,8 @@ namespace cs2_dumper {
// NetworkVarNames: m_hostageRescueZ (int) // NetworkVarNames: m_hostageRescueZ (int)
// NetworkVarNames: m_bEndMatchNextMapAllVoted (bool) // NetworkVarNames: m_bEndMatchNextMapAllVoted (bool)
namespace C_CSPlayerResource { namespace C_CSPlayerResource {
constexpr std::ptrdiff_t m_bHostageAlive = 0x550; // bool[12] constexpr std::ptrdiff_t m_bHostageAlive = 0x550; //
constexpr std::ptrdiff_t m_isHostageFollowingSomeone = 0x55C; // bool[12] constexpr std::ptrdiff_t m_isHostageFollowingSomeone = 0x55C; //
constexpr std::ptrdiff_t m_iHostageEntityIDs = 0x568; // CEntityIndex[12] constexpr std::ptrdiff_t m_iHostageEntityIDs = 0x568; // CEntityIndex[12]
constexpr std::ptrdiff_t m_bombsiteCenterA = 0x598; // constexpr std::ptrdiff_t m_bombsiteCenterA = 0x598; //
constexpr std::ptrdiff_t m_bombsiteCenterB = 0x5A4; // constexpr std::ptrdiff_t m_bombsiteCenterB = 0x5A4; //

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -920,8 +920,8 @@ pub mod cs2_dumper {
// NetworkVarNames: m_hostageRescueZ (int) // NetworkVarNames: m_hostageRescueZ (int)
// NetworkVarNames: m_bEndMatchNextMapAllVoted (bool) // NetworkVarNames: m_bEndMatchNextMapAllVoted (bool)
pub mod C_CSPlayerResource { pub mod C_CSPlayerResource {
pub const m_bHostageAlive: usize = 0x550; // bool[12] pub const m_bHostageAlive: usize = 0x550; //
pub const m_isHostageFollowingSomeone: usize = 0x55C; // bool[12] pub const m_isHostageFollowingSomeone: usize = 0x55C; //
pub const m_iHostageEntityIDs: usize = 0x568; // CEntityIndex[12] pub const m_iHostageEntityIDs: usize = 0x568; // CEntityIndex[12]
pub const m_bombsiteCenterA: usize = 0x598; // pub const m_bombsiteCenterA: usize = 0x598; //
pub const m_bombsiteCenterB: usize = 0x5A4; // pub const m_bombsiteCenterB: usize = 0x5A4; //

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: engine2.dll // Module: engine2.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -21,7 +21,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum EntityIOTargetType_t { pub enum EntityIOTargetType_t {
ENTITY_IO_TARGET_INVALID = 0xFFFFFFFFFFFFFFFF, ENTITY_IO_TARGET_INVALID = u32::MAX,
ENTITY_IO_TARGET_ENTITYNAME = 0x2, ENTITY_IO_TARGET_ENTITYNAME = 0x2,
ENTITY_IO_TARGET_EHANDLE = 0x6, ENTITY_IO_TARGET_EHANDLE = 0x6,
ENTITY_IO_TARGET_ENTITYNAME_OR_CLASSNAME = 0x7 ENTITY_IO_TARGET_ENTITYNAME_OR_CLASSNAME = 0x7

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: host.dll // Module: host.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,4 +1,4 @@
{ {
"build_number": 14001, "build_number": 14001,
"timestamp": "2024-04-06T17:17:10.780616100+00:00" "timestamp": "2024-04-07T08:19:03.265339800+00:00"
} }

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Interfaces { namespace CS2Dumper.Interfaces {
// Module: animationsystem.dll // Module: animationsystem.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, unused)]

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: materialsystem2.dll // Module: materialsystem2.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +0,0 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC
namespace CS2Dumper.Schemas {
}

View File

@ -1,11 +0,0 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC
#pragma once
#include <cstddef>
namespace cs2_dumper {
namespace schemas {
}
}

View File

@ -1,6 +0,0 @@
{
"meshsystem.dll": {
"classes": {},
"enums": {}
}
}

View File

@ -1,9 +0,0 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)]
pub mod cs2_dumper {
pub mod schemas {
}
}

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: networksystem.dll // Module: networksystem.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Offsets { namespace CS2Dumper.Offsets {
// Module: client.dll // Module: client.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, unused)]

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: panorama.dll // Module: panorama.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: particles.dll // Module: particles.dll
@ -4613,9 +4613,9 @@ namespace CS2Dumper.Schemas {
public const nint m_nControlPointNumber = 0x1C0; // int32 public const nint m_nControlPointNumber = 0x1C0; // int32
public const nint m_vecOffset = 0x1C8; // CParticleCollectionVecInput public const nint m_vecOffset = 0x1C8; // CParticleCollectionVecInput
public const nint m_bOffsetLocal = 0x820; // bool public const nint m_bOffsetLocal = 0x820; // bool
public const nint m_nParticleSelection = 0x824; // public const nint m_nParticleSelection = 0x824; // ParticleSelection_t
public const nint m_nParticleNumber = 0x828; // CParticleCollectionFloatInput public const nint m_nParticleNumber = 0x828; // CParticleCollectionFloatInput
public const nint m_nPinBreakType = 0x980; // ParticlePinDistance_t public const nint m_nPinBreakType = 0x980; //
public const nint m_flBreakDistance = 0x988; // CParticleCollectionFloatInput public const nint m_flBreakDistance = 0x988; // CParticleCollectionFloatInput
public const nint m_flBreakSpeed = 0xAE0; // CParticleCollectionFloatInput public const nint m_flBreakSpeed = 0xAE0; // CParticleCollectionFloatInput
public const nint m_flAge = 0xC38; // CParticleCollectionFloatInput public const nint m_flAge = 0xC38; // CParticleCollectionFloatInput

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once
@ -4618,9 +4618,9 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_nControlPointNumber = 0x1C0; // int32 constexpr std::ptrdiff_t m_nControlPointNumber = 0x1C0; // int32
constexpr std::ptrdiff_t m_vecOffset = 0x1C8; // CParticleCollectionVecInput constexpr std::ptrdiff_t m_vecOffset = 0x1C8; // CParticleCollectionVecInput
constexpr std::ptrdiff_t m_bOffsetLocal = 0x820; // bool constexpr std::ptrdiff_t m_bOffsetLocal = 0x820; // bool
constexpr std::ptrdiff_t m_nParticleSelection = 0x824; // constexpr std::ptrdiff_t m_nParticleSelection = 0x824; // ParticleSelection_t
constexpr std::ptrdiff_t m_nParticleNumber = 0x828; // CParticleCollectionFloatInput constexpr std::ptrdiff_t m_nParticleNumber = 0x828; // CParticleCollectionFloatInput
constexpr std::ptrdiff_t m_nPinBreakType = 0x980; // ParticlePinDistance_t constexpr std::ptrdiff_t m_nPinBreakType = 0x980; //
constexpr std::ptrdiff_t m_flBreakDistance = 0x988; // CParticleCollectionFloatInput constexpr std::ptrdiff_t m_flBreakDistance = 0x988; // CParticleCollectionFloatInput
constexpr std::ptrdiff_t m_flBreakSpeed = 0xAE0; // CParticleCollectionFloatInput constexpr std::ptrdiff_t m_flBreakSpeed = 0xAE0; // CParticleCollectionFloatInput
constexpr std::ptrdiff_t m_flAge = 0xC38; // CParticleCollectionFloatInput constexpr std::ptrdiff_t m_flAge = 0xC38; // CParticleCollectionFloatInput

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -24,7 +24,7 @@ pub mod cs2_dumper {
// Members count: 7 // Members count: 7
#[repr(u32)] #[repr(u32)]
pub enum Detail2Combo_t { pub enum Detail2Combo_t {
DETAIL_2_COMBO_UNINITIALIZED = 0xFFFFFFFFFFFFFFFF, DETAIL_2_COMBO_UNINITIALIZED = u32::MAX,
DETAIL_2_COMBO_OFF = 0x0, DETAIL_2_COMBO_OFF = 0x0,
DETAIL_2_COMBO_ADD = 0x1, DETAIL_2_COMBO_ADD = 0x1,
DETAIL_2_COMBO_ADD_SELF_ILLUM = 0x2, DETAIL_2_COMBO_ADD_SELF_ILLUM = 0x2,
@ -36,7 +36,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum MissingParentInheritBehavior_t { pub enum MissingParentInheritBehavior_t {
MISSING_PARENT_DO_NOTHING = 0xFFFFFFFFFFFFFFFF, MISSING_PARENT_DO_NOTHING = u32::MAX,
MISSING_PARENT_KILL = 0x0, MISSING_PARENT_KILL = 0x0,
MISSING_PARENT_FIND_NEW = 0x1, MISSING_PARENT_FIND_NEW = 0x1,
MISSING_PARENT_SAME_INDEX = 0x2 MISSING_PARENT_SAME_INDEX = 0x2
@ -45,7 +45,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u32)] #[repr(u32)]
pub enum ParticleFloatBiasType_t { pub enum ParticleFloatBiasType_t {
PF_BIAS_TYPE_INVALID = 0xFFFFFFFFFFFFFFFF, PF_BIAS_TYPE_INVALID = u32::MAX,
PF_BIAS_TYPE_STANDARD = 0x0, PF_BIAS_TYPE_STANDARD = 0x0,
PF_BIAS_TYPE_GAIN = 0x1, PF_BIAS_TYPE_GAIN = 0x1,
PF_BIAS_TYPE_EXPONENTIAL = 0x2, PF_BIAS_TYPE_EXPONENTIAL = 0x2,
@ -100,7 +100,7 @@ pub mod cs2_dumper {
// Members count: 24 // Members count: 24
#[repr(u32)] #[repr(u32)]
pub enum ParticleFloatType_t { pub enum ParticleFloatType_t {
PF_TYPE_INVALID = 0xFFFFFFFFFFFFFFFF, PF_TYPE_INVALID = u32::MAX,
PF_TYPE_LITERAL = 0x0, PF_TYPE_LITERAL = 0x0,
PF_TYPE_NAMED_VALUE = 0x1, PF_TYPE_NAMED_VALUE = 0x1,
PF_TYPE_RANDOM_UNIFORM = 0x2, PF_TYPE_RANDOM_UNIFORM = 0x2,
@ -188,7 +188,7 @@ pub mod cs2_dumper {
// Members count: 9 // Members count: 9
#[repr(u32)] #[repr(u32)]
pub enum ScalarExpressionType_t { pub enum ScalarExpressionType_t {
SCALAR_EXPRESSION_UNINITIALIZED = 0xFFFFFFFFFFFFFFFF, SCALAR_EXPRESSION_UNINITIALIZED = u32::MAX,
SCALAR_EXPRESSION_ADD = 0x0, SCALAR_EXPRESSION_ADD = 0x0,
SCALAR_EXPRESSION_SUBTRACT = 0x1, SCALAR_EXPRESSION_SUBTRACT = 0x1,
SCALAR_EXPRESSION_MUL = 0x2, SCALAR_EXPRESSION_MUL = 0x2,
@ -255,7 +255,7 @@ pub mod cs2_dumper {
pub enum ParticleLightingQuality_t { pub enum ParticleLightingQuality_t {
PARTICLE_LIGHTING_PER_PARTICLE = 0x0, PARTICLE_LIGHTING_PER_PARTICLE = 0x0,
PARTICLE_LIGHTING_PER_VERTEX = 0x1, PARTICLE_LIGHTING_PER_VERTEX = 0x1,
PARTICLE_LIGHTING_PER_PIXEL = 0xFFFFFFFFFFFFFFFF PARTICLE_LIGHTING_PER_PIXEL = u32::MAX
} }
// Alignment: 4 // Alignment: 4
// Members count: 4 // Members count: 4
@ -296,7 +296,7 @@ pub mod cs2_dumper {
// Members count: 12 // Members count: 12
#[repr(u32)] #[repr(u32)]
pub enum ParticlePinDistance_t { pub enum ParticlePinDistance_t {
PARTICLE_PIN_DISTANCE_NONE = 0xFFFFFFFFFFFFFFFF, PARTICLE_PIN_DISTANCE_NONE = u32::MAX,
PARTICLE_PIN_DISTANCE_NEIGHBOR = 0x0, PARTICLE_PIN_DISTANCE_NEIGHBOR = 0x0,
PARTICLE_PIN_DISTANCE_FARTHEST = 0x1, PARTICLE_PIN_DISTANCE_FARTHEST = 0x1,
PARTICLE_PIN_DISTANCE_FIRST = 0x2, PARTICLE_PIN_DISTANCE_FIRST = 0x2,
@ -313,7 +313,7 @@ pub mod cs2_dumper {
// Members count: 7 // Members count: 7
#[repr(u32)] #[repr(u32)]
pub enum VectorFloatExpressionType_t { pub enum VectorFloatExpressionType_t {
VECTOR_FLOAT_EXPRESSION_UNINITIALIZED = 0xFFFFFFFFFFFFFFFF, VECTOR_FLOAT_EXPRESSION_UNINITIALIZED = u32::MAX,
VECTOR_FLOAT_EXPRESSION_DOTPRODUCT = 0x0, VECTOR_FLOAT_EXPRESSION_DOTPRODUCT = 0x0,
VECTOR_FLOAT_EXPRESSION_DISTANCE = 0x1, VECTOR_FLOAT_EXPRESSION_DISTANCE = 0x1,
VECTOR_FLOAT_EXPRESSION_DISTANCESQR = 0x2, VECTOR_FLOAT_EXPRESSION_DISTANCESQR = 0x2,
@ -333,7 +333,7 @@ pub mod cs2_dumper {
// Members count: 9 // Members count: 9
#[repr(u32)] #[repr(u32)]
pub enum VectorExpressionType_t { pub enum VectorExpressionType_t {
VECTOR_EXPRESSION_UNINITIALIZED = 0xFFFFFFFFFFFFFFFF, VECTOR_EXPRESSION_UNINITIALIZED = u32::MAX,
VECTOR_EXPRESSION_ADD = 0x0, VECTOR_EXPRESSION_ADD = 0x0,
VECTOR_EXPRESSION_SUBTRACT = 0x1, VECTOR_EXPRESSION_SUBTRACT = 0x1,
VECTOR_EXPRESSION_MUL = 0x2, VECTOR_EXPRESSION_MUL = 0x2,
@ -395,7 +395,7 @@ pub mod cs2_dumper {
// Members count: 8 // Members count: 8
#[repr(u32)] #[repr(u32)]
pub enum ParticleFloatMapType_t { pub enum ParticleFloatMapType_t {
PF_MAP_TYPE_INVALID = 0xFFFFFFFFFFFFFFFF, PF_MAP_TYPE_INVALID = u32::MAX,
PF_MAP_TYPE_DIRECT = 0x0, PF_MAP_TYPE_DIRECT = 0x0,
PF_MAP_TYPE_MULT = 0x1, PF_MAP_TYPE_MULT = 0x1,
PF_MAP_TYPE_REMAP = 0x2, PF_MAP_TYPE_REMAP = 0x2,
@ -437,7 +437,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum ParticleFloatInputMode_t { pub enum ParticleFloatInputMode_t {
PF_INPUT_MODE_INVALID = 0xFFFFFFFFFFFFFFFF, PF_INPUT_MODE_INVALID = u32::MAX,
PF_INPUT_MODE_CLAMPED = 0x0, PF_INPUT_MODE_CLAMPED = 0x0,
PF_INPUT_MODE_LOOPED = 0x1, PF_INPUT_MODE_LOOPED = 0x1,
PF_INPUT_MODE_COUNT = 0x2 PF_INPUT_MODE_COUNT = 0x2
@ -487,7 +487,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum ParticleFloatRandomMode_t { pub enum ParticleFloatRandomMode_t {
PF_RANDOM_MODE_INVALID = 0xFFFFFFFFFFFFFFFF, PF_RANDOM_MODE_INVALID = u32::MAX,
PF_RANDOM_MODE_CONSTANT = 0x0, PF_RANDOM_MODE_CONSTANT = 0x0,
PF_RANDOM_MODE_VARYING = 0x1, PF_RANDOM_MODE_VARYING = 0x1,
PF_RANDOM_MODE_COUNT = 0x2 PF_RANDOM_MODE_COUNT = 0x2
@ -505,7 +505,7 @@ pub mod cs2_dumper {
// Members count: 19 // Members count: 19
#[repr(u32)] #[repr(u32)]
pub enum ParticleVecType_t { pub enum ParticleVecType_t {
PVEC_TYPE_INVALID = 0xFFFFFFFFFFFFFFFF, PVEC_TYPE_INVALID = u32::MAX,
PVEC_TYPE_LITERAL = 0x0, PVEC_TYPE_LITERAL = 0x0,
PVEC_TYPE_LITERAL_COLOR = 0x1, PVEC_TYPE_LITERAL_COLOR = 0x1,
PVEC_TYPE_NAMED_VALUE = 0x2, PVEC_TYPE_NAMED_VALUE = 0x2,
@ -544,7 +544,7 @@ pub mod cs2_dumper {
// Members count: 3 // Members count: 3
#[repr(u32)] #[repr(u32)]
pub enum ParticleSequenceCropOverride_t { pub enum ParticleSequenceCropOverride_t {
PARTICLE_SEQUENCE_CROP_OVERRIDE_DEFAULT = 0xFFFFFFFFFFFFFFFF, PARTICLE_SEQUENCE_CROP_OVERRIDE_DEFAULT = u32::MAX,
PARTICLE_SEQUENCE_CROP_OVERRIDE_FORCE_OFF = 0x0, PARTICLE_SEQUENCE_CROP_OVERRIDE_FORCE_OFF = 0x0,
PARTICLE_SEQUENCE_CROP_OVERRIDE_FORCE_ON = 0x1 PARTICLE_SEQUENCE_CROP_OVERRIDE_FORCE_ON = 0x1
} }
@ -645,7 +645,7 @@ pub mod cs2_dumper {
COLLISION_MODE_USE_NEAREST_TRACE = 0x2, COLLISION_MODE_USE_NEAREST_TRACE = 0x2,
COLLISION_MODE_PER_FRAME_PLANESET = 0x1, COLLISION_MODE_PER_FRAME_PLANESET = 0x1,
COLLISION_MODE_INITIAL_TRACE_DOWN = 0x0, COLLISION_MODE_INITIAL_TRACE_DOWN = 0x0,
COLLISION_MODE_DISABLED = 0xFFFFFFFFFFFFFFFF COLLISION_MODE_DISABLED = u32::MAX
} }
// Alignment: 4 // Alignment: 4
// Members count: 2 // Members count: 2
@ -658,7 +658,7 @@ pub mod cs2_dumper {
// Members count: 3 // Members count: 3
#[repr(u32)] #[repr(u32)]
pub enum ParticleEndcapMode_t { pub enum ParticleEndcapMode_t {
PARTICLE_ENDCAP_ALWAYS_ON = 0xFFFFFFFFFFFFFFFF, PARTICLE_ENDCAP_ALWAYS_ON = u32::MAX,
PARTICLE_ENDCAP_ENDCAP_OFF = 0x0, PARTICLE_ENDCAP_ENDCAP_OFF = 0x0,
PARTICLE_ENDCAP_ENDCAP_ON = 0x1 PARTICLE_ENDCAP_ENDCAP_ON = 0x1
} }
@ -4687,9 +4687,9 @@ pub mod cs2_dumper {
pub const m_nControlPointNumber: usize = 0x1C0; // int32 pub const m_nControlPointNumber: usize = 0x1C0; // int32
pub const m_vecOffset: usize = 0x1C8; // CParticleCollectionVecInput pub const m_vecOffset: usize = 0x1C8; // CParticleCollectionVecInput
pub const m_bOffsetLocal: usize = 0x820; // bool pub const m_bOffsetLocal: usize = 0x820; // bool
pub const m_nParticleSelection: usize = 0x824; // pub const m_nParticleSelection: usize = 0x824; // ParticleSelection_t
pub const m_nParticleNumber: usize = 0x828; // CParticleCollectionFloatInput pub const m_nParticleNumber: usize = 0x828; // CParticleCollectionFloatInput
pub const m_nPinBreakType: usize = 0x980; // ParticlePinDistance_t pub const m_nPinBreakType: usize = 0x980; //
pub const m_flBreakDistance: usize = 0x988; // CParticleCollectionFloatInput pub const m_flBreakDistance: usize = 0x988; // CParticleCollectionFloatInput
pub const m_flBreakSpeed: usize = 0xAE0; // CParticleCollectionFloatInput pub const m_flBreakSpeed: usize = 0xAE0; // CParticleCollectionFloatInput
pub const m_flAge: usize = 0xC38; // CParticleCollectionFloatInput pub const m_flAge: usize = 0xC38; // CParticleCollectionFloatInput

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: pulse_system.dll // Module: pulse_system.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -36,7 +36,7 @@ pub mod cs2_dumper {
// Members count: 19 // Members count: 19
#[repr(u32)] #[repr(u32)]
pub enum PulseValueType_t { pub enum PulseValueType_t {
PVAL_INVALID = 0xFFFFFFFFFFFFFFFF, PVAL_INVALID = u32::MAX,
PVAL_BOOL = 0x0, PVAL_BOOL = 0x0,
PVAL_INT = 0x1, PVAL_INT = 0x1,
PVAL_FLOAT = 0x2, PVAL_FLOAT = 0x2,

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: rendersystemdx11.dll // Module: rendersystemdx11.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -48,7 +48,7 @@ pub mod cs2_dumper {
// Members count: 8 // Members count: 8
#[repr(u8)] #[repr(u8)]
pub enum RenderMultisampleType_t { pub enum RenderMultisampleType_t {
RENDER_MULTISAMPLE_INVALID = 0xFFFFFFFFFFFFFFFF, RENDER_MULTISAMPLE_INVALID = u8::MAX,
RENDER_MULTISAMPLE_NONE = 0x0, RENDER_MULTISAMPLE_NONE = 0x0,
RENDER_MULTISAMPLE_2X = 0x1, RENDER_MULTISAMPLE_2X = 0x1,
RENDER_MULTISAMPLE_4X = 0x2, RENDER_MULTISAMPLE_4X = 0x2,
@ -70,7 +70,7 @@ pub mod cs2_dumper {
// Members count: 3 // Members count: 3
#[repr(u32)] #[repr(u32)]
pub enum RenderSlotType_t { pub enum RenderSlotType_t {
RENDER_SLOT_INVALID = 0xFFFFFFFFFFFFFFFF, RENDER_SLOT_INVALID = u32::MAX,
RENDER_SLOT_PER_VERTEX = 0x0, RENDER_SLOT_PER_VERTEX = 0x0,
RENDER_SLOT_PER_INSTANCE = 0x1 RENDER_SLOT_PER_INSTANCE = 0x1
} }

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: resourcesystem.dll // Module: resourcesystem.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +0,0 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC
namespace CS2Dumper.Schemas {
}

View File

@ -1,11 +0,0 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC
#pragma once
#include <cstddef>
namespace cs2_dumper {
namespace schemas {
}
}

View File

@ -1,6 +0,0 @@
{
"scenefilecache.dll": {
"classes": {},
"enums": {}
}
}

View File

@ -1,9 +0,0 @@
// Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)]
pub mod cs2_dumper {
pub mod schemas {
}
}

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: scenesystem.dll // Module: scenesystem.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: schemasystem.dll // Module: schemasystem.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: server.dll // Module: server.dll
@ -4335,7 +4335,7 @@ namespace CS2Dumper.Schemas {
public const nint m_OnPostIdleEndSequence = 0x5E0; // CEntityIOOutput public const nint m_OnPostIdleEndSequence = 0x5E0; // CEntityIOOutput
public const nint m_OnCancelSequence = 0x608; // CEntityIOOutput public const nint m_OnCancelSequence = 0x608; // CEntityIOOutput
public const nint m_OnCancelFailedSequence = 0x630; // CEntityIOOutput public const nint m_OnCancelFailedSequence = 0x630; // CEntityIOOutput
public const nint m_OnScriptEvent = 0x658; // public const nint m_OnScriptEvent = 0x658; // CEntityIOOutput[8]
public const nint m_matOtherToMain = 0x7A0; // CTransform public const nint m_matOtherToMain = 0x7A0; // CTransform
public const nint m_hInteractionMainEntity = 0x7C0; // CHandle<CBaseEntity> public const nint m_hInteractionMainEntity = 0x7C0; // CHandle<CBaseEntity>
public const nint m_iPlayerDeathBehavior = 0x7C4; // int32 public const nint m_iPlayerDeathBehavior = 0x7C4; // int32
@ -6769,8 +6769,8 @@ namespace CS2Dumper.Schemas {
// NetworkVarNames: m_hostageRescueZ (int) // NetworkVarNames: m_hostageRescueZ (int)
// NetworkVarNames: m_bEndMatchNextMapAllVoted (bool) // NetworkVarNames: m_bEndMatchNextMapAllVoted (bool)
public static class CCSPlayerResource { public static class CCSPlayerResource {
public const nint m_bHostageAlive = 0x4C0; // bool[12] public const nint m_bHostageAlive = 0x4C0; //
public const nint m_isHostageFollowingSomeone = 0x4CC; // bool[12] public const nint m_isHostageFollowingSomeone = 0x4CC; //
public const nint m_iHostageEntityIDs = 0x4D8; // CEntityIndex[12] public const nint m_iHostageEntityIDs = 0x4D8; // CEntityIndex[12]
public const nint m_bombsiteCenterA = 0x508; // public const nint m_bombsiteCenterA = 0x508; //
public const nint m_bombsiteCenterB = 0x514; // public const nint m_bombsiteCenterB = 0x514; //

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once
@ -4340,7 +4340,7 @@ namespace cs2_dumper {
constexpr std::ptrdiff_t m_OnPostIdleEndSequence = 0x5E0; // CEntityIOOutput constexpr std::ptrdiff_t m_OnPostIdleEndSequence = 0x5E0; // CEntityIOOutput
constexpr std::ptrdiff_t m_OnCancelSequence = 0x608; // CEntityIOOutput constexpr std::ptrdiff_t m_OnCancelSequence = 0x608; // CEntityIOOutput
constexpr std::ptrdiff_t m_OnCancelFailedSequence = 0x630; // CEntityIOOutput constexpr std::ptrdiff_t m_OnCancelFailedSequence = 0x630; // CEntityIOOutput
constexpr std::ptrdiff_t m_OnScriptEvent = 0x658; // constexpr std::ptrdiff_t m_OnScriptEvent = 0x658; // CEntityIOOutput[8]
constexpr std::ptrdiff_t m_matOtherToMain = 0x7A0; // CTransform constexpr std::ptrdiff_t m_matOtherToMain = 0x7A0; // CTransform
constexpr std::ptrdiff_t m_hInteractionMainEntity = 0x7C0; // CHandle<CBaseEntity> constexpr std::ptrdiff_t m_hInteractionMainEntity = 0x7C0; // CHandle<CBaseEntity>
constexpr std::ptrdiff_t m_iPlayerDeathBehavior = 0x7C4; // int32 constexpr std::ptrdiff_t m_iPlayerDeathBehavior = 0x7C4; // int32
@ -6774,8 +6774,8 @@ namespace cs2_dumper {
// NetworkVarNames: m_hostageRescueZ (int) // NetworkVarNames: m_hostageRescueZ (int)
// NetworkVarNames: m_bEndMatchNextMapAllVoted (bool) // NetworkVarNames: m_bEndMatchNextMapAllVoted (bool)
namespace CCSPlayerResource { namespace CCSPlayerResource {
constexpr std::ptrdiff_t m_bHostageAlive = 0x4C0; // bool[12] constexpr std::ptrdiff_t m_bHostageAlive = 0x4C0; //
constexpr std::ptrdiff_t m_isHostageFollowingSomeone = 0x4CC; // bool[12] constexpr std::ptrdiff_t m_isHostageFollowingSomeone = 0x4CC; //
constexpr std::ptrdiff_t m_iHostageEntityIDs = 0x4D8; // CEntityIndex[12] constexpr std::ptrdiff_t m_iHostageEntityIDs = 0x4D8; // CEntityIndex[12]
constexpr std::ptrdiff_t m_bombsiteCenterA = 0x508; // constexpr std::ptrdiff_t m_bombsiteCenterA = 0x508; //
constexpr std::ptrdiff_t m_bombsiteCenterB = 0x514; // constexpr std::ptrdiff_t m_bombsiteCenterB = 0x514; //

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -62,7 +62,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u32)] #[repr(u32)]
pub enum StanceType_t { pub enum StanceType_t {
STANCE_CURRENT = 0xFFFFFFFFFFFFFFFF, STANCE_CURRENT = u32::MAX,
STANCE_DEFAULT = 0x0, STANCE_DEFAULT = 0x0,
STANCE_CROUCHING = 0x1, STANCE_CROUCHING = 0x1,
STANCE_PRONE = 0x2, STANCE_PRONE = 0x2,
@ -238,7 +238,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u32)] #[repr(u32)]
pub enum NPCFollowFormation_t { pub enum NPCFollowFormation_t {
Default = 0xFFFFFFFFFFFFFFFF, Default = u32::MAX,
CloseCircle = 0x0, CloseCircle = 0x0,
WideCircle = 0x1, WideCircle = 0x1,
MediumCircle = 0x5, MediumCircle = 0x5,
@ -292,7 +292,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u32)] #[repr(u32)]
pub enum AnimLoopMode_t { pub enum AnimLoopMode_t {
ANIM_LOOP_MODE_INVALID = 0xFFFFFFFFFFFFFFFF, ANIM_LOOP_MODE_INVALID = u32::MAX,
ANIM_LOOP_MODE_NOT_LOOPING = 0x0, ANIM_LOOP_MODE_NOT_LOOPING = 0x0,
ANIM_LOOP_MODE_LOOPING = 0x1, ANIM_LOOP_MODE_LOOPING = 0x1,
ANIM_LOOP_MODE_USE_SEQUENCE_SETTINGS = 0x2, ANIM_LOOP_MODE_USE_SEQUENCE_SETTINGS = 0x2,
@ -573,7 +573,7 @@ pub mod cs2_dumper {
#[repr(u32)] #[repr(u32)]
pub enum loadout_slot_t { pub enum loadout_slot_t {
LOADOUT_SLOT_PROMOTED = 0xFFFFFFFFFFFFFFFE, LOADOUT_SLOT_PROMOTED = 0xFFFFFFFFFFFFFFFE,
LOADOUT_SLOT_INVALID = 0xFFFFFFFFFFFFFFFF, LOADOUT_SLOT_INVALID = u32::MAX,
LOADOUT_SLOT_MELEE = 0x0, LOADOUT_SLOT_MELEE = 0x0,
LOADOUT_SLOT_C4 = 0x1, LOADOUT_SLOT_C4 = 0x1,
LOADOUT_SLOT_FIRST_AUTO_BUY_WEAPON = 0x0, LOADOUT_SLOT_FIRST_AUTO_BUY_WEAPON = 0x0,
@ -743,7 +743,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum WeaponAttackType_t { pub enum WeaponAttackType_t {
eInvalid = 0xFFFFFFFFFFFFFFFF, eInvalid = u32::MAX,
ePrimary = 0x0, ePrimary = 0x0,
eSecondary = 0x1, eSecondary = 0x1,
eCount = 0x2 eCount = 0x2
@ -802,7 +802,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum ScriptedOnDeath_t { pub enum ScriptedOnDeath_t {
SS_ONDEATH_NOT_APPLICABLE = 0xFFFFFFFFFFFFFFFF, SS_ONDEATH_NOT_APPLICABLE = u32::MAX,
SS_ONDEATH_UNDEFINED = 0x0, SS_ONDEATH_UNDEFINED = 0x0,
SS_ONDEATH_RAGDOLL = 0x1, SS_ONDEATH_RAGDOLL = 0x1,
SS_ONDEATH_ANIMATED_DEATH = 0x2 SS_ONDEATH_ANIMATED_DEATH = 0x2
@ -828,7 +828,7 @@ pub mod cs2_dumper {
// Members count: 17 // Members count: 17
#[repr(u32)] #[repr(u32)]
pub enum gear_slot_t { pub enum gear_slot_t {
GEAR_SLOT_INVALID = 0xFFFFFFFFFFFFFFFF, GEAR_SLOT_INVALID = u32::MAX,
GEAR_SLOT_RIFLE = 0x0, GEAR_SLOT_RIFLE = 0x0,
GEAR_SLOT_PISTOL = 0x1, GEAR_SLOT_PISTOL = 0x1,
GEAR_SLOT_KNIFE = 0x2, GEAR_SLOT_KNIFE = 0x2,
@ -892,7 +892,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum AmmoPosition_t { pub enum AmmoPosition_t {
AMMO_POSITION_INVALID = 0xFFFFFFFFFFFFFFFF, AMMO_POSITION_INVALID = u32::MAX,
AMMO_POSITION_PRIMARY = 0x0, AMMO_POSITION_PRIMARY = 0x0,
AMMO_POSITION_SECONDARY = 0x1, AMMO_POSITION_SECONDARY = 0x1,
AMMO_POSITION_COUNT = 0x2 AMMO_POSITION_COUNT = 0x2
@ -929,7 +929,7 @@ pub mod cs2_dumper {
// Members count: 5 // Members count: 5
#[repr(u32)] #[repr(u32)]
pub enum EntityDisolveType_t { pub enum EntityDisolveType_t {
ENTITY_DISSOLVE_INVALID = 0xFFFFFFFFFFFFFFFF, ENTITY_DISSOLVE_INVALID = u32::MAX,
ENTITY_DISSOLVE_NORMAL = 0x0, ENTITY_DISSOLVE_NORMAL = 0x0,
ENTITY_DISSOLVE_ELECTRICAL = 0x1, ENTITY_DISSOLVE_ELECTRICAL = 0x1,
ENTITY_DISSOLVE_ELECTRICAL_LIGHT = 0x2, ENTITY_DISSOLVE_ELECTRICAL_LIGHT = 0x2,
@ -940,7 +940,7 @@ pub mod cs2_dumper {
#[repr(u64)] #[repr(u64)]
pub enum InputBitMask_t { pub enum InputBitMask_t {
IN_NONE = 0x0, IN_NONE = 0x0,
IN_ALL = 0xFFFFFFFFFFFFFFFF, IN_ALL = u64::MAX,
IN_ATTACK = 0x1, IN_ATTACK = 0x1,
IN_JUMP = 0x2, IN_JUMP = 0x2,
IN_DUCK = 0x4, IN_DUCK = 0x4,
@ -965,7 +965,7 @@ pub mod cs2_dumper {
// Members count: 14 // Members count: 14
#[repr(u32)] #[repr(u32)]
pub enum HitGroup_t { pub enum HitGroup_t {
HITGROUP_INVALID = 0xFFFFFFFFFFFFFFFF, HITGROUP_INVALID = u32::MAX,
HITGROUP_GENERIC = 0x0, HITGROUP_GENERIC = 0x0,
HITGROUP_HEAD = 0x1, HITGROUP_HEAD = 0x1,
HITGROUP_CHEST = 0x2, HITGROUP_CHEST = 0x2,
@ -1086,7 +1086,7 @@ pub mod cs2_dumper {
// Members count: 4 // Members count: 4
#[repr(u32)] #[repr(u32)]
pub enum EntitySubclassScope_t { pub enum EntitySubclassScope_t {
SUBCLASS_SCOPE_NONE = 0xFFFFFFFFFFFFFFFF, SUBCLASS_SCOPE_NONE = u32::MAX,
SUBCLASS_SCOPE_PRECIPITATION = 0x0, SUBCLASS_SCOPE_PRECIPITATION = 0x0,
SUBCLASS_SCOPE_PLAYER_WEAPONS = 0x1, SUBCLASS_SCOPE_PLAYER_WEAPONS = 0x1,
SUBCLASS_SCOPE_COUNT = 0x2 SUBCLASS_SCOPE_COUNT = 0x2
@ -1226,7 +1226,7 @@ pub mod cs2_dumper {
// Members count: 27 // Members count: 27
#[repr(u32)] #[repr(u32)]
pub enum RumbleEffect_t { pub enum RumbleEffect_t {
RUMBLE_INVALID = 0xFFFFFFFFFFFFFFFF, RUMBLE_INVALID = u32::MAX,
RUMBLE_STOP_ALL = 0x0, RUMBLE_STOP_ALL = 0x0,
RUMBLE_PISTOL = 0x1, RUMBLE_PISTOL = 0x1,
RUMBLE_357 = 0x2, RUMBLE_357 = 0x2,
@ -1287,7 +1287,7 @@ pub mod cs2_dumper {
// Members count: 7 // Members count: 7
#[repr(u32)] #[repr(u32)]
pub enum PlayerConnectedState { pub enum PlayerConnectedState {
PlayerNeverConnected = 0xFFFFFFFFFFFFFFFF, PlayerNeverConnected = u32::MAX,
PlayerConnected = 0x0, PlayerConnected = 0x0,
PlayerConnecting = 0x1, PlayerConnecting = 0x1,
PlayerReconnecting = 0x2, PlayerReconnecting = 0x2,
@ -4464,7 +4464,7 @@ pub mod cs2_dumper {
pub const m_OnPostIdleEndSequence: usize = 0x5E0; // CEntityIOOutput pub const m_OnPostIdleEndSequence: usize = 0x5E0; // CEntityIOOutput
pub const m_OnCancelSequence: usize = 0x608; // CEntityIOOutput pub const m_OnCancelSequence: usize = 0x608; // CEntityIOOutput
pub const m_OnCancelFailedSequence: usize = 0x630; // CEntityIOOutput pub const m_OnCancelFailedSequence: usize = 0x630; // CEntityIOOutput
pub const m_OnScriptEvent: usize = 0x658; // pub const m_OnScriptEvent: usize = 0x658; // CEntityIOOutput[8]
pub const m_matOtherToMain: usize = 0x7A0; // CTransform pub const m_matOtherToMain: usize = 0x7A0; // CTransform
pub const m_hInteractionMainEntity: usize = 0x7C0; // CHandle<CBaseEntity> pub const m_hInteractionMainEntity: usize = 0x7C0; // CHandle<CBaseEntity>
pub const m_iPlayerDeathBehavior: usize = 0x7C4; // int32 pub const m_iPlayerDeathBehavior: usize = 0x7C4; // int32
@ -6898,8 +6898,8 @@ pub mod cs2_dumper {
// NetworkVarNames: m_hostageRescueZ (int) // NetworkVarNames: m_hostageRescueZ (int)
// NetworkVarNames: m_bEndMatchNextMapAllVoted (bool) // NetworkVarNames: m_bEndMatchNextMapAllVoted (bool)
pub mod CCSPlayerResource { pub mod CCSPlayerResource {
pub const m_bHostageAlive: usize = 0x4C0; // bool[12] pub const m_bHostageAlive: usize = 0x4C0; //
pub const m_isHostageFollowingSomeone: usize = 0x4CC; // bool[12] pub const m_isHostageFollowingSomeone: usize = 0x4CC; //
pub const m_iHostageEntityIDs: usize = 0x4D8; // CEntityIndex[12] pub const m_iHostageEntityIDs: usize = 0x4D8; // CEntityIndex[12]
pub const m_bombsiteCenterA: usize = 0x508; // pub const m_bombsiteCenterA: usize = 0x508; //
pub const m_bombsiteCenterB: usize = 0x514; // pub const m_bombsiteCenterB: usize = 0x514; //

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: soundsystem.dll // Module: soundsystem.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {
@ -23,7 +23,7 @@ pub mod cs2_dumper {
// Members count: 10 // Members count: 10
#[repr(u16)] #[repr(u16)]
pub enum VMixFilterType_t { pub enum VMixFilterType_t {
FILTER_UNKNOWN = 0xFFFFFFFFFFFFFFFF, FILTER_UNKNOWN = u16::MAX,
FILTER_LOWPASS = 0x0, FILTER_LOWPASS = 0x0,
FILTER_HIGHPASS = 0x1, FILTER_HIGHPASS = 0x1,
FILTER_BANDPASS = 0x2, FILTER_BANDPASS = 0x2,

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: vphysics2.dll // Module: vphysics2.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
namespace CS2Dumper.Schemas { namespace CS2Dumper.Schemas {
// Module: worldrenderer.dll // Module: worldrenderer.dll

View File

@ -1,5 +1,5 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#pragma once #pragma once

View File

@ -1,7 +1,7 @@
// Generated using https://github.com/a2x/cs2-dumper // Generated using https://github.com/a2x/cs2-dumper
// 2024-04-06 17:17:10.780616100 UTC // 2024-04-07 08:19:03.265339800 UTC
#![allow(non_upper_case_globals, non_camel_case_types, unused)] #![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]
pub mod cs2_dumper { pub mod cs2_dumper {
pub mod schemas { pub mod schemas {

View File

@ -227,17 +227,10 @@ fn read_enum_binding_members(
let enumerator = binding.enumerators.at(i as _).read(process)?; let enumerator = binding.enumerators.at(i as _).read(process)?;
let name = enumerator.name.read_string(process)?.to_string(); let name = enumerator.name.read_string(process)?.to_string();
let value = { acc.push(EnumMember {
let value = unsafe { enumerator.u.ulong } as i64; name,
value: unsafe { enumerator.u.ulong } as i64,
if value == i64::MAX { });
-1
} else {
value
}
};
acc.push(EnumMember { name, value });
Ok(acc) Ok(acc)
}) })
@ -273,42 +266,46 @@ fn read_type_scopes(
) -> Result<Vec<TypeScope>> { ) -> Result<Vec<TypeScope>> {
let type_scopes = &schema_system.type_scopes; let type_scopes = &schema_system.type_scopes;
(0..type_scopes.size) (0..type_scopes.size).try_fold(Vec::new(), |mut acc, i| {
.map(|i| { let type_scope_ptr = type_scopes.element(process, i as _)?;
let type_scope_ptr = type_scopes.element(process, i as _)?; let type_scope = type_scope_ptr.read(process)?;
let type_scope = type_scope_ptr.read(process)?;
let module_name = unsafe { CStr::from_ptr(type_scope.name.as_ptr()) } let module_name = unsafe { CStr::from_ptr(type_scope.name.as_ptr()) }
.to_string_lossy() .to_string_lossy()
.to_string(); .to_string();
let classes: Vec<_> = type_scope let classes: Vec<_> = type_scope
.class_bindings .class_bindings
.elements(process)? .elements(process)?
.iter() .iter()
.filter_map(|ptr| read_class_binding(process, *ptr).ok()) .filter_map(|ptr| read_class_binding(process, *ptr).ok())
.collect(); .collect();
let enums: Vec<_> = type_scope let enums: Vec<_> = type_scope
.enum_bindings .enum_bindings
.elements(process)? .elements(process)?
.iter() .iter()
.filter_map(|ptr| read_enum_binding(process, *ptr).ok()) .filter_map(|ptr| read_enum_binding(process, *ptr).ok())
.collect(); .collect();
debug!( if classes.is_empty() && enums.is_empty() {
"found type scope: {} at {:#X} (classes count: {}) (enums count: {})", return Ok(acc);
module_name, }
type_scope_ptr.to_umem(),
classes.len(),
enums.len()
);
Ok(TypeScope { debug!(
module_name, "found type scope: {} at {:#X} (classes count: {}) (enums count: {})",
classes, module_name,
enums, type_scope_ptr.to_umem(),
}) classes.len(),
}) enums.len(),
.collect() );
acc.push(TypeScope {
module_name,
classes,
enums,
});
Ok(acc)
})
} }

View File

@ -234,10 +234,10 @@ impl Results {
self.offsets self.offsets
.iter() .iter()
.find_map(|(module_name, offsets)| { .find_map(|(module_name, offsets)| {
let (_name, value) = offsets.iter().find(|(name, _)| *name == "dwBuildNumber")?;
let module = process.module_by_name(module_name).ok()?; let module = process.module_by_name(module_name).ok()?;
let offset = offsets.iter().find(|(name, _)| *name == "dwBuildNumber")?;
process.read(module.base + value).ok() process.read(module.base + offset.1).ok()
}) })
.ok_or(Error::Other("unable to read build number")) .ok_or(Error::Other("unable to read build number"))
} }

View File

@ -15,11 +15,6 @@ impl CodeGen for SchemaMap {
self.write_content(results, indent_size, |fmt| { self.write_content(results, indent_size, |fmt| {
fmt.block("namespace CS2Dumper.Schemas", false, |fmt| { fmt.block("namespace CS2Dumper.Schemas", false, |fmt| {
for (module_name, (classes, enums)) in self { for (module_name, (classes, enums)) in self {
// Skip empty modules.
if classes.is_empty() && enums.is_empty() {
continue;
}
writeln!(fmt, "// Module: {}", module_name)?; writeln!(fmt, "// Module: {}", module_name)?;
writeln!(fmt, "// Classes count: {}", classes.len())?; writeln!(fmt, "// Classes count: {}", classes.len())?;
writeln!(fmt, "// Enums count: {}", enums.len())?; writeln!(fmt, "// Enums count: {}", enums.len())?;
@ -116,11 +111,6 @@ impl CodeGen for SchemaMap {
fmt.block("namespace cs2_dumper", false, |fmt| { fmt.block("namespace cs2_dumper", false, |fmt| {
fmt.block("namespace schemas", false, |fmt| { fmt.block("namespace schemas", false, |fmt| {
for (module_name, (classes, enums)) in self { for (module_name, (classes, enums)) in self {
// Skip empty modules.
if classes.is_empty() && enums.is_empty() {
continue;
}
writeln!(fmt, "// Module: {}", module_name)?; writeln!(fmt, "// Module: {}", module_name)?;
writeln!(fmt, "// Classes count: {}", classes.len())?; writeln!(fmt, "// Classes count: {}", classes.len())?;
writeln!(fmt, "// Enums count: {}", enums.len())?; writeln!(fmt, "// Enums count: {}", enums.len())?;
@ -296,17 +286,12 @@ impl CodeGen for SchemaMap {
self.write_content(results, indent_size, |fmt| { self.write_content(results, indent_size, |fmt| {
writeln!( writeln!(
fmt, fmt,
"#![allow(non_upper_case_globals, non_camel_case_types, unused)]\n" "#![allow(non_upper_case_globals, non_camel_case_types, non_snake_case, unused)]\n"
)?; )?;
fmt.block("pub mod cs2_dumper", false, |fmt| { fmt.block("pub mod cs2_dumper", false, |fmt| {
fmt.block("pub mod schemas", false, |fmt| { fmt.block("pub mod schemas", false, |fmt| {
for (module_name, (classes, enums)) in self { for (module_name, (classes, enums)) in self {
// Skip empty modules.
if classes.is_empty() && enums.is_empty() {
continue;
}
writeln!(fmt, "// Module: {}", module_name)?; writeln!(fmt, "// Module: {}", module_name)?;
writeln!(fmt, "// Classes count: {}", classes.len())?; writeln!(fmt, "// Classes count: {}", classes.len())?;
writeln!(fmt, "// Enums count: {}", enums.len())?; writeln!(fmt, "// Enums count: {}", enums.len())?;
@ -341,7 +326,15 @@ impl CodeGen for SchemaMap {
.members .members
.iter() .iter()
.map(|member| { .map(|member| {
format!("{} = {:#X}", member.name, member.value) format!(
"{} = {}",
member.name,
if member.value == -1 {
format!("{}::MAX", type_name)
} else {
format!("{:#X}", member.value)
}
)
}) })
.collect::<Vec<_>>() .collect::<Vec<_>>()
.join(",\n"); .join(",\n");