



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第利用Matlab复刻扫雷小游戏casestrcmp(XPBMenu_1.Text,'插旗'),XPBMenu_1.Text='扫雷';tool='插旗';
casestrcmp(XPBMenu_1.Text,'扫雷'),XPBMenu_1.Text='插旗';tool='扫雷';
form=1:Row
forn=1:Col
XPBlabel(m,n)=uilabel(XPBFig,'Text','','HorizontalAlignment','center',...
'FontSize',16,'FontWeight','bold',...
'BackgroundColor',0.85*[1,1,1],'Position',[10+1+(m-1)*24,10+1+(n-1)*26,24-2,26-2]);
XPBimage(m,n)=uiimage(XPBFig,'ImageSource','image\button.png',...
'Position',[10+(m-1)*24,10+(n-1)*26,24,26],'UserData',[m,n],'ImageClickedFcn',@clickButton);
%==========================================================================
functionclickButton(obj,~)
clickPos=obj.UserData;
ifstrcmp(tool,'插旗')
switchMarkMap(clickPos(1),clickPos(2))
case1,set(XPBimage(clickPos(1),clickPos(2)),'visible','on','ImageSource','image\flagbutton.png');
case-1,set(XPBimage(clickPos(1),clickPos(2)),'visible','on','ImageSource','image\button.png');
MarkMap(clickPos(1),clickPos(2))=-MarkMap(clickPos(1),clickPos(2));
drawScore(MineNum,MarkMap)
return;
iftimes==1,[MineMap,aroundMap]=createMap(clickPos);drawNum(aroundMap);times=inf;end
ifMarkMap(clickPos(1),clickPos(2))==-1,return;end
set(XPBimage(clickPos(1),clickPos(2)),'visible','off');
MarkMap(clickPos(1),clickPos(2))=0;
switchMineMap(clickPos(1),clickPos(2))
case1,gameOver(MineMap,clickPos);
case0,searchZone(aroundMap,clickPos);
drawScore(MineNum,MarkMap)
ifall(all(abs(MarkMap)==MineMap))
win()
%==========================================================================
functiondrawScore(MineNum,MarkMap)
MarkMap(MarkMap==-1)=0;
score1=num2str(MineNum);L1=length(score1);
score2=num2str(sum(sum(MarkMap)));L2=length(score2);
forii=1:3
ifii=3-L1
set(scoreImage(1,ii),'ImageSource','image\0.png')
else
tempStr=score1(ii-(3-L1));
set(scoreImage(1,ii),'ImageSource',['image\',tempStr,'.png']);
ifii=3-L2
set(scoreImage(2,ii),'ImageSource','image0.png')
else
tempStr=score2(ii-(3-L2));
set(scoreImage(2,ii),'ImageSource',['image\',tempStr,'.png']);
functionwin(~,~)
formm=1:Row
fornn=1:Col
ifMineMap(mm,nn)==1
set(XPBimage(mm,nn),'visible','on','ImageSource','imageflagbutton.png');
XPBfaceIm.ImageSource='imageface3.png';
functiongameOver(MineMap,pos)
formm=1:Row
fornn=1:Col
set(XPBimage(mm,nn),'visible','off');
ifMineMap(mm,nn)==1
set(XPBimage(mm,nn),'visible','on','ImageSource','imagemine.png');
set(XPBlabel(pos(1),pos(2)),'BackgroundColor',[100]);
XPBfaceIm.ImageSource='imageface2.png';
functionsearchZone(aroundMap,pos)
ifaroundMap(pos(1),pos(2))~=0,return;end
begins=pos;
[nonea,noneb]=find(aroundMap==0);
none=[nonea,noneb];
listZone=[begins;begins+[1,0];begins+[-1,0];
begins+[0,1];begins+[0,-1];
begins+[-1,1];begins+[-1,-1];
begins+[1,1];begins+[1,-1]];
while~isempty(intersect(none,listZone,'rows'))
[a,b,~]=intersect(none,listZone,'rows');
begins=[a;begins];none(b,:)=[];
ad=length(sum(begins,2));
listZone=[begins;begins+ones(ad,1)*[1,0];begins+ones(ad,1)*[-1,0];
begins+ones(ad,1)*[0,1];begins+ones(ad,1)*[0,-1];
begins+ones(ad,1)*[-1,1];begins+ones(ad,1)*[-1,-1];
begins+ones(ad,1)*[1,1];begins+ones(ad,1)*[1,-1]];
listZone=unique(listZone,'rows');
listZone(sum(listZone1,2)0,:)=[];
listZone(sum(listZone10,2)0,:)=[];
listZone=round(listZone);
forii=1:size(listZone,1)
set(XPBimage(listZone(ii,1),listZone(ii,2)),'visible','off')
MarkMap(listZone(ii,1),listZone(ii,2))=0;
functionrestart(~,~)
MineMap=[];
aroundMap=[];
MarkMap=ones([Row,Col]);
times=1;
tool='扫雷';
formm=1:Row
fornn=1:Col
set(XPBlab
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医院科研过程管理制度
- 完善机关饭堂管理制度
- 公司门禁密码管理制度
- 大汉集团薪酬管理制度
- 单位涉案财物管理制度
- 小区绿化水泵管理制度
- 员工设备工具管理制度
- 压铸行业安全管理制度
- 计算机三级考试新思潮试题及答案
- 嵌入式软件测试方法试题及答案
- 金属非金属露天矿山安全生产标准化定级评分标准(2023版)
- 北师大版四年级下册简便计算题200道及答案
- 2024风电机组升降机维护定检标准
- 重庆市市(2024年-2025年小学四年级语文)统编版能力评测((上下)学期)试卷及答案
- 江苏省南通市四校联盟2025届高考全国统考预测密卷物理试卷含解析
- 2024年铁路线路工(技师)技能鉴定理论考试题库(含答案)
- 沈阳汽车城开发建设集团有限公司招聘笔试题库2024
- 肿瘤病人发热护理
- 花箱种植合同
- 2024年全国软件水平考试之中级网络工程师考试历年考试题(详细参考解析)
- 【许林芳老师】-《企业文化构建与落地》
评论
0/150
提交评论