Loading...   


 common/patches/uf.cpp | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/common/patches/uf.cpp b/common/patches/uf.cpp
index 3535503..2f93f3f 100644
--- a/common/patches/uf.cpp
+++ b/common/patches/uf.cpp
@@ -2818,9 +2818,11 @@ namespace UF
 			if (strlen(emu->suffix))
 				PacketSize += strlen(emu->suffix) + 1;
 
-			if (emu->DestructibleObject)
+			if (emu->DestructibleObject || emu->class_ == 62)
 			{
-				PacketSize = PacketSize - 4;	// No bodytype
+				if (emu->DestructibleObject)
+					PacketSize = PacketSize - 4;	// No bodytype
+				
 				PacketSize += 53;	// Fixed portion
 				PacketSize += strlen(emu->DestructibleModel) + 1;
 				PacketSize += strlen(emu->DestructibleName2) + 1;
@@ -2912,6 +2914,9 @@ namespace UF
 			if (emu->DestructibleObject)
 				OtherData = OtherData | 0xd1;	// Live has 0xe1 for OtherData
 
+			if (emu->class_ == 62 && !emu->DestructibleObject) //Chests
+				OtherData = OtherData | 0x01;
+
 			VARSTRUCT_ENCODE_TYPE(uint8, Buffer, OtherData);
 
 			if (emu->DestructibleObject)
@@ -2924,7 +2929,7 @@ namespace UF
 			}
 			VARSTRUCT_ENCODE_TYPE(float, Buffer, 0);	// unknown4
 
-			if (emu->DestructibleObject)
+			if (emu->DestructibleObject || emu->class_ == 62)
 			{
 				VARSTRUCT_ENCODE_STRING(Buffer, emu->DestructibleModel);
 				VARSTRUCT_ENCODE_STRING(Buffer, emu->DestructibleName2);
@@ -3078,6 +3083,7 @@ namespace UF
 			{
 				VARSTRUCT_ENCODE_STRING(Buffer, emu->suffix);
 			}
+			
 			VARSTRUCT_ENCODE_TYPE(uint32, Buffer, 0); // Unknown;
 			VARSTRUCT_ENCODE_TYPE(uint32, Buffer, 0); // Unknown;
 			VARSTRUCT_ENCODE_TYPE(uint8, Buffer, emu->IsMercenary); //IsMercenary

Raw Paste Data