fix changer

This commit is contained in:
_or_75
2026-05-08 15:20:25 +03:00
parent 3a9328da23
commit d0c37d92ed
7 changed files with 21 additions and 22 deletions
@@ -155,7 +155,7 @@ auto CInventoryChanger::OnFrameStageNotify( int FrameStage ) -> void
pWeapon->m_nFallbackPaintKit() = pWeaponInLoadoutItemView->GetCustomPaintKitIndex();
C_EconItemView_set_attribute_value_by_name( pWeaponItemView , "set item texture prefab" , pWeaponInLoadoutItemView->GetCustomPaintKitIndex() );
C_EconItemView_SetAttributeValueByName( pWeaponItemView , "set item texture prefab" , pWeaponInLoadoutItemView->GetCustomPaintKitIndex() );
const auto& AddedItems = GetInventoryItemsManager()->GetAddedItems();
const auto& Skin = AddedItems.find( pWeaponInLoadoutItemView->m_iItemID() );
@@ -193,6 +193,7 @@ auto CInventoryChanger::OnFrameStageNotify( int FrameStage ) -> void
pWeapon->UpdateSubclass();
pWeapon->UpdateCompositeMaterial( pCompositeMaterial );
pWeapon->UpdateCompositeMaterialSet();
pWeapon->UpdateSkin();
pWeapon->m_pGameSceneNode()->PostDataUpdate();
@@ -289,18 +290,6 @@ auto CInventoryChanger::OnEquipItemInLoadout( int iTeam , int iSlot , uint64_t i
auto CInventoryChanger::OnFireEventClientSide( IGameEvent* pGameEvent ) -> void
{
if ( _strcmpi( pGameEvent->GetName() , XorStr( "item_pickup" ) ) == 0 )
{
if ( const auto* pItemPickupController = pGameEvent->GetPlayerController( XorStr( "userid" ) ); pItemPickupController )
{
if ( pItemPickupController == GetCL_Players()->GetLocalPlayerController() )
{
if ( _strcmpi( pGameEvent->GetString( "item" ) , XorStr( "defuser" ) ) == 0 )
m_bApplyGloves = true;
}
}
}
if ( _strcmpi( pGameEvent->GetName() , XorStr( "player_death" ) ) == 0 )
{
if ( auto* pPlayerInventory = CCSPlayerInventory::Get(); pPlayerInventory )
@@ -60,7 +60,7 @@ auto CFunctionList::OnInit() -> bool
&C_CSWeaponBase_UpdateSubclass,
&C_CSWeaponBase_UpdateSkin,
&C_CSWeaponBase_UpdateCompositeMaterial,
&C_BaseEntity_SetBodyGroup,
&C_CSPlayerPawn_SetBodyGroup,
&GetCUserCmdTick,
&GetCUserCmdArray,
&GetCUserCmdBySequenceNumber,
@@ -70,7 +70,8 @@ auto CFunctionList::OnInit() -> bool
&CCSGO_HudWeaponSelection_ClearHudWeaponIcon,
&C_BaseEntity_GetHitBoxSet,
&C_BaseEntity_UpdateBodyGroupChoice,
&C_EconItemView_set_attribute_value_by_name,
&C_EconItemView_SetAttributeValueByName,
&C_CSWeaponBase_UpdateCompositeMaterialSet,
};
auto Searched = true;
@@ -132,7 +132,7 @@ public:
CBasePattern C_CSWeaponBase_UpdateSubclass = { VmpStr( "C_CSWeaponBase::UpdateSubclass" ) , VmpStr( "4C 8B DC 53 48 81 EC ? ? ? ? 48 8B 41" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
CBasePattern C_CSWeaponBase_UpdateSkin = { VmpStr( "C_CSWeaponBase::UpdateSkin" ) , VmpStr( "48 89 5C 24 08 57 48 83 EC 20 8B DA 48 8B F9 E8 ? ? ? ? F6 C3 01 74 0A 33 D2 48 8B CF E8 ? ? ? ? 48 8D 8F 60 19 00 00" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
CBasePattern C_CSWeaponBase_UpdateCompositeMaterial = { VmpStr( "C_CSWeaponBase::UpdateCompositeMaterial" ) , VmpStr( "E8 ? ? ? ? 48 8D 8B ? ? ? ? 48 89 BC 24" ) , CLIENT_DLL , 0 , SEARCH_TYPE_CALL };
CBasePattern C_BaseEntity_SetBodyGroup = { VmpStr( "C_BaseEntity::SetBodyGroup" ) , VmpStr( "85 D2 0F 88 CB 01 00 00" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
CBasePattern C_CSPlayerPawn_SetBodyGroup = { VmpStr( "C_CSPlayerPawn::SetBodyGroup" ) , VmpStr( "E8 ? ? ? ? EB 0C 48 8B CF" ) , CLIENT_DLL , 0 , SEARCH_TYPE_CALL };
CBasePattern GetCUserCmdTick = { VmpStr( "GetCUserCmdTick" ) , VmpStr( "48 83 EC ? 4C 8B 0D ? ? ? ? 4C 8B DA" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
CBasePattern GetCUserCmdArray = { VmpStr( "GetCUserCmdArray" ) , VmpStr( "48 89 4C 24 ? 41 56 41 57" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
CBasePattern GetCUserCmdBySequenceNumber = { VmpStr( "GetCUserCmdBySequenceNumber" ) , VmpStr( "40 53 48 83 EC ? 8B DA E8 ? ? ? ? 4C 8B C0" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
@@ -142,7 +142,8 @@ public:
CBasePattern CCSGO_HudWeaponSelection_ClearHudWeaponIcon = { VmpStr( "CCSGO_HudWeaponSelection::ClearHudWeaponIcon" ) , VmpStr( "E8 ? ? ? ? 8B F8 C6 84 24" ) , CLIENT_DLL , 0 , SEARCH_TYPE_CALL };
CBasePattern C_BaseEntity_GetHitBoxSet = { VmpStr( "C_BaseEntity::GetHitBoxSet" ) , VmpStr( "48 89 5C 24 ? 48 89 74 24 ? 57 48 81 EC ? ? ? ? 8B DA 48 8B F9 E8 ? ? ? ? 48 8B F0" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
CBasePattern C_BaseEntity_UpdateBodyGroupChoice = { VmpStr( "C_BaseEntity::UpdateBodyGroupChoice" ) , VmpStr( "E8 ? ? ? ? 4C 8B AC 24 ? ? ? ? 48 8B BC 24" ) , CLIENT_DLL , 0 , SEARCH_TYPE_CALL };
CBasePattern C_EconItemView_set_attribute_value_by_name = { VmpStr( "C_EconItemView::set_attribute_value_by_name" ) , VmpStr( "E8 ? ? ? ? 66 41 0F 6E D4" ) , CLIENT_DLL , 0 , SEARCH_TYPE_CALL };
CBasePattern C_EconItemView_SetAttributeValueByName = { VmpStr( "C_EconItemView::SetAttributeValueByName" ) , VmpStr( "E8 ? ? ? ? 66 41 0F 6E D4" ) , CLIENT_DLL , 0 , SEARCH_TYPE_CALL };
CBasePattern C_CSWeaponBase_UpdateCompositeMaterialSet = { VmpStr( "C_CSWeaponBase::UpdateCompositeMaterialSet" ) , VmpStr( "40 55 53 41 57 48 8D AC 24 00 FE ? ?" ) , CLIENT_DLL , 0 , SEARCH_TYPE_NONE };
};
@@ -109,7 +109,7 @@ DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , CGameSceneNode_SetMeshGroupMask , (
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_CSWeaponBase_UpdateSubclass , ( C_CSWeaponBase* pWeaponBase ) , ( C_CSWeaponBase* ) , ( pWeaponBase ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_CSWeaponBase_UpdateSkin , ( C_CSWeaponBase* pWeaponBase , bool Update ) , ( C_CSWeaponBase* , bool ) , ( pWeaponBase , Update ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_CSWeaponBase_UpdateCompositeMaterial , ( CCompositeMaterialOwner* pCompositeMaterialOwner , bool unk1 ) , ( CCompositeMaterialOwner* , bool ) , ( pCompositeMaterialOwner , unk1 ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_BaseEntity_SetBodyGroup , ( C_BaseEntity* pC_BaseEntity , int unk1 , unsigned int unk2 ) , ( C_BaseEntity* , int , unsigned int ) , ( pC_BaseEntity , unk1 , unk2 ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_CSPlayerPawn_SetBodyGroup , ( C_CSPlayerPawn* pC_CSPlayerPawn , const char* Group , int unk1 ) , ( C_CSPlayerPawn* , const char* , int ) , ( pC_CSPlayerPawn , Group , unk1 ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , GetCUserCmdTick , ( CCSPlayerController* pPlayerController , int32_t* pOutputTick ) , ( CCSPlayerController* , int32_t* ) , ( pPlayerController , pOutputTick ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( CUserCmdArray* , GetCUserCmdArray , ( CUserCmd** ppCUserCmd , int Tick ) , ( CUserCmd** , int ) , ( ppCUserCmd , Tick ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( CUserCmd* , GetCUserCmdBySequenceNumber , ( CCSPlayerController* pPlayerController , uint32_t SequenceNumber ) , ( CCSPlayerController* , uint32_t ) , ( pPlayerController , SequenceNumber ) );
@@ -119,7 +119,8 @@ DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , CTraceFilter_Constructor , ( CTraceF
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , CCSGO_HudWeaponSelection_ClearHudWeaponIcon , ( CCSGO_HudWeaponSelection* pCCSGO_HudWeaponSelection , int unk1 , int64_t unk2 ) , ( CCSGO_HudWeaponSelection* , int , int64_t ) , ( pCCSGO_HudWeaponSelection , unk1 , unk2 ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( CHitBoxSet* , C_BaseEntity_GetHitBoxSet , ( C_BaseEntity* pC_BaseEntity , uint32_t Index = 0 ) , ( C_BaseEntity* , uint32_t ) , ( pC_BaseEntity , Index ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_BaseEntity_UpdateBodyGroupChoice , ( C_BaseEntity* pC_BaseEntity ) , ( C_BaseEntity* ) , ( pC_BaseEntity ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_EconItemView_set_attribute_value_by_name , ( C_EconItemView* pC_EconItemView , const char* szAttributeName , float flValue ) , ( C_EconItemView* , const char* , float ) , ( pC_EconItemView , szAttributeName , flValue ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_EconItemView_SetAttributeValueByName , ( C_EconItemView* pC_EconItemView , const char* szAttributeName , float flValue ) , ( C_EconItemView* , const char* , float ) , ( pC_EconItemView , szAttributeName , flValue ) );
DECLARATE_CS2_FUNCTION_SDK_FASTCALL( void , C_CSWeaponBase_UpdateCompositeMaterialSet , ( C_CSWeaponBase* pC_CSWeaponBase , bool unk1 ) , ( C_CSWeaponBase* , bool ) , ( pC_CSWeaponBase , unk1 ) );
// Helpers:
@@ -181,9 +181,9 @@ auto C_BaseEntity::ComputeHitboxSurroundingBox( Vector3& mins , Vector3& maxs )
return C_BaseEntity_ComputeHitboxSurroundingBox( this , mins , maxs );
}
auto C_BaseEntity::SetBodyGroup() -> void
auto C_CSPlayerPawn::SetBodyGroup() -> void
{
return C_BaseEntity_SetBodyGroup( this , m_iTeamNum() == TEAM_TT ? 0 : 1 , 1 );
return C_CSPlayerPawn_SetBodyGroup( this , "first_or_third_person" , 1 );
}
auto C_BaseEntity::GetBoneIdByName( const char* szName ) -> int
@@ -306,6 +306,11 @@ auto C_CSWeaponBase::UpdateCompositeMaterial( CCompositeMaterialOwner* pCComposi
C_CSWeaponBase_UpdateCompositeMaterial( pCCompositeMaterialOwner , true );
}
auto C_CSWeaponBase::UpdateCompositeMaterialSet() -> void
{
C_CSWeaponBase_UpdateCompositeMaterialSet( this , false );
}
auto C_CSWeaponBase::UpdateSubclass() -> void
{
return C_CSWeaponBase_UpdateSubclass( this );
@@ -463,6 +463,7 @@ public:
auto GetViewModels() -> std::vector<C_CS2HudModelWeapon*>;
auto GetViewModel() -> C_CS2HudModelWeapon*;
auto GetKnifeModel() -> C_CS2HudModelWeapon*;
auto SetBodyGroup() -> void;
public:
inline auto IsAlive() -> bool
@@ -534,6 +535,7 @@ public:
public:
auto UpdateCompositeMaterial( CCompositeMaterialOwner* pCCompositeMaterialOwner ) -> void;
auto UpdateCompositeMaterialSet() -> void;
auto UpdateSubclass() -> void;
auto UpdateSkin() -> void;
};
@@ -7,7 +7,7 @@
#define CONFIG_FILE "config.json"
#define CHEAT_NAME "Andromeda CS2 Base"
#define CHEAT_VERSION "1.2.0"
#define CHEAT_VERSION "1.2.1"
// Project Buid Config: