scpcb-godot/src/file_parsers/B3D.gd
2025-01-09 17:13:44 +00:00

28 lines
812 B
GDScript

class_name B3D
static func ReadChunk(reader:BufferStuffReader):
var chunk = B3DChunk.new()
chunk.name = reader.readBuffer(4).get_string_from_ascii()
var chunkSize = reader.readInt()
chunk.bytes = reader.readBuffer(chunkSize)
return chunk;
static func Load(filePath: String):
var correctedPath = filePath.replace("\\", "/")
var fileHandle = FileAccess.open(str("res://", correctedPath), FileAccess.READ)
var reader = BufferStuffReader.create(fileHandle.get_buffer(fileHandle.get_length()))
fileHandle.close()
var bb3dChunk = ReadChunk(reader)
print(bb3dChunk.name)
if bb3dChunk.name == "BB3D":
var bb3dReader = BufferStuffReader.create(bb3dChunk.bytes)
var version = bb3dReader.readInt()
if version == 1:
pass
else:
print(str("Unknown b3d version. ", version))
return null