Exemplo n.º 1
0
    // Update
    private void Update()
    {
        // Don't do anything if menu state is not the first state
        if (SCR_Menu.menuLoaded == false)
        {
            return;
        }

        float dt = Time.deltaTime;

        if (Input.GetMouseButton(0))
        {
            float touchX = Input.mousePosition.x * TOUCH_SCALE;
            float touchY = Input.mousePosition.y * TOUCH_SCALE;

            if (gameState == GameState.TALKING)
            {
                gameState = GameState.GRABBING;
                player.GetComponent <SCR_Player>().GoGrabTheBoss();
            }
            else if (gameState == GameState.PUNCHING)
            {
                if (SCR_Profile.showTutorial == 0 ||
                    tutorialStep == TutorialStep.AIM ||
                    tutorialStep == TutorialStep.PUNCH ||
                    tutorialStep == TutorialStep.CONTINUE)
                {
                    player.GetComponent <SCR_Player>().Aim(touchX, touchY + cameraHeight);
                }

                if (SCR_Profile.showTutorial == 1 && tutorialStep == TutorialStep.AIM)
                {
                    tutorialCounter += dt;
                    if (tutorialCounter > TUTORIAL_HOLD_DURATION)
                    {
                        TriggerTutorial(TutorialStep.PUNCH);
                    }
                }
            }
        }
        else
        {
            if (gameState == GameState.GRABBING)
            {
                if (player.GetComponent <SCR_Player>().IsGrabbingTheBoss())
                {
                    gameState = GameState.PUNCHING;
                    player.GetComponent <SCR_Player>().ThrowTheBoss();
                }
            }
            else if (gameState == GameState.PUNCHING)
            {
                player.GetComponent <SCR_Player>().PerformPunch();
            }
            tutorialCounter = 0;
        }

        /*
         * if (Input.GetMouseButtonUp(0) && gameState == GameState.BOSS_RUNNING) {
         *      if (boss.GetComponent<SCR_Boss>().IsRunning()) {
         *              SceneManager.LoadScene("GSMenu/SCN_Menu");
         *              SCR_Audio.PlayClickSound();
         *      }
         * }
         */
        if (gameState == GameState.PUNCHING)
        {
            cameraTarget = boss.GetComponent <SCR_Boss>().y - SCREEN_H + CAMERA_OFFSET_Y;
            if (cameraTarget > cameraHeight)
            {
                float deltaCamera = (cameraTarget - cameraHeight) * dt * CAMERA_SPEED_MULTIPLIER;
                SCR_LightBar.deltaCamera = deltaCamera;

                cameraHeight += deltaCamera;

                player.GetComponent <SCR_Player>().AddDeltaCameraToPlayer(deltaCamera);
                security.GetComponent <SCR_Security>().AddDeltaCameraToSecurity(deltaCamera);

                if (flyingObject != null)
                {
                    flyingObject.GetComponent <SCR_FlyingObject>().AddDeltaCameraToObject(deltaCamera);
                }

                if (powerUp != null)
                {
                    powerUp.GetComponent <SCR_PowerUp>().AddDeltaCameraToObject(deltaCamera);
                }
            }

            if (!breakFurniture)
            {
                if (boss.GetComponent <SCR_Boss>().y > FURNITURE_Y - SCR_Boss.BOSS_SIZE)
                {
                    SCR_Background.BreakFurniture(boss.GetComponent <SCR_Boss>().x, boss.GetComponent <SCR_Boss>().y, boss.GetComponent <SCR_Boss>().speedY);
                    breakFurniture = true;
                }
            }

            if (flyingObject == null)
            {
                if (SCR_Profile.showTutorial == 0)
                {
                    objectCounter += dt;
                    if (objectCounter >= objectSpawnTime - OBJECT_DANGER_BEFORE && !dangerShowed && cameraHeight > 100000)
                    {
                        ShowDanger();
                        dangerShowed = true;
                    }

                    if (objectCounter >= objectSpawnTime)
                    {
                        objectCounter   = 0;
                        objectSpawnTime = Random.Range(OBJECT_SPAWN_TIME_MIN, OBJECT_SPAWN_TIME_MAX);

                        dangerShowed = false;

                        if (cameraHeight > 400000)
                        {
                            flyingObject = SCR_Pool.GetFreeObject(PFB_FlyingObject[2]);
                        }
                        else if (cameraHeight > 250000)
                        {
                            flyingObject = SCR_Pool.GetFreeObject(PFB_FlyingObject[1]);
                        }
                        else if (cameraHeight > 100000)
                        {
                            flyingObject = SCR_Pool.GetFreeObject(PFB_FlyingObject[0]);
                        }

                        if (flyingObject != null)
                        {
                            float x = Random.Range(-(SCREEN_W - SCR_FlyingObject.OBJECT_SIZE) * 0.5f, (SCREEN_W - SCR_FlyingObject.OBJECT_SIZE) * 0.5f);
                            float y = cameraHeight + Random.Range(1.0f, 1.5f) * SCREEN_H;
                            flyingObject.GetComponent <SCR_FlyingObject>().Spawn(x, y);
                        }
                    }
                }
            }
            else
            {
                if (flyingObject.GetComponent <SCR_FlyingObject>().broken == false)
                {
                    if (SCR_Helper.DistanceBetweenTwoPoint(flyingObject.GetComponent <SCR_FlyingObject>().x, flyingObject.GetComponent <SCR_FlyingObject>().y, boss.GetComponent <SCR_Boss>().x, boss.GetComponent <SCR_Boss>().y) < (SCR_FlyingObject.OBJECT_SIZE + SCR_Boss.BOSS_SIZE) * 0.5f)
                    {
                        float bossAngle = SCR_Helper.AngleBetweenTwoPoint(flyingObject.GetComponent <SCR_FlyingObject>().x, flyingObject.GetComponent <SCR_FlyingObject>().y, boss.GetComponent <SCR_Boss>().x, boss.GetComponent <SCR_Boss>().y);
                        boss.GetComponent <SCR_Boss>().CrashIntoObject(bossAngle);
                        flyingObject.GetComponent <SCR_FlyingObject>().Break();

                        firstDrone = false;
                    }

                    else if (SCR_Helper.DistanceBetweenTwoPoint(flyingObject.GetComponent <SCR_FlyingObject>().x, flyingObject.GetComponent <SCR_FlyingObject>().y, player.GetComponent <SCR_Player>().x, player.GetComponent <SCR_Player>().y) < (SCR_FlyingObject.OBJECT_SIZE + SCR_Player.PLAYER_SIZE) * 0.5f)
                    {
                        flyingObject.GetComponent <SCR_FlyingObject>().Break();

                        firstDrone = false;
                    }
                }
            }

            if (powerUp == null || !powerUp.activeSelf)
            {
                if (SCR_Profile.showTutorial == 0)
                {
                    powerUpCounter += dt;
                    if (powerUpCounter >= powerUpSpawnTime)
                    {
                        powerUpCounter   = 0;
                        powerUpSpawnTime = Random.Range(POWER_UP_SPAWN_TIME_MIN, POWER_UP_SPAWN_TIME_MAX);

                        int choose = Random.Range(0, (int)PowerUpType.COUNT);
                        powerUp = SCR_Pool.GetFreeObject(PFB_PowerUp[choose]);
                        powerUp.GetComponent <SCR_PowerUp>().Spawn();
                    }
                }
            }
            else
            {
                float powerUpX = powerUp.GetComponent <SCR_PowerUp>().x;
                float powerUpY = powerUp.GetComponent <SCR_PowerUp>().y;
                float bossX    = boss.GetComponent <SCR_Boss>().x;
                float bossY    = boss.GetComponent <SCR_Boss>().y;
                float playerX  = player.GetComponent <SCR_Player>().x;
                float playerY  = player.GetComponent <SCR_Player>().y;

                float bossEdibleDistance      = (SCR_PowerUp.POWER_UP_SIZE + SCR_Boss.BOSS_SIZE) * 0.5f;
                float playerEdibleDistance    = (SCR_PowerUp.POWER_UP_SIZE + SCR_Player.PLAYER_SIZE) * 0.5f;
                float bossDistanceToPowerUp   = SCR_Helper.DistanceBetweenTwoPoint(powerUpX, powerUpY, bossX, bossY);
                float playerDistanceToPowerUp = SCR_Helper.DistanceBetweenTwoPoint(powerUpX, powerUpY, playerX, playerY);

                if (firstPizza)
                {
                    for (int i = 0; i < 5; i++)
                    {
                        bossX += boss.GetComponent <SCR_Boss>().speedX *dt;
                        bossY += boss.GetComponent <SCR_Boss>().speedY *dt;
                        if (SCR_Helper.DistanceBetweenTwoPoint(powerUpX, powerUpY, bossX, bossY) <= bossEdibleDistance)
                        {
                            Time.timeScale = 0.01f;
                            firstPizza     = false;
                            break;
                        }

                        playerX += player.GetComponent <SCR_Player>().speedX *dt;
                        playerY += player.GetComponent <SCR_Player>().speedY *dt;
                        if (SCR_Helper.DistanceBetweenTwoPoint(powerUpX, powerUpY, playerX, playerY) <= playerEdibleDistance)
                        {
                            Time.timeScale = 0.01f;
                            firstPizza     = false;
                            break;
                        }
                    }
                }

                if (bossDistanceToPowerUp < bossEdibleDistance || playerDistanceToPowerUp < playerEdibleDistance)
                {
                    if (powerUp.GetComponent <SCR_PowerUp>().type == PowerUpType.PIZZA)
                    {
                        boss.GetComponent <SCR_Boss>().Enlarge();
                    }
                    else if (powerUp.GetComponent <SCR_PowerUp>().type == PowerUpType.BUBBLE)
                    {
                        boss.GetComponent <SCR_Boss>().Bubble();
                    }
                    else if (powerUp.GetComponent <SCR_PowerUp>().type == PowerUpType.MAGNET)
                    {
                        boss.GetComponent <SCR_Boss>().Magnet();
                    }

                    powerUp.SetActive(false);
                    powerUp = null;
                }
                else if (powerUpY <= cameraHeight - SCR_PowerUp.POWER_UP_SIZE)
                {
                    powerUp.SetActive(false);
                    powerUp = null;
                }
            }
        }
        else if (gameState == GameState.BOSS_FALLING)
        {
            float deltaCamera = -cameraHeight * dt * CAMERA_SPEED_MULTIPLIER;
            if (deltaCamera > -1)
            {
                deltaCamera = -1;
            }
            SCR_LightBar.deltaCamera = deltaCamera;

            cameraHeight += deltaCamera;

            player.GetComponent <SCR_Player>().TurnOffCrossHair();

            if (cameraHeight < CAMERA_ENDING_Y)
            {
                gameState = GameState.BOSS_RUNNING;
                player.GetComponent <SCR_Player>().ReAdjustY();
                boss.GetComponent <SCR_Boss>().ReAdjustY();
            }
        }
        else if (gameState == GameState.BOSS_RUNNING)
        {
            float deltaCamera = -cameraHeight * dt * CAMERA_SPEED_MULTIPLIER;
            if (deltaCamera > -1)
            {
                deltaCamera = -1;
            }
            cameraHeight += deltaCamera;
            if (cameraHeight < 0)
            {
                cameraHeight = 0;
            }
        }

        SCR_Background.SetCameraY(cameraHeight);

        if (cameraShakeTime > 0)
        {
            cameraShakeTime -= dt;
            Camera.main.transform.position = new Vector3(SCREEN_W * 0.5f + Random.Range(-CAMERA_SHAKE_AMOUNT, CAMERA_SHAKE_AMOUNT), SCREEN_H * 0.5f + cameraHeight + Random.Range(-CAMERA_SHAKE_AMOUNT, CAMERA_SHAKE_AMOUNT), Camera.main.transform.position.z);
        }
        else
        {
            Camera.main.transform.position = new Vector3(SCREEN_W * 0.5f, SCREEN_H * 0.5f + cameraHeight, Camera.main.transform.position.z);
        }

        if (comboTime > 0)
        {
            comboTime -= dt;
            if (comboTime <= 0)
            {
                comboTime  = 0;
                comboCount = 0;

                /*
                 * for (int i=1; i<imgCombo.Length; i++) {
                 *      imgCombo[i].SetActive (false);
                 * }
                 * imgCombo[0].SetActive (true);
                 */
            }
        }
        //imgClockContent.GetComponent<Image>().fillAmount = comboTime / COMBO_TIME;

        if (boss.GetComponent <SCR_Boss>().y * 0.01f - 3 > maxBossY)
        {
            maxBossY = (int)(boss.GetComponent <SCR_Boss>().y * 0.01f - 3);
            txtCurrentHeight.GetComponent <Text>().text = maxBossY.ToString();
        }

        if (SCR_Profile.showTutorial == 1)
        {
            if (tutorialStep != TutorialStep.AIM && Time.timeScale < 1)
            {
                Time.timeScale += dt * 2.0f;
                if (Time.timeScale > 1)
                {
                    Time.timeScale = 1;
                }
            }
        }
        else
        {
            if (Time.timeScale < 1)
            {
                Time.timeScale += dt * 3.0f;
                if (Time.timeScale > 1)
                {
                    Time.timeScale = 1;
                }
            }
        }

        if (flashWhiteAlpha > 0)
        {
            flashWhiteAlpha -= dt * 2.0f;
            if (flashWhiteAlpha < 0)
            {
                flashWhiteAlpha = 0;
            }

            Color color = pnlFlashWhite.GetComponent <Image>().color;
            color.a = flashWhiteAlpha;
            pnlFlashWhite.GetComponent <Image>().color = color;
        }

        if (SCR_Profile.showTutorial == 0)
        {
            if (tutorialAlpha > 0)
            {
                tutorialAlpha -= TUTORIAL_FADE_SPEED * dt;
                if (tutorialAlpha < 0)
                {
                    tutorialAlpha = 0;
                }
                Color color = txtTutorial.GetComponent <Text>().color;
                color.a = tutorialAlpha;
                txtTutorial.GetComponent <Text>().color = color;
            }
        }


        if (SCR_Profile.money - internalMoney > 1000)
        {
            internalMoney += 57;
        }
        else if (SCR_Profile.money - internalMoney > 100)
        {
            internalMoney += 13;
        }
        else if (SCR_Profile.money - internalMoney > 10)
        {
            internalMoney += 7;
        }
        else if (SCR_Profile.money - internalMoney > 0)
        {
            internalMoney += 1;
        }

        if (SCR_Profile.money - internalMoney < -1000)
        {
            internalMoney -= 57;
        }
        else if (SCR_Profile.money - internalMoney < -100)
        {
            internalMoney -= 13;
        }
        else if (SCR_Profile.money - internalMoney < -10)
        {
            internalMoney -= 7;
        }
        else if (SCR_Profile.money - internalMoney < 0)
        {
            internalMoney -= 1;
        }

        txtMoney.GetComponent <Text>().text = internalMoney.ToString();
    }
    // Init
    private void Start()
    {
        instance = this;

        Sprite[] sprLayer1 = SPR_Layer_Boss_1;
        Sprite[] sprLayer2 = SPR_Layer_Boss_2;
        Sprite[] sprLayer3 = SPR_Layer_Boss_3;
        Sprite[] sprLayer4 = SPR_Layer_Boss_4;
        Sprite[] sprLayer5 = SPR_Layer_Boss_5;


        if (SCR_Profile.bossSelecting == (int)BossType.THE_BOSS || SCR_Profile.bossSelecting == (int)BossType.ERIX_LUKE)
        {
            // boss
            sprLayer1 = SPR_Layer_Boss_1;
            sprLayer2 = SPR_Layer_Boss_2;
            sprLayer3 = SPR_Layer_Boss_3;
            sprLayer4 = SPR_Layer_Boss_4;
            sprLayer5 = SPR_Layer_Boss_5;

            layer_1_offset = 800;
            layer_2_offset = 200;
            layer_3_offset = 80;
            layer_4_offset = -260;
            layer_5_offset = -150;

            layer_1_scroll = 0.02f;
            layer_2_scroll = 0.03f;
            layer_3_scroll = 0.05f;
            layer_4_scroll = 1.0f;
            layer_5_scroll = 1.0f;

            layer_1_z = 0;
            layer_2_z = -1;
            layer_3_z = -6;
            layer_4_z = -7;
            layer_5_z = -50;

            // Place furniture
            furniture = new GameObject[11];
            for (int i = 0; i < furniture.Length; i++)
            {
                furniture[i] = Instantiate(PFB_Furniture);
            }
            // Fragment
            furniture[0].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[3];
            furniture[0].GetComponent <SCR_Furniture>().Spawn(-500, 1308);
            furniture[1].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[4];
            furniture[1].GetComponent <SCR_Furniture>().Spawn(-250, 1308);
            furniture[2].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[5];
            furniture[2].GetComponent <SCR_Furniture>().Spawn(0, 1308);
            furniture[3].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[6];
            furniture[3].GetComponent <SCR_Furniture>().Spawn(250, 1308);
            furniture[4].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[7];
            furniture[4].GetComponent <SCR_Furniture>().Spawn(500, 1308);
            // Desk, chair, and laptop
            furniture[5].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[0];
            furniture[5].GetComponent <SCR_Furniture>().Spawn(-450, 1470);
            furniture[6].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[1];
            furniture[6].GetComponent <SCR_Furniture>().Spawn(-150, 1470);
            furniture[7].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[0];
            furniture[7].GetComponent <SCR_Furniture>().Spawn(200, 1470);
            furniture[8].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[2];
            furniture[8].GetComponent <SCR_Furniture>().Spawn(450, 1470);
            furniture[9].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[8];
            furniture[9].GetComponent <SCR_Furniture>().Spawn(-450, 1570);
            furniture[10].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[8];
            furniture[10].GetComponent <SCR_Furniture>().Spawn(250, 1570);
        }
        else if (SCR_Profile.bossSelecting == (int)BossType.MR_PRESIDENT ||
                 SCR_Profile.bossSelecting == (int)BossType.THE_GENERAL)
        {
            // Trump
            sprLayer1 = SPR_Layer_Trump_1;
            sprLayer2 = SPR_Layer_Trump_2;
            sprLayer3 = SPR_Layer_Trump_3;
            sprLayer4 = SPR_Layer_Trump_4;
            sprLayer5 = SPR_Layer_Trump_5;

            layer_1_offset = 500;
            layer_2_offset = -150;
            layer_3_offset = 130;
            layer_4_offset = 0;
            layer_5_offset = 0;

            layer_1_scroll = 0.02f;
            layer_2_scroll = 0.03f;
            layer_3_scroll = 0.25f;
            layer_4_scroll = 1.0f;
            layer_5_scroll = 1.0f;

            layer_1_z = 0;
            layer_2_z = -1;
            layer_3_z = -6;
            layer_4_z = -7;
            layer_5_z = -50;

            furniture = new GameObject[15];
            for (int i = 0; i < furniture.Length; i++)
            {
                furniture[i] = Instantiate(PFB_Furniture);
            }
            // Branch
            furniture[0].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[9];
            furniture[0].GetComponent <SCR_Furniture>().Spawn(-500, 1600);
            furniture[1].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[10];
            furniture[1].GetComponent <SCR_Furniture>().Spawn(-250, 1600);
            furniture[2].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[11];
            furniture[2].GetComponent <SCR_Furniture>().Spawn(0, 1600);
            furniture[3].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[12];
            furniture[3].GetComponent <SCR_Furniture>().Spawn(250, 1600);
            furniture[11].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[9];
            furniture[11].GetComponent <SCR_Furniture>().Spawn(-500, 1600);
            furniture[12].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[10];
            furniture[12].GetComponent <SCR_Furniture>().Spawn(-250, 1600);
            furniture[13].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[11];
            furniture[13].GetComponent <SCR_Furniture>().Spawn(0, 1600);
            furniture[14].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[12];
            furniture[14].GetComponent <SCR_Furniture>().Spawn(250, 1600);
            // Leaf
            furniture[4].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[13];
            furniture[4].GetComponent <SCR_Furniture>().Spawn(500, 1600);
            furniture[5].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[13];
            furniture[5].GetComponent <SCR_Furniture>().Spawn(-450, 1600);
            furniture[6].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[13];
            furniture[6].GetComponent <SCR_Furniture>().Spawn(-150, 1600);
            furniture[7].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[13];
            furniture[7].GetComponent <SCR_Furniture>().Spawn(200, 1600);
            furniture[8].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[13];
            furniture[8].GetComponent <SCR_Furniture>().Spawn(450, 1600);
            furniture[9].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[14];
            furniture[9].GetComponent <SCR_Furniture>().Spawn(-450, 1600);
            furniture[10].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[14];
            furniture[10].GetComponent <SCR_Furniture>().Spawn(250, 1600);
        }
        else if (SCR_Profile.bossSelecting == (int)BossType.THE_DICTATOR)
        {
            // dictator
            sprLayer1 = SPR_Layer_Dictator_1;
            sprLayer2 = SPR_Layer_Dictator_2;
            sprLayer3 = SPR_Layer_Dictator_3;
            sprLayer4 = SPR_Layer_Dictator_4;
            sprLayer5 = SPR_Layer_Dictator_5;

            layer_1_offset = 800;
            layer_2_offset = 200;
            layer_3_offset = 80;
            layer_4_offset = 0;
            layer_5_offset = -150;

            layer_1_scroll = 0.02f;
            layer_2_scroll = 0.03f;
            layer_3_scroll = 0.05f;
            layer_4_scroll = 1.0f;
            layer_5_scroll = 1.0f;

            layer_1_z = 0;
            layer_2_z = -1;
            layer_3_z = -6;
            layer_4_z = -7;
            layer_5_z = -50;

            // Place furniture
            furniture = new GameObject[11];
            for (int i = 0; i < furniture.Length; i++)
            {
                furniture[i] = Instantiate(PFB_Furniture);
            }
            // Fragment
            furniture[0].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[15];
            furniture[0].GetComponent <SCR_Furniture>().Spawn(-500, 1310);
            furniture[1].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[16];
            furniture[1].GetComponent <SCR_Furniture>().Spawn(-250, 1310);
            furniture[2].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[17];
            furniture[2].GetComponent <SCR_Furniture>().Spawn(0, 1310);
            furniture[3].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[18];
            furniture[3].GetComponent <SCR_Furniture>().Spawn(250, 1310);
            furniture[4].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[19];
            furniture[4].GetComponent <SCR_Furniture>().Spawn(500, 1310);
            // Flower pot
            furniture[5].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[20];
            furniture[5].GetComponent <SCR_Furniture>().Spawn(-496, 1438);
            furniture[6].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[20];
            furniture[6].GetComponent <SCR_Furniture>().Spawn(-278, 1438);
            furniture[7].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[20];
            furniture[7].GetComponent <SCR_Furniture>().Spawn(-68, 1438);
            furniture[8].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[20];
            furniture[8].GetComponent <SCR_Furniture>().Spawn(109, 1438);
            furniture[9].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[20];
            furniture[9].GetComponent <SCR_Furniture>().Spawn(314, 1438);
            furniture[10].GetComponent <SpriteRenderer>().sprite = SPR_Furniture[20];
            furniture[10].GetComponent <SCR_Furniture>().Spawn(526, 1438);
        }

        layer1 = new GameObject[sprLayer1.Length];
        for (var i = 0; i < sprLayer1.Length; i++)
        {
            layer1[i] = Instantiate(PFB_Background);
            layer1[i].GetComponent <SpriteRenderer>().sprite = sprLayer1[i];
            layer1[i].transform.localScale = new Vector3(SCR_Gameplay.SCREEN_SCALE, SCR_Gameplay.SCREEN_SCALE, 1);
        }

        layer2 = new GameObject[sprLayer2.Length];
        for (var i = 0; i < sprLayer2.Length; i++)
        {
            layer2[i] = Instantiate(PFB_Background);
            layer2[i].GetComponent <SpriteRenderer>().sprite = sprLayer2[i];
            layer2[i].transform.localScale = new Vector3(SCR_Gameplay.SCREEN_SCALE, SCR_Gameplay.SCREEN_SCALE, 1);
        }

        layer3 = new GameObject[sprLayer3.Length];
        for (var i = 0; i < sprLayer3.Length; i++)
        {
            layer3[i] = Instantiate(PFB_Background);
            layer3[i].GetComponent <SpriteRenderer>().sprite = sprLayer3[i];
            layer3[i].transform.localScale = new Vector3(SCR_Gameplay.SCREEN_SCALE, SCR_Gameplay.SCREEN_SCALE, 1);
        }

        layer4 = new GameObject[sprLayer4.Length];
        for (var i = 0; i < sprLayer4.Length; i++)
        {
            layer4[i] = Instantiate(PFB_Background);
            layer4[i].GetComponent <SpriteRenderer>().sprite = sprLayer4[i];
            layer4[i].transform.localScale = new Vector3(SCR_Gameplay.SCREEN_SCALE, SCR_Gameplay.SCREEN_SCALE, 1);
        }

        layer5 = new GameObject[sprLayer5.Length];
        for (var i = 0; i < sprLayer5.Length; i++)
        {
            layer5[i] = Instantiate(PFB_Background);
            layer5[i].GetComponent <SpriteRenderer>().sprite = sprLayer5[i];
            layer5[i].transform.localScale = new Vector3(SCR_Gameplay.SCREEN_SCALE, SCR_Gameplay.SCREEN_SCALE, 1);
        }


        lightBar = new GameObject[LIGHTBAR_NUMBER];
        for (int i = 0; i < LIGHTBAR_NUMBER; i++)
        {
            lightBar[i] = Instantiate(PFB_LightBar);
        }

        SetCameraY(0);
    }