java你画我猜源代码_java 你画我猜源码

【实例简介】

java项目你画我猜,主界面是NHWC.java,服务器类是NHWCserver.java,写的比较烂,仅供参考!

【实例截图】

【核心代码】

0cae4560-0eff-4c8c-a865-a908d506c68d

└── Copy of final-1

├── bin

│   └── KCSJ

│   ├── AllMsg.class

│   ├── BackPanel.class

│   ├── ImageMonitor.class

│   ├── ImgMsg1.class

│   ├── MainPanel.class

│   ├── MYSqlConnect.class

│   ├── NetClient$UDPRecvThread.class

│   ├── NetClient.class

│   ├── NHWC$1.class

│   ├── NHWC$2.class

│   ├── NHWC$3.class

│   ├── NHWC$AboutDialog$1.class

│   ├── NHWC$AboutDialog.class

│   ├── NHWC$ChangeDialog$1.class

│   ├── NHWC$ChangeDialog$2.class

│   ├── NHWC$ChangeDialog.class

│   ├── NHWC$ClientThread.class

│   ├── NHWC$CListener.class

│   ├── NHWC$MyAction.class

│   ├── NHWC$TFListener.class

│   ├── NHWC$WidowClosingListener.class

│   ├── NHWC.class

│   ├── NHWCserver$Client.class

│   ├── NHWCserver$UDPThread.class

│   ├── NHWCserver.class

│   ├── NWLogin.class

│   ├── PaintPanel$CancelListener.class

│   ├── PaintPanel$ChangeListener.class

│   ├── PaintPanel$ClearListener.class

│   ├── PaintPanel$ColorListener.class

│   ├── PaintPanel$PaintListener.class

│   ├── PaintPanel$WriterListener.class

│   ├── PaintPanel.class

│   ├── Point.class

│   ├── PointNewMsg.class

│   └── RegisterPanel.class

├── miglayout15-swing.jar

├── miglayout-src.zip

├── mysql-connector-java-5.0.7-bin.jar

└── src

└── KCSJ

├── AllMsg.java

├── BackPanel.java

├── ImageMonitor.java

├── ImgMsg1.java

├── MainPanel.java

├── MYSqlConnect.java

├── NetClient.java

├── NHWC.java

├── NHWCserver.java

├── NWLogin.java

├── PaintPanel.java

├── Point.java

├── PointNewMsg.java

└── RegisterPanel.java

5 directories, 53 files

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的Java实现推箱子小游戏源代码: ```java import java.util.Scanner; public class PushBoxGame { private static int[][] map = { // 地图 {1, 1, 1, 1, 1, 1, 1}, {1, 0, 0, 0, 0, 0, 1}, {1, 0, 2, 0, 0, 0, 1}, {1, 0, 0, 0, 1, 0, 1}, {1, 0, 0, 0, 0, 0, 1}, {1, 0, 0, 0, 0, 0, 1}, {1, 1, 1, 1, 1, 1, 1} }; private static int playerX = 1; // 玩家的初始位置 private static int playerY = 1; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (true) { // 循环直到推完所有箱子 displayMap(); System.out.print("请输入方向(w/a/s/d):"); String input = scanner.next(); switch (input) { case "w": move(-1, 0); break; case "a": move(0, -1); break; case "s": move(1, 0); break; case "d": move(0, 1); break; default: System.out.println("无效输入!"); break; } if (isWin()) { System.out.println("恭喜你,推完了所有箱子!"); break; } } } private static void displayMap() { // 显示地图 for (int[] row : map) { for (int cell : row) { switch (cell) { case 0: System.out.print(" "); break; case 1: System.out.print("■"); break; case 2: System.out.print("□"); break; case 3: System.out.print("※"); break; } } System.out.println(); } } private static void move(int dx, int dy) { // 移动 int newX = playerX + dx; int newY = playerY + dy; int newBoxX = newX + dx; int newBoxY = newY + dy; if (map[newX][newY] == 0 || map[newX][newY] == 3) { // 移动到空地或目标点 playerX = newX; playerY = newY; } else if (map[newX][newY] == 2) { // 移动到箱子 if (map[newBoxX][newBoxY] == 0 || map[newBoxX][newBoxY] == 3) { // 箱子可以移动 playerX = newX; playerY = newY; map[newX][newY] = 0; map[newBoxX][newBoxY] = 2; } } } private static boolean isWin() { // 是否推完所有箱子 for (int[] row : map) { for (int cell : row) { if (cell == 2) { return false; } } } return true; } } ``` 这个实现使用一个二维数组来表示地图,其中数字1表示墙,数字2表示箱子,数字3表示目标点,数字0表示空地。玩家的初始位置为(1,1),每次移动时根据输入的方向来计算新的坐标,如果新位置是空地或目标点,则玩家移动到新位置;如果新位置是箱子,则需要判断箱子能否移动,如果能移动,则玩家和箱子一起移动到新位置。判断是否赢得游戏的方法是检查地图上是否还有箱子。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值