From c9b8e704beaba2b1f7150343bcdf1fb8d21ae012 Mon Sep 17 00:00:00 2001 From: dingdio <4729750+dingdio@users.noreply.github.com> Date: Tue, 30 Aug 2022 01:12:19 +0100 Subject: [PATCH] BlockData reading --- .../BufferStructs/Complex/SBlockData.cs | 122 +++++++++--------- WolvenKit.CR2W/Types/Primitive/Enums.cs | 22 ++-- 2 files changed, 72 insertions(+), 72 deletions(-) diff --git a/WolvenKit.CR2W/Types/BufferedTypes/BufferStructs/Complex/SBlockData.cs b/WolvenKit.CR2W/Types/BufferedTypes/BufferStructs/Complex/SBlockData.cs index a4127e844..c7abdb9d3 100644 --- a/WolvenKit.CR2W/Types/BufferedTypes/BufferStructs/Complex/SBlockData.cs +++ b/WolvenKit.CR2W/Types/BufferedTypes/BufferStructs/Complex/SBlockData.cs @@ -38,21 +38,21 @@ public override void Read(BinaryReader file, uint size) { //TODO: Read the different objects case Enums.BlockDataObjectType.Collision: - //{ - // packedObject = new SBlockDataCollisionObject(cr2w, this, nameof(SBlockDataCollisionObject)); - // break; - //} - + { + packedObject = new SBlockDataCollisionObject(cr2w, this, nameof(SBlockDataCollisionObject)); + break; + } + case Enums.BlockDataObjectType.Particles: - //{ - // packedObject = new SBlockDataParticles(cr2w, this, nameof(SBlockDataLight)); - // break; - //} + { + packedObject = new SBlockDataParticles(cr2w, this, nameof(SBlockDataLight)); + break; + } case Enums.BlockDataObjectType.RigidBody: - //{ - // packedObject = new SBlockDataRigidBody(cr2w, this, nameof(SBlockDataRigidBody)); - // break; - //} + { + packedObject = new SBlockDataRigidBody(cr2w, this, nameof(SBlockDataRigidBody)); + break; + } case Enums.BlockDataObjectType.Mesh: { // MFP - we need this for the scene viewer @@ -60,26 +60,26 @@ public override void Read(BinaryReader file, uint size) break; } case Enums.BlockDataObjectType.Dimmer: - //{ - // packedObject = new SBlockDataDimmer(cr2w, this, nameof(SBlockDataDimmer)); - // break; - //} + { + packedObject = new SBlockDataDimmer(cr2w, this, nameof(SBlockDataDimmer)); + break; + } case Enums.BlockDataObjectType.PointLight: - //{ - // packedObject = new SBlockDataLight(cr2w, this, nameof(SBlockDataLight)); - // break; - //} + { + packedObject = new SBlockDataLight(cr2w, this, nameof(SBlockDataLight)); + break; + } case Enums.BlockDataObjectType.SpotLight: - //{ - // packedObject = new SBlockDataSpotLight(cr2w, this, nameof(SBlockDataSpotLight)); - // break; - //} + { + packedObject = new SBlockDataSpotLight(cr2w, this, nameof(SBlockDataSpotLight)); + break; + } case Enums.BlockDataObjectType.Decal: - //{ - // packedObject = new SBlockDataDecal(cr2w, this, nameof(SBlockDataDecal)); - // break; - //} + { + packedObject = new SBlockDataDecal(cr2w, this, nameof(SBlockDataDecal)); + break; + } case Enums.BlockDataObjectType.Cloth: //TODO: Implement CClothComponent here case Enums.BlockDataObjectType.Destruction: //TODO: Implement CDestructionComponent here case Enums.BlockDataObjectType.Invalid: //TODO: Check why this breaks sometimes? @@ -205,45 +205,45 @@ public override List GetEditableVariables() //TODO: Add here the differnt copy methods case Enums.BlockDataObjectType.Collision: - //{ - // baseobj.Add((SBlockDataCollisionObject)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataCollisionObject)packedObject); + break; + } case Enums.BlockDataObjectType.Particles: - //{ - // baseobj.Add((SBlockDataParticles)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataParticles)packedObject); + break; + } case Enums.BlockDataObjectType.RigidBody: - //{ - // baseobj.Add((SBlockDataRigidBody)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataRigidBody)packedObject); + break; + } case Enums.BlockDataObjectType.Mesh: - //{ - // baseobj.Add((SBlockDataMeshObject)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataMeshObject)packedObject); + break; + } case Enums.BlockDataObjectType.Dimmer: - //{ - // baseobj.Add((SBlockDataDimmer)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataDimmer)packedObject); + break; + } case Enums.BlockDataObjectType.PointLight: - //{ - // baseobj.Add((SBlockDataLight)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataLight)packedObject); + break; + } case Enums.BlockDataObjectType.SpotLight: - //{ - // baseobj.Add((SBlockDataSpotLight)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataSpotLight)packedObject); + break; + } case Enums.BlockDataObjectType.Decal: - //{ - // baseobj.Add((SBlockDataDecal)packedObject); - // break; - //} + { + baseobj.Add((SBlockDataDecal)packedObject); + break; + } case Enums.BlockDataObjectType.Cloth: case Enums.BlockDataObjectType.Destruction: default: diff --git a/WolvenKit.CR2W/Types/Primitive/Enums.cs b/WolvenKit.CR2W/Types/Primitive/Enums.cs index 0fc1d9472..40575e0fa 100644 --- a/WolvenKit.CR2W/Types/Primitive/Enums.cs +++ b/WolvenKit.CR2W/Types/Primitive/Enums.cs @@ -685,17 +685,17 @@ public enum EDM_MappinType public enum BlockDataObjectType { - Invalid = 0x1, - Mesh = 0x2, - Collision = 0x3, - Decal = 0x4, - Dimmer = 0x5, - PointLight = 0x6, - SpotLight = 0x7, - RigidBody = 0x8, - Cloth = 0x9, - Destruction = 0xA, - Particles = 0xB, + Invalid = 0, + Mesh = 1, + Collision = 2, + Decal = 3, + Dimmer = 4, + PointLight = 5, + SpotLight = 6, + RigidBody = 7, + Cloth = 8, + Destruction = 9, + Particles = 10, }; public enum EFactValueChangeMethod