课程设计
平台:Matlab App designer
功能实现:2048小游戏的创建与运行
目的:
1.Matlab代码编写能力进阶;
2.学会利用Matlab GUI设计图形交互界面,开发有趣的应用;
演示:
2048小游戏规则:
(1)点击键盘上的上下左右按钮,控制数字的滑动;
(2)滑动的数字如果碰到相同数字,则合并为更高级数字;
(3)有数字合并后,会在随机位置新增加一个随机的数字2或4;
(4)游戏结束:游戏界面被数字填满不能再滑动;
(5)游戏总分数:游戏过程中的数字相加总和。
1.该界面上,可以显示历史最佳得分以及实时更新当前得分;可以根据难度,将数字界面设置成4×4或者5×5,数字界面越大,难度越小。先演示4×4的数字界面游戏情况:
2.接下来演示5×5的数字界面游戏情况:
3.游戏结束后提示得分情况,以及给出保存游戏图片或者重新开始的选项。
代码示例:
起始函数:
app.UIFigure.Name='2048小游戏';
%若没有游戏记录则最高分为0
if ~exist('best.mat')
app.best=0;
save best.mat app.best;
end
data=load('best.mat');
app.best=data.best;
app.Label_6.Text=num2str(app.best);%设置最佳分
%方块颜色表
app.colorlist=[ 0.8039 0.7569 0.7059
0.9333 0.8941 0.8549
0.9373 0.8784 0.8039
0.9608 0.6863 0.4824
0.9529 0.5922 0.4078
0.9529 0.4902 0.3725
0.9686 0.3686 0.2431
0.9255 0.8118 0.4510
0.9373 0.7882 0.3922
0.9333 0.7804 0.3216
0.9216 0.7686 0.2627
0.9255 0.7608 0.1804
0.9412 0.4078 0.4157
0.9216 0.3137 0.3451
0.9451 0.2549 0.2627
0.4392 0.7020 0.8157
0.3765 0.6353 0.8745
0.0902 0.5098 0.7843];
%数字大小表
app.fontsizelist=[14 26 26 26 26 26 26 26 26 26 24 24 24 24 22 22 22 18];
app.Size=0;
app.Label_5.Text=num2str(0);
app.Panel_2.Visible='off';
app.DropDown.Value='请先设置难度';
app.DropDown.Enable='on';