Files
2025-05-26 01:23:52 +02:00

46 lines
1.3 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class RoomManager : MonoBehaviour
{
public RoomPrefs myRoom;
public string sceneId;
public List<GameObject> doors;
public List<GameObject> furnitures;
public List<GameObject> portals;
public List<GameObject> enemies;
public static event Action<string> OnSceneIdReady; // um das Replay erst auszulösen, wenn die SceneId da ist, die nun über die RoomPrefs festgelegt wird.
public void Awake()
{
if (myRoom == null)
{
Debug.LogError("RoomPrefs is not assigned in RoomManager.");
return;
}
//if (!myRoom.doors && myRoom.furniture && !myRoom.portals && !myRoom.enemies) return;
if (myRoom.doors)
{
foreach (GameObject door in doors) door.SetActive(true);
}
if (!myRoom.furniture)
{
foreach (GameObject f in furnitures) f.SetActive(false);
}
if (myRoom.portals)
{
foreach (GameObject portal in portals) portal.SetActive(true);
}
if (myRoom.enemies)
{
foreach (GameObject enemy in enemies) enemy.SetActive(true);
}
sceneId = myRoom.sceneId;
OnSceneIdReady?.Invoke(sceneId);
}
}