
平时自己也会玩一些点击方块找图形的游戏,匹配图形即可增加分数或级数,那么在本文中,将探讨如何在Unity中做到这一点,当然当我们重新开始游戏时,瓷砖图形也会完全不同。
根据拼图游戏的重点我们需要在Unity中创建一个名为网格的空游戏对象(Grid Layout Group),这将放置在画布的下方,并将包含一个网格布局组组件。
如下所示:

然后创建15个按钮,每个按钮都有一个停用的图像,这些按钮将充当图块,当然,这些图形仅仅只是网格的子对象。
接着需要创建一个包含这些变量的脚本。
如下所示:
[SerializeField] private Sprite[] _images;
[SerializeField] private GameObject _grid;
[SerializeField] private Text _text;
[SerializeField] private Image[] _imagecollection;
private int _score;
这里创建了一个精灵数组,它将包含三张图像;第二个数组将保存连接到按钮的图像,当点击它时,它将被激活,其余的不用说了吧,都是一样的。
然后激活网格并为每个网格分配一个随机图像,将这些图像设置为false,因为希望它们在单击它们时可见。
如下所示:
void Start()
{
_grid . gameObject.SetActive(true);
foreach(var image in _imageCollection)
{
image.GetComponent<Image>().sprite = _images[Random.Range(0,_images.Length)];
image.gameObject.SetActive(false);
此时,需要一个可以通过点击事件调用的公共方法。
如下所示:
public void RandomImage(Image picture)
{
picture.gameObject. SetActive(true);
if (picture.GetComponent<Image>().sprite == _images[1])
{
_score--;
}
else
{
_score++;
}
_text.text = _score.ToString( );
}
这里传入想要激活的图像,之后需要检查图形是否是地雷,如果是…则减分数,否则加分数。
到这里就可以测试一下该游戏了。

…
以上是关于拼图游戏制作的全部内容,如果你有任何反馈,请随时在本页面下方留言。