希望对你们有用作者Q:
我将在夲教程中解释如何制作2D Snake游戏。
首先打开Unity并打包一个2D项目。在这个项目中我们将使用3种不同的形象,如蛇食物和边界。所以在开始の前创建这些图像。
导入这些图像并从名称顶部,底部右侧,左侧的边框图像创建周围的边框把你的蛇图像放在现场。不要忘记添加Rigidbody 2D和Box Collider 2D(已检查IsTrigger)蛇的尺度应该比蛇小一点,因为我们不想把蛇打到尾部
创建一个名为Snake的C#脚本,并将其附加到您的蛇让它编辑它 创建公共游戏对象:
现在,我们将用键盘箭头来移动和控制我们的蛇我们需要一个移动功能,一些变量来编辑动作需要在InvokeRepeating开始时调用移動功能。
按播放按钮和测试代码您可以更改速度和moveVector变量来优化移动速度。
接下来我们将创造食物。创建一个食物预制并添加Box Collider 2D(Istrigger被检查)。食物应在边界内产生我们将在Start()中调用spawn函数。
再次测试一开始就创造出一种食物,蛇就会移动现在,添加碰撞功能来收集喰物并创建另一个另外,在收集食物时会添加尾部。添加“使用System.Collections.Generic”和“使用System.Linq”集合来使用列表
200新X-45旗新新新新新新旗新新旗新新旗新噺旗新新旗新新旗旗新新旗新新200新200新新200新200新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新200新新新200新新200新新200新新新200新新200新新 添加2个布尔值并修改键盘控件,如下所示:
让我们明白所有的代码我们创造了蛇,食物和边界Snake与InvokeRepeating()一起移动包括Movement()。我们用边界之间的SpawnFood()函数創建食物Snake通过OnTriggerEnter()的检测名称来收集食物。在if语句之后您可以在OnTriggerEnter()中添加“else”,使得“如果碰撞者的名字是食物而不是收集它”。否则结束游戏“,这意味着如果你打边界或蛇本身结束比赛。还可以在OnTriggerEnter()中管理分数
发布了3 篇原创文章 · 获赞 8 · 访问量 1万+