diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CEconItemPreviewDataBlock_StickerImpl.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CEconItemPreviewDataBlock_StickerImpl.cs index 7b61f59df..378af5faa 100644 --- a/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CEconItemPreviewDataBlock_StickerImpl.cs +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CEconItemPreviewDataBlock_StickerImpl.cs @@ -57,4 +57,8 @@ public uint Pattern public uint HighlightReel { get => Accessor.GetUInt32("highlight_reel"); set => Accessor.SetUInt32("highlight_reel", value); } + + public uint WrappedSticker + { get => Accessor.GetUInt32("wrapped_sticker"); set => Accessor.SetUInt32("wrapped_sticker", value); } + } diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgPlayerBulletHitImpl.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgPlayerBulletHitImpl.cs new file mode 100644 index 000000000..f08f94236 --- /dev/null +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgPlayerBulletHitImpl.cs @@ -0,0 +1,44 @@ + +using SwiftlyS2.Core.Natives; +using SwiftlyS2.Core.NetMessages; +using SwiftlyS2.Shared.Natives; +using SwiftlyS2.Shared.NetMessages; +using SwiftlyS2.Shared.ProtobufDefinitions; + +namespace SwiftlyS2.Core.ProtobufDefinitions; + +internal class CMsgPlayerBulletHitImpl : TypedProtobuf, CMsgPlayerBulletHit +{ + public CMsgPlayerBulletHitImpl(nint handle, bool isManuallyAllocated): base(handle) + { + } + + + public int AttackerSlot + { get => Accessor.GetInt32("attacker_slot"); set => Accessor.SetInt32("attacker_slot", value); } + + + public int VictimSlot + { get => Accessor.GetInt32("victim_slot"); set => Accessor.SetInt32("victim_slot", value); } + + + public Vector VictimPos + { get => Accessor.GetVector("victim_pos"); set => Accessor.SetVector("victim_pos", value); } + + + public int HitGroup + { get => Accessor.GetInt32("hit_group"); set => Accessor.SetInt32("hit_group", value); } + + + public int Damage + { get => Accessor.GetInt32("damage"); set => Accessor.SetInt32("damage", value); } + + + public int PenetrationCount + { get => Accessor.GetInt32("penetration_count"); set => Accessor.SetInt32("penetration_count", value); } + + + public bool IsKill + { get => Accessor.GetBool("is_kill"); set => Accessor.SetBool("is_kill", value); } + +} diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgTEFireBulletsImpl.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgTEFireBulletsImpl.cs index ebd3f9b73..580f462a8 100644 --- a/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgTEFireBulletsImpl.cs +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Classes/CMsgTEFireBulletsImpl.cs @@ -74,6 +74,18 @@ public uint AttackType { get => Accessor.GetUInt32("attack_type"); set => Accessor.SetUInt32("attack_type", value); } + public bool PlayerInair + { get => Accessor.GetBool("player_inair"); set => Accessor.SetBool("player_inair", value); } + + + public bool PlayerScoped + { get => Accessor.GetBool("player_scoped"); set => Accessor.SetBool("player_scoped", value); } + + + public int Tick + { get => Accessor.GetInt32("tick"); set => Accessor.SetInt32("tick", value); } + + public CMsgTEFireBullets_Extra Extra { get => new CMsgTEFireBullets_ExtraImpl(NativeNetMessages.GetNestedMessage(Address, "extra"), false); } diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Enums/ECsgoGameEvents.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Enums/ECsgoGameEvents.cs index bbb767b4f..4c59195fb 100644 --- a/managed/src/SwiftlyS2.Generated/Protobufs/Enums/ECsgoGameEvents.cs +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Enums/ECsgoGameEvents.cs @@ -6,4 +6,5 @@ public enum ECsgoGameEvents GE_PlayerAnimEventId = 450, GE_RadioIconEventId = 451, GE_FireBulletsId = 452, + GE_PlayerBulletHitId = 453, } diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Enums/EGCItemCustomizationNotification.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Enums/EGCItemCustomizationNotification.cs index c9ef77e29..4a571698f 100644 --- a/managed/src/SwiftlyS2.Generated/Protobufs/Enums/EGCItemCustomizationNotification.cs +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Enums/EGCItemCustomizationNotification.cs @@ -15,6 +15,8 @@ public enum EGCItemCustomizationNotification k_EGCItemCustomizationNotification_NameBaseItem = 1019, k_EGCItemCustomizationNotification_RemoveItemName = 1030, k_EGCItemCustomizationNotification_RemoveSticker = 1053, + k_EGCItemCustomizationNotification_ExtractSticker = 1054, + k_EGCItemCustomizationNotification_EncapsulateSticker = 1055, k_EGCItemCustomizationNotification_ApplySticker = 1086, k_EGCItemCustomizationNotification_StatTrakSwap = 1088, k_EGCItemCustomizationNotification_RemovePatch = 1089, diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CEconItemPreviewDataBlock_Sticker.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CEconItemPreviewDataBlock_Sticker.cs index 5358d4068..dd44d61a5 100644 --- a/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CEconItemPreviewDataBlock_Sticker.cs +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CEconItemPreviewDataBlock_Sticker.cs @@ -42,4 +42,7 @@ public interface CEconItemPreviewDataBlock_Sticker : ITypedProtobuf +{ + static CMsgPlayerBulletHit ITypedProtobuf.Wrap(nint handle, bool isManuallyAllocated) => new CMsgPlayerBulletHitImpl(handle, isManuallyAllocated); + + + public int AttackerSlot { get; set; } + + + public int VictimSlot { get; set; } + + + public Vector VictimPos { get; set; } + + + public int HitGroup { get; set; } + + + public int Damage { get; set; } + + + public int PenetrationCount { get; set; } + + + public bool IsKill { get; set; } + +} diff --git a/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CMsgTEFireBullets.cs b/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CMsgTEFireBullets.cs index 1c9f9db95..f839e9848 100644 --- a/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CMsgTEFireBullets.cs +++ b/managed/src/SwiftlyS2.Generated/Protobufs/Interfaces/CMsgTEFireBullets.cs @@ -60,6 +60,15 @@ public interface CMsgTEFireBullets : ITypedProtobuf, INetMess public uint AttackType { get; set; } + public bool PlayerInair { get; set; } + + + public bool PlayerScoped { get; set; } + + + public int Tick { get; set; } + + public CMsgTEFireBullets_Extra Extra { get; } } diff --git a/protobufs/cs2/cs_gameevents.proto b/protobufs/cs2/cs_gameevents.proto index e9c35c458..4277df8c7 100644 --- a/protobufs/cs2/cs_gameevents.proto +++ b/protobufs/cs2/cs_gameevents.proto @@ -4,6 +4,7 @@ enum ECsgoGameEvents { GE_PlayerAnimEventId = 450; GE_RadioIconEventId = 451; GE_FireBulletsId = 452; + GE_PlayerBulletHitId = 453; } message CMsgTEPlayerAnimEvent { @@ -43,5 +44,18 @@ message CMsgTEFireBullets { optional .CMsgVector ent_origin = 13; optional uint32 num_bullets_remaining = 14; optional uint32 attack_type = 15; + optional bool player_inair = 17; + optional bool player_scoped = 18; + optional int32 tick = 19; optional .CMsgTEFireBullets.Extra extra = 16; } + +message CMsgPlayerBulletHit { + optional int32 attacker_slot = 1 [default = -1]; + optional int32 victim_slot = 2 [default = -1]; + optional .CMsgVector victim_pos = 3; + optional int32 hit_group = 4; + optional int32 damage = 5; + optional int32 penetration_count = 6; + optional bool is_kill = 7; +} diff --git a/protobufs/cs2/cstrike15_gcmessages.proto b/protobufs/cs2/cstrike15_gcmessages.proto index 221fa475b..0185ec830 100644 --- a/protobufs/cs2/cstrike15_gcmessages.proto +++ b/protobufs/cs2/cstrike15_gcmessages.proto @@ -924,6 +924,7 @@ message CEconItemPreviewDataBlock { optional float offset_z = 9; optional uint32 pattern = 10; optional uint32 highlight_reel = 11; + optional uint32 wrapped_sticker = 12; } optional uint32 accountid = 1; diff --git a/protobufs/cs2/econ_gcmessages.proto b/protobufs/cs2/econ_gcmessages.proto index 42d0aa1fd..ebcc3ce61 100644 --- a/protobufs/cs2/econ_gcmessages.proto +++ b/protobufs/cs2/econ_gcmessages.proto @@ -186,6 +186,8 @@ enum EGCItemCustomizationNotification { k_EGCItemCustomizationNotification_NameBaseItem = 1019; k_EGCItemCustomizationNotification_RemoveItemName = 1030; k_EGCItemCustomizationNotification_RemoveSticker = 1053; + k_EGCItemCustomizationNotification_ExtractSticker = 1054; + k_EGCItemCustomizationNotification_EncapsulateSticker = 1055; k_EGCItemCustomizationNotification_ApplySticker = 1086; k_EGCItemCustomizationNotification_StatTrakSwap = 1088; k_EGCItemCustomizationNotification_RemovePatch = 1089;