import java.util.Scanner;
public class work6 {public static void main(String[] args) {Scanner input = new Scanner(System.in);// 1.地图 二维数组10X10// 2.人,箱,终(箱子可以随机出现)// 3.游戏结束(胜利,箱子堆到边缘)// 4.人不能吃终点// 5.不能超出地图的范围int[][] map = new int[10][10];// 人的坐标int rx = 5;int ry = 4;map[rx][ry] = 1;// 箱子的坐标int xx = 3;int xy = 2;map[xx][xy] = 2;// 终点的坐标// 随机产生int zx = 4;int zy = 1;map[zx][zy] = 3;do {for (int i = 0; i < map.length; i++) {for (int j = 0; j < map[i].length; j++) {if (map[i][j] == 0) {System.out.print("口");} else if (map[i][j] == 1) {System.out.print("汉");} else if (map[i][j] == 2) {System.out.print("车");} else if (map[i][j] == 3) {System.out.print("终");}}System.out.println();}if(map[xx][xy]==map[zx][zy]){System.out.println("恭喜你推车成功!");break;}if (xx==0||xx==9||xy==0||xy==9) {//如果箱子也触碰边缘游戏失败。System.out.println("游戏失败");break;}System.out.println("请输入方向:w上,s下,a左,d右");String str = input.next();if (str.equals("w")) {//判断人的上一格是箱子的情况if(str.equals("w")&&rx==0){rx++;map[rx][ry]=map[rx+1][ry];//往上走map[rx][ry]=1; //重新赋值}else if(str.equals("a")||str.equals("S")||str.equals("d")){continue;}if(map[rx-1][ry]==2){//推箱子//箱子上移xx--;//箱子赋值map[xx][xy]=2;}map[rx][ry]=0;//将现在人的坐标值赋值为0,清空作为地图//向上走一格,移动行的位置rx--;//将新的坐标重新赋值为人的值1map[rx][ry]=1;} else if (str.equals("s")) {if(str.equals("s")&&rx==9){//如果rx碰到9rx--;map[rx][ry]=map[rx-1][ry];//往下走map[rx][ry]=1;    //重新赋值}else if(str.equals("w")||str.equals("a")||str.equals("d")){continue;}//判断人的下一格是箱子的情况if(map[rx+1][ry]==2){//箱子下移xx++;//箱子赋值map[xx][xy]=2;}map[rx][ry]=0;//将现在人的坐标值赋值为0,清空作为地图//向下走一格,移动行的位置rx++;//将新的坐标重新赋值为人的值1map[rx][ry]=1;} else if (str.equals("a")) {if(str.equals("a")&&ry==0){//往左走ry++;map[rx][ry]=map[rx][ry+1];//往左走再赋值map[rx][ry]=1;   //重新赋值}else if(str.equals("w")||str.equals("S")||str.equals("d")){continue;}//判断人的左一格是箱子的情况if(map[rx][ry-1]==2){//箱子上移xy--;//箱子赋值map[xx][xy]=2;}map[rx][ry]=0;//将现在人的坐标值赋值为0,清空作为地图//向左走一格,移动行的位置ry--;//将新的坐标重新赋值为人的值1map[rx][ry]=1;} else if (str.equals("d")) {if(str.equals("d")&&rx==0){//往右走rx++;map[rx][ry]=map[rx][ry-1];//往上走map[rx][ry]=1;    //重新赋值}else if(str.equals("a")||str.equals("S")||str.equals("w")){continue;}//判断人的右一格是箱子的情况if(map[rx][ry+1]==2){//箱子上移xy++;//箱子赋值map[xx][xy]=2;}map[rx][ry]=0;//将现在人的坐标值赋值为0,清空作为地图//向右走一格,移动行的位置ry++;//将新的坐标重新赋值为人的值1map[rx][ry]=1;}map[zx][zy]=3;} while(true);}

Java基础语句推箱子游戏相关推荐

  1. 推箱子游戏的java设计思路_用JAVA实现一个推箱子游戏

