コード例 #1
0
    // Update is called once per frame
    void Update()
    {
        //if (gameObject.transform.position.x > MainGameManager.player.transform.position.x + MainGameManager.minimum_spacing_between_obstacles && containsObstacle == false && hasTried == false && MainGameManager.current_game_state == MainGameManager.game_state.Playing && gameObject.GetComponent<Animator>().GetCurrentAnimatorStateInfo(0).IsName("MainGame_LineSegment_GrowEnter") == false) {
        if (hasTried == false)
        {
            containsObstacle = MainGameManager.Generate_Obstacle(gameObject);
            hasTried         = true;
            if (containsObstacle == true)
            {
            }
        }
        //error check the booleans
        if (gameObject.transform.position.x < MainGameManager.player.transform.position.x - MainGameManager.player.GetComponentInChildren <SpriteRenderer> ().bounds.size.x / 2)
        {
            if (beenDestroyed == false)
            {
                if (containsObstacle == false)
                {
                    gameObject.GetComponent <Animator>().Play("MainGame_LineSegment_SemiShrinkExit");
                }
                else
                {
                    gameObject.GetComponent <Animator>().Play("MainGame_LineSegment_NoShrinkExit");
                }
                MainGameManager.Number_Of_Line_Segments -= 1;
                MainGameManager.All_Lines.RemoveAt(0);

                //refresh names
                for (int x = 0; x < MainGameManager.Number_Of_Line_Segments; x++)
                {
                    GameObject temp = MainGameManager.All_Lines[x] as GameObject;
                    temp.name = "LS_" + x;
                }

                beenDestroyed = true;
            }
            if (gameObject.transform.position.x < Camera.main.transform.position.x - MainGameManager.cameraSize.x / 2 - gameObject.GetComponent <SpriteRenderer>().bounds.size.x / 2)
            {
                DestroyImmediate(gameObject);
                Camera.main.GetComponent <MainGameManager>().AddLineSegments(true);
            }
        }
    }