示例#1
0
        public IEnumerator CreateUIScene()
        {
            // Position character inside parcel (0,0)
            TestHelpers.SetCharacterPosition(Vector3.zero);

            string sceneGameObjectNamePrefix = "UI Scene - ";
            string sceneId = "Test UI Scene";

            sceneController.CreateUIScene(JsonUtility.ToJson(new CreateUISceneMessage()
            {
                id = sceneId
            }));

            GameObject sceneGo = GameObject.Find(sceneGameObjectNamePrefix + sceneId);

            GlobalScene scene = sceneController.loadedScenes[sceneId] as GlobalScene;

            Assert.IsTrue(scene != null, "Scene isn't a GlobalScene?");
            Assert.IsTrue(sceneGo != null, "scene game object not found!");
            Assert.IsTrue(sceneController.loadedScenes[sceneId] != null, "Scene not in loaded dictionary!");
            Assert.IsTrue(sceneController.loadedScenes[sceneId].unloadWithDistance == false,
                          "Scene will unload when far!");

            Assert.IsTrue(scene.IsInsideSceneBoundaries(new Vector2Int(1000, 1000)),
                          "IsInsideSceneBoundaries() should always return true.");
            Assert.IsTrue(scene.IsInsideSceneBoundaries(new Vector2Int(-1000, -1000)),
                          "IsInsideSceneBoundaries() should always return true.");

            yield return(null);

            // Position character inside parcel (0,0)
            TestHelpers.SetCharacterPosition(new Vector3(100f, 0f, 100f));

            yield return(null);

            sceneGo = GameObject.Find(sceneGameObjectNamePrefix + sceneId);

            Assert.IsTrue(sceneGo != null, "scene game object not found! UIScenes must not be unloaded by distance!");
            Assert.IsTrue(sceneController.loadedScenes[sceneId] != null,
                          "Scene not in loaded dictionary when far! UIScenes must not be unloaded by distance!");

            TestHelpers.ForceUnloadAllScenes(sceneController);
            yield return(null);
        }
示例#2
0
 void Start()
 {
     GManager = GlobalScene.instance;
 }