コード例 #1
0
ファイル: GameManager.cs プロジェクト: isaacHuh/spaceInvaders
    // Update is called once per frame
    void Update()
    {
        if (score > highScore)
        {
            highScore = score;
        }

        gameText.text = "Lives: " + lives.ToString() + " | Score: " + score.ToString("0000") + " | High Score: " + highScore.ToString("0000");

        if (displayGameOver)
        {
            SceneTraversal.LoadCredits();
            restartText.text = "Game Over\nPress R to Restart";
        }

        // check if player died and respawn
        if (player == null && lives > 0)
        {
            player = Instantiate(playerPrefab, new Vector2(0, -4), Quaternion.identity);
            lives--;
        }

        if ((player == null && lives == 0) || numEnemies == 0 && !displayGameOver)
        {
            gameOver();
        }

        if (Input.GetKeyDown(KeyCode.R))
        {
            SceneManager.LoadScene(SceneManager.GetActiveScene().name);
        }
    }
	void Start () {

        var sceneTraversal = new SceneTraversal();

        Debug.Log("Enumerate root game objects:");

        foreach (var gameObject in sceneTraversal.RootNodes())
        {
            Debug.Log(gameObject.name);
        }

        Debug.Log("Get parent game object:");

        var parentGameObject = GameObject.Find("L2.B").Parent();
        Debug.Log(parentGameObject.name);


        Debug.Log("Get root game object:");

        var rootGameObject = GameObject.Find("L2.B").RootObject();
        Debug.Log(rootGameObject.name);

        Debug.Log("Enumerate children:");

        foreach (var childGameObject in GameObject.Find("L1.B").Children())
        {
            Debug.Log(childGameObject.name);
        }

        Debug.Log("Enumerate scene (pre-order):");

        foreach (var gameObject in sceneTraversal.PreOrderHierarchy())
        {
            Debug.Log(gameObject.name);
        }

        Debug.Log("Enumerate scene (post-order):");

        foreach (var gameObject in sceneTraversal.PreOrderHierarchy())
        {
            Debug.Log(gameObject.name);
        }

        Debug.Log("Enumerate descendents (all game objects in a sub-tree):");

        foreach (var descendentGameObject in GameObject.Find("L1.B").Descendents())
        {
            Debug.Log(descendentGameObject.name);
        }

        Debug.Log("Enumerate ancestors of a game object:");

        foreach (var ancestorGameObject in GameObject.Find("L3.B").Ancestors())
        {
            Debug.Log(ancestorGameObject.name);
        }
    }
コード例 #3
0
    private IEnumerator ReturnEvent()
    {
        while (true)
        {
            yield return(new WaitForSeconds(5f)); // wait half a second

            SceneTraversal.LoadStart();
        }
    }
コード例 #4
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Alpha1))
        {
            LoadMain();
        }

        if (Input.GetKeyDown(KeyCode.Alpha2))
        {
            SceneTraversal.LoadStart();
        }

        if (Input.GetKeyDown(KeyCode.Alpha3))
        {
            SceneTraversal.LoadCredits();
        }
    }
コード例 #5
0
    void Start()
    {
        var sceneTraversal = new SceneTraversal();
        var sceneQuery     = new SceneQuery();

        //
        // Traverse root objects.
        //
        var rootObjects = sceneTraversal.RootNodes();

        Debug.Log("Root game objects: " + string.Join(", ", rootObjects.Select(go => go.name).ToArray()));

        //
        // Traverse all scene objects.
        //
        var allObjects = sceneTraversal.PreOrderHierarchy();

        Debug.Log("All game objects: " + string.Join(", ", allObjects.Select(go => go.name).ToArray()));

        //
        // Find first object in scene named Cube.
        //
        var singleCube = sceneQuery.SelectOne("Cube");

        Debug.Log("Found cube: " + singleCube.name + " (#" + (uint)singleCube.GetInstanceID() + ")");

        //
        // Find all objects named cube
        //
        var cubes = sceneQuery.SelectAll("cUbE"); // Note case-insensitivity.

        Debug.Log("Found cubes: " + string.Join(", ", cubes.Select(c => c.name).ToArray()));

        //
        // Find all objects that start with 'sphere'.
        //
        var spheres = sceneQuery.SelectAll("?sphere");

        Debug.Log("Found spheres: " + string.Join(", ", spheres.Select(s => s.name).ToArray()));

        //
        // Find all objects on a particular layer.
        //
        var gameObjectsOnLayer = sceneQuery.SelectAll(".MyTestLayer");

        Debug.Log("Found game objects by layer: " + string.Join(", ", gameObjectsOnLayer.Select(go => go.name).ToArray()));

        //
        // Find all objects that are tagged.
        //
        var taggedGameObjects = sceneQuery.SelectAll(".MyTestTag");

        Debug.Log("Found game objects by tag: " + string.Join(", ", taggedGameObjects.Select(go => go.name).ToArray()));

        //
        // Find exact object in hierarcy.
        //
        var exactGameObject = sceneQuery.SelectOne("/Parent/Sphere3/Cube");

        Debug.Log("Found exact game object: " + exactGameObject.name);

        //
        // Find a game object some where under a particular parent.
        //
        var gameObjectSomewhereUnderParent = sceneQuery.SelectOne("Parent>Cube");

        Debug.Log("Found game object some where under parent: " + gameObjectSomewhereUnderParent.name);

        //
        // Traverse child game objects under a particular parent.
        //
        var childObjects = sceneTraversal.Children(sceneQuery.SelectOne("Parent"));

        Debug.Log("Children: " + string.Join(", ", childObjects.Select(go => go.name).ToArray()));

        //
        // Traverse all descendents under a particular parent.
        //
        var descendentObjects = sceneTraversal.Descendents(sceneQuery.SelectOne("Parent"));

        Debug.Log("Decendents: " + string.Join(", ", descendentObjects.Select(go => go.name).ToArray()));

        //
        // Traverse all ancestor in the hierarchy above a particular game object.
        //
        var ancestorsObjects = sceneTraversal.Ancestors(sceneQuery.SelectOne("Parent/Sphere3/Cube"));

        Debug.Log("Ancestors: " + string.Join(", ", ancestorsObjects.Select(go => go.name).ToArray()));

        //
        // Find all game objects directly under a particular parent.
        //
        var gameObjectsUnderParent = sceneQuery.SelectAll("Parent/Cube");

        Debug.Log("All game objects under a particular parent: " + string.Join(", ", gameObjectsUnderParent.Select(go => go.name).ToArray()));

        //
        // Find all nested game objects somewhere under a particular parent.
        //
        var gameObjectsNestedUnderParent = sceneQuery.SelectAll("Parent > Cube");

        Debug.Log("All game objects nested somewhere under a particular parent: " + string.Join(", ", gameObjectsNestedUnderParent.Select(go => go.name).ToArray()));

        //
        // Find all objects by name and layer.
        //
        var gameObjectsByNameAndLayer = sceneQuery.SelectAll("Cube.MyTestLayer");

        Debug.Log("Found game objects by name and layer: " + string.Join(", ", gameObjectsByNameAndLayer.Select(go => go.name).ToArray()));

        //
        // Use quotes to find games object with spaces in the name.
        //
        var gameObjectWithSpacesInName = sceneQuery.SelectOne("\"Something with a space in the name\"");

        Debug.Log("Used quotes to find a game object with spaces in a name: " + gameObjectWithSpacesInName.name);
    }