Initial progress on RW Frame List

This commit is contained in:
Atirut Wattanamongkol 2022-12-04 17:16:17 +07:00
parent 5fd5a63b4c
commit 492487029f
4 changed files with 24 additions and 1 deletions

View file

@ -35,6 +35,11 @@ _global_script_classes=[{
"path": "res://scripts/renderware/rw_clump.gd"
}, {
"base": "RWChunk",
"class": &"RWFrameList",
"language": &"GDScript",
"path": "res://scripts/renderware/rw_frame_list.gd"
}, {
"base": "RWChunk",
"class": &"RWGeometry",
"language": &"GDScript",
"path": "res://scripts/renderware/rw_geometry.gd"
@ -95,6 +100,7 @@ _global_script_class_icons={
"ItemPlacement": "",
"RWChunk": "",
"RWClump": "",
"RWFrameList": "",
"RWGeometry": "",
"RWGeometryList": "",
"RWMaterial": "",

View file

@ -10,6 +10,7 @@ enum ChunkType {
TEXTURE = 0x6,
MATERIAL = 0x7,
MATERIAL_LIST = 0x8,
FRAME_LIST = 0xe,
GEOMETRY = 0xf,
CLUMP = 0x10,
RASTER = 0x15,

View file

@ -6,6 +6,7 @@ var atomic_count: int
var light_count: int
var camera_count: int
var frame_list: RWFrameList
var geometry_list: RWGeometryList
@ -18,5 +19,6 @@ func _init(file: FileAccess):
if version > 0x33000:
light_count = file.get_32()
camera_count = file.get_32()
RWChunk.new(file).skip(file) # Skip frame list
frame_list = RWFrameList.new(file)
geometry_list = RWGeometryList.new(file)

View file

@ -0,0 +1,14 @@
class_name RWFrameList
extends RWChunk
var frame_count: int
func _init(file: FileAccess):
super(file)
assert(type == ChunkType.FRAME_LIST)
frame_count = file.get_32()
skip(file)