private void AddRDBFlat(DFBlock.RdbObject obj, Transform parent) { int archive = obj.Resources.FlatResource.TextureArchive; int record = obj.Resources.FlatResource.TextureRecord; // Spawn billboard gameobject GameObject go = GameObjectHelper.CreateDaggerfallBillboardGameObject(archive, record, parent, true); Vector3 billboardPosition = new Vector3(obj.XPos, -obj.YPos, obj.ZPos) * MeshReader.GlobalScale; // Add RDB data to billboard DaggerfallBillboard dfBillboard = go.GetComponent <DaggerfallBillboard>(); dfBillboard.SetResourceData(obj.Resources.FlatResource); // Set transform go.transform.position = billboardPosition; // Handle supported editor flats if (dfUnity.Option_ImportEnemies && archive == 199) { switch (record) { case 10: // Start marker startMarkers.Add(go); break; case 15: // Random enemy AddRandomRDBEnemy(obj); go.SetActive(false); break; case 16: // Fixed enemy AddFixedRDBEnemy(obj); go.SetActive(false); break; } } // Add torch burning sound if (dfUnity.Option_DefaultSounds && archive == 210) { switch (record) { case 0: case 1: case 6: case 16: case 17: case 18: case 19: case 20: AddTorchAudioSource(go); break; } } }
private static GameObject AddFlat(DFBlock.RdbObject obj, Transform parent) { int archive = obj.Resources.FlatResource.TextureArchive; int record = obj.Resources.FlatResource.TextureRecord; // Spawn billboard gameobject GameObject go = GameObjectHelper.CreateDaggerfallBillboardGameObject(archive, record, parent, true); Vector3 billboardPosition = new Vector3(obj.XPos, -obj.YPos, obj.ZPos) * MeshReader.GlobalScale; // Add RDB data to billboard DaggerfallBillboard dfBillboard = go.GetComponent <DaggerfallBillboard>(); dfBillboard.SetResourceData(obj.Resources.FlatResource); // Set transform go.transform.position = billboardPosition; // Disable enemy flats if (archive == TextureReader.EditorFlatsTextureArchive && (record == 15 || record == 16)) { go.SetActive(false); } // Add torch burning sound if (archive == TextureReader.LightsTextureArchive) { switch (record) { case 0: case 1: case 6: case 16: case 17: case 18: case 19: case 20: AddTorchAudioSource(go); break; } } return(go); }