打开
x

如何用Unity制作数字游戏《2048》?

Gad2018-05-11作者:大白兔奶糖
文/大白兔奶糖

前言

尝试用Unity写一个《2048》,不过比起实现功能,本次尝试把更多的把精力放在了开发流程梳理上。实际上,我把这个流程写完,已经懒得写代码了→_→

玩法概述

2048是一个益智游戏。规则是:

开始时棋盘内随机出现两个数字,出现的数字仅可能为2或4。

玩家可以选择上下左右四个方向,若棋盘内的数字出现位移或合并,视为有效移动。

玩家选择的方向上若有相同的数字则合并,每次有效移动可以同时合并,但不可以连续合并。

合并所得的所有新生成数字想加即为该步的有效得分。

玩家选择的方向行或列前方有空格则出现位移。

每有效移动一步,棋盘的空位(无数字处)随机出现一个数字(依然可能为2或4)。

棋盘被数字填满,无法进行有效移动,判负,游戏结束。

棋盘上出现2048,判胜,游戏结束。


玩法流程图


UI设计示意图


代码实现

资源文件管理

先根据资源类型划分,随后根据场景划分,再根据用途划分为三个板块:view,与用户UI相关;model,与游戏实体相关;controller,游戏控制器相关。

·Sences
·Script

Game_play
Menu
view
model
controller
view
controller
Common
Scenes

UML类图


从左到右分别是数据层,逻辑层,表现层。

具体代码

太长了就不粘贴了(其实根本没写)。

via:Gad