예제 #1
0
    private void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.tag == "Player")
        {
            if (game_is_started == true)
            {
                audio_manager.Play("Player");
            }
        }

        if (collision.gameObject.tag == "Block_Bottom")
        {
            //find better place for this line of code(if you can)
            // scene_transition.SetBool("level_start", false);


            if (Block.block_has_been_destroyed)
            {
                score_manager.Increase_Score(10);

                Block.block_has_been_destroyed = false;
            }
        }

        // Giving some randomness to the Ball Direction on collision.
        Apply_Random_Friction();

        if (collision.gameObject.tag == "Player")
        {
            rb_ball.velocity = new Vector2((transform.position.x - player_pos.position.x) * 500f * Time.deltaTime, rb_ball.velocity.y);
        }

        if (collision.gameObject.tag == "Bottom")
        {
            if (Lifes > 1)
            {
                GameObject.Find("Life's").transform.Find("Canvas").transform.Find(Lifes.ToString()).gameObject.SetActive(false);
                Lifes--;

                if (Lifes == 1)
                {
                    GameObject.Find("Play_Space").transform.Find("Bottom").GetComponent <BoxCollider2D>().isTrigger = true;
                }
            }
        }
    }
    private void Damage_Block()
    {
        // Hitting the block more and more until it breaks. Changing sprites to show the amount of damage block has taken.

        /* if (count_damage == 0) {
         *     current_sprite.sprite = block_sprites[count_damage];
         *     count_damage++;
         * }
         * else if (count_damage == 1) {
         *     current_sprite.sprite = block_sprites[count_damage];
         *     count_damage++;
         * }
         * else if (count_damage == 2) {
         *     current_sprite.sprite = block_sprites[count_damage];
         *     count_damage++;
         * }
         * else if (count_damage == 3) {
         *     current_sprite.sprite = block_sprites[count_damage];
         *     count_damage++;
         * }       */
        if (count_damage == 0)
        {
            audio_manager.Play("block_1");
            current_sprite.sprite = block_sprites;// put "count_damage" here
            count_damage++;
        }
        else
        {
            audio_manager.Play("block_bottom_2");

            level_4_game_mechanics.hit_detected_level4 = true;

            score_ui_manager.Increase_Score(15);

            Instantiate(partical_prefab, transform.position, Quaternion.identity);


            Destroy(this.gameObject);
        }
    }
예제 #3
0
    private void Damage_Block()
    {
        if (count_damage == 0)
        {
            audio_manager.Play("block_1");

            current_sprite.sprite = block_sprites[3];
            count_damage++;
        }
        else
        {
            if (Scene_Loader.scene_index == 11)
            {
                audio_manager.Play("block_1");
            }
            else
            {
                audio_manager.Play("block_top_2");
            }


            if (Scene_Loader.scene_index == 6)
            {
                level_6_game_mechanics.hit_detected_level6 = true;
            }

            if (Scene_Loader.scene_index == 11)
            {
                score_ui_manager.Increase_Score(5);
                level_10_block_spawner.count_blocks--;
            }

            Instantiate(partical_prefab, transform.position, Quaternion.identity);

            Destroy(this.gameObject);
        }
    }
    private void Damage_Block()
    {
        if (count_damage == 0)
        {
            audio_manager.Play("Level_10_block_1");
            current_sprite.sprite = block_sprites[1]; // put "count_damage" here
            count_damage++;
        }
        else if (count_damage == 1)
        {
            audio_manager.Play("Level_10_block_1");
            current_sprite.sprite = block_sprites[3];
            count_damage++;
        }
        else if (count_damage == 2)
        {
            audio_manager.Play("Level_10_block_1");
            current_sprite.sprite = block_sprites[4];
            count_damage++;
        }
        else
        {
            audio_manager.Play("Level_10_block_2");

            score_ui_manager.Increase_Score(20);

            level_10_game_mechanics.hit_detected_level10 = true;

            FindObjectOfType <Level_10_Spacial_block_spawn>().GetComponent <Level_10_Spacial_block_spawn>().is_destroyed = true;


            Instantiate(partical_prefab, transform.position, Quaternion.identity);

            Destroy(this.gameObject);
        }
    }