Skip to content

Commit b7f7a28

Browse files
authored
fix: Read SpriteBone correctly (#213)
Should read rotaion in SpriteBone via read_quaternion. (Only tested in version 2020.3.38)
1 parent 903bdad commit b7f7a28

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

UnityPy/classes/Sprite.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ def __init__(self, reader):
5555
2020,
5656
3,
5757
):
58-
self.m_Bones = [SpriteBone() for _ in range(m_BonesSize)]
58+
self.m_Bones = [SpriteBone(self.reader) for _ in range(m_BonesSize)]
5959
else:
6060
self.m_Bones = [reader.read_vector2_array() for _ in range(m_BonesSize)]
6161

@@ -242,13 +242,13 @@ class SpriteBone:
242242
def __init__(self, reader: EndianBinaryReader) -> None:
243243
self.name = reader.read_aligned_string()
244244
self.position = reader.read_vector3()
245-
self.rotation = reader.read_vector3()
245+
self.rotation = reader.read_quaternion()
246246
self.length = reader.read_float()
247247
self.parentId = reader.read_int()
248248

249249
def save(self, writer: EndianBinaryWriter):
250250
writer.write_aligned_string(self.name)
251251
writer.write_vector3(self.position)
252-
writer.write_vector3(self.rotation)
252+
writer.write_quaternion(self.rotation)
253253
writer.write_float(self.length)
254254
writer.write_int(self.parentId)

0 commit comments

Comments
 (0)