    技术应用 TECHNOLOGY AND MARKET Vol. 26,No. 2,2019 用 JAVA 实现一个推箱子游戏 马寅璞1,孔阳坤2 ( 1. 南京信息工程大学计算机软件学院物联网工程 1 ...

  2. 基于Java+Swing实现推箱子游戏

    基于Java+Swing实现推箱子游戏 一.系统介绍 二.功能展示 三.其他系统 四.获取源码 一.系统介绍 基于JAVA的推箱子游戏系统主要用于实现游戏推箱子功能,提供多种不同难度的关卡.本系统结构 ...

  3. 推箱子游戏 java源代码_java推箱子游戏源代码(含推箱子的判断)

    <java推箱子游戏源代码(含推箱子的判断)>由会员分享,可在线阅读,更多相关<java推箱子游戏源代码(含推箱子的判断)(6页珍藏版)>请在人人文库网上搜索. 1.第一个Ja ...

  4. java基础(javaBase)推箱子,课程总结

    推箱子总结: 1.遇到的问题,与解决办法 最后一步,设置箱子的位置与目的地位置重合,原理是让map地图重新加载一遍,再退出 2.重新开始游戏,原理就是在循环外面定义一个do-while循环,注意,一个 ...

  5. 黑马程序员——C基础之推箱子游戏

    ------- iOS培训.android培训.java培训.期待与您交流! ---------- #include <stdio.h> #define kRows 10 #define ...

  6. 推箱子java下载_Java实现简单推箱子游戏

    本文实例为大家分享了Java实现简单推箱子游戏的具体代码,供大家参考,具体内容如下 *编写一个简易的推箱子游戏,使用10*8的二维字符数据表示游戏画面,H表示墙壁; &表示玩家角色: o表示箱 ...

  7. Java小游戏项目:推箱子游戏

    经典的推箱子是一个来自日本的古老游戏,目的是在训练你的逻辑思考能力.在一个狭小的仓库中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙的利用有限的空间和通道, ...

  8. Java 编写推箱子报告,推箱子游戏用java怎么去写

    推箱子游戏用java怎么去写 发布时间:2020-06-22 16:31:07 来源:亿速云 阅读:100 作者:清晨 这篇文章将为大家详细讲解有关推箱子游戏用java怎么写,小编觉得挺实用的,因此分 ...

  9. c++实现推箱子游戏(带链表)

    目录 1.判断操作有效性 2.移动操作 3.绘图 4.撤回操作 5.主要函数 6.源码 推箱子游戏的本质就是坐标的移动.我们假设人物当前的坐标是(x,y),那么向上移动后的位置就是(x-1,y),向下 ...

最新文章

  1. 燕大计算机专业档次,河北省高校排名:分为四个档次,燕大在第二档,第三档有八所高校...
  2. thrift多平台安装
  3. python小结价格_036 Python进阶小结
  4. php中单引号与双引号的区别
  5. 口袋中的xmind如何添加优先等级图标
  6. 作为医生,除了买花,还能在情人节用什么特别的方式表白呢?(情书-病历体)...
  7. 硅谷历史_使其新颖:硅谷设计的历史
  8. 照搬照做无疑了!2019新iPhone系列确定“浴霸摄像头”
  9. Android 编码规范:(五)避免创建不必要的对象
  10. 求二叉树中某结点的父结点(左右孩子表示法)
  11. 电话本写完了,发个1.0吧
  12. C语言——指针详解(必收藏)
  13. 【SVN】汉化包 汉化失败 问题解决
  14. Spring框架 教程
  15. 使用Aforge 开发的摄像头,有拍照,录像,设置帧率,分辨率等,以及对视频以及相机等的控制
  16. 可以用计算机控制手机的软件,还有这样的神奇软件!让你用PC操控手机的神器...
  17. PLC基础知识(PLC入门必看)
  18. 【重磅首发新品】AM335x全面升级处理器——AM62x,四核Cortex-A53+M4F,主频1.4GHz
  19. feather初体验
  20. 终于明白了异地恋为什么那么难

热门文章

  1. 区块链—未来的路还很长
  2. num_samples should be a positive integer value, but got num_samples=0
  3. python打印空心三角
  4. 高德纳谈计算机程序设计艺术(上)
  5. 金和oa:自定义表单自动获取流程审批意见
  6. 公司职位中英对照 大全(转载)
  7. hdu5944Fxx and string
  8. 9款原型设计工具与Sketch的强强组合,轻松构建交互原型!
  9. Labview2019,通讯三菱plc,用opc和mc通讯协议,sqlite数据库,labview标准框架jki状态机,加上数组队列,实现多线程交互。
  10. 电子烟软件测试项目清单,电子烟分析测试报告-COSH.PDF