打砖块游戏进阶版 (作业八)

作业需求

前置需求

先完成上课内容的文章 :打砖块游戏

要拿做好的来改~

STARTO!

在阶层视窗按下滑鼠右键>UI>文字,建立一个 Text

修改 Text 的属性让文字可以看到,修改颜色为白色,大小30点,水平与垂直溢出改为 Overflow

设定 Canvas 渲染模式为 萤幕空间-摄影机,渲染摄影机设定为 MainCamera

将 Text 拉到画面左边

将 Block.cs 脚本修改成以下的程式码

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Block : MonoBehaviour
{
    // Start is called before the first frame update
    string[] block_list = new string[] { "red", "yellow", "green", "blue", "purple" };
    int[] block_score = new int[] { 1, 2, 5, 10, 100 };
    int index, Score, Count;
    Text display_score;
    void Start()
    {
        for (int i = 0; i < block_list.Length; i++)
            if (gameObject.name.Contains(block_list[i]))
                index = i;
        display_score = GameObject.Find("Text").GetComponent<Text>();
        display_score.text = "0";
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    void OnCollisionEnter2D(Collision2D collisionInfo)
    {
        if (++Count == index + 1)
        {
            Score = Convert.ToInt32(display_score.text);
            Destroy(gameObject);
            Score += block_score[index];
            display_score.text = Score.ToString();
        }
    }
}

将画面上的所有 Block_xx 物件删除

分别将五种 block_xx 拉到阶层视窗

将画面上的 block 排开

在阶层视窗将五个 block_xx 选取

增加元件 > 2D 物理 > 2D 盒状碰撞器

将 Block.cs 脚本拉进去

在 Assets 新增一个资料夹 Prefabs

将阶层视窗的五个 block_xx 一个一个拉进 Prefabs 资料夹,做成预制物件

现在可以用这五个预制物件去排列你的画面

完成!

SHXJ
Latest posts by SHXJ (see all)

发布留言