コード例 #1
0
        private void _Read(TableStreamReader reader)
        {
            reader.Blob("SceneChunkData", () =>
            {
                this.Name = reader.ReadKeyString("Name");

                this.Objects = new List <SceneObjectData>();
                var count    = reader.ReadKeyNumber("Objects");
                for (var i = 0; i < count; ++i)
                {
                    var type = (SceneObjectType)reader.ReadKeyByte("Type");
                    SceneObjectData objectData = null;
                    switch (type)
                    {
                    case SceneObjectType.PREFAB:
                        objectData = new ScenePrefabData();
                        break;

                    case SceneObjectType.LIGHTMODIFIER:
                        objectData = new SceneLightModifierData();
                        break;

                    default:
                        objectData = new SceneObjectData();
                        break;
                    }
                    objectData._Read(reader);
                    this.Objects.Add(objectData);
                }
            });
        }
コード例 #2
0
        private void _Read(TableStreamReader reader)
        {
            reader.Blob("SceneLevelData", () =>
            {
                this.Name = reader.ReadKeyString("Name");

                this.ChunkWidth  = (float)reader.ReadKeyFloat("ChunkWidth");
                this.ChunkHeight = (float)reader.ReadKeyFloat("ChunkHeight");

                this.ChunkColumns = (int)reader.ReadKeyNumber("ChunkColumns");
                this.ChunkRows    = (int)reader.ReadKeyNumber("ChunkRows");

                this.Chunks = new List <SceneChunkRefData>();
                var count   = reader.ReadKeyNumber("Chunks");
                for (var i = 0; i < count; ++i)
                {
                    var chunkRefData = new SceneChunkRefData();
                    chunkRefData._Read(reader);
                    this.Chunks.Add(chunkRefData);
                }
            });
        }