簡易版“推箱子”遊戲
簡易版“推箱子”遊戲
此專案適合java初學者練習,需要用到二維陣列,迴圈語句,判斷語句等。
package game;
import java.util.Random;
import java.util.Scanner;
public class txz {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
Random r = new Random();
//定義一個二維陣列表示地圖:十行十列
int [][]a=new int[10][10];
//箱子的隨機座標,箱子初始化不能在邊緣。
int xh=r.nextInt(8)+1;
int xl=r.nextInt(8)+1;
//人的隨機座標
int rh=r.nextInt(10);
int rl=r.nextInt(10);
// 終點的隨機座標
int zh=r.nextInt(10);
int zl=r.nextInt(10);
// 用一個數字代表:箱子:3 人:1 終點:2
a[xh][xl]=3;
a[rh][rl]=1;
a[zh][zl]=2;
//迴圈次數不確定用while迴圈
while(true) {
//保證人走過終點後,終點還在
a[zh][zl]=2;
//將定義好的‘地圖’列印出來
//箱子:■ 人:▲ 終點:●
for(int i=0;i<a.length;i++) {
for(int j=0;j<a[i].length;j++) {
switch(a[i][j]){
case 3://要推動的箱子
System.out.print("■");
break;
case 1://人
System.out.print("▲");
break;
case 2://終點
System.out.print("●");
break;
default://空白
System.out.print("□");
}
}
System.out.println();
}
/*當終點的橫座標和縱座標等於箱子的橫座標和縱座標時
,成功將箱子推向終點,迴圈結束*/
if(xh==zh&&xl==zl) {
System.out.println("恭喜你成功把箱子推到終點");
break;
}
System.out.println("輸入w、s、a、d分別代表人向上、下、左、右移動");
//接收使用者操作資訊
String s=sc.next();
switch(s) {
case "w":
if(rh>0) {//人的橫座標大於0才能向上移動
//遇到箱子是
if(rl==xl&&rh==xh+1) {//人在箱子下方時,才可以向上推箱子
if(xh>0) {
xh--;//箱子上移
a[xh][xl]=3;//箱子圖形也跟著上移
a[rh][rl]=0;//人原來的座標變空白
rh--;//人上移
a[rh][rl]=1;//人圖形也要上移
}
//沒遇到箱子時
}else {
a[rh][rl]=0;//人原來的座標變空白
rh--;//人上移
a[rh][rl]=1;//人圖形也要上移
}
}
break;
//下面操作和向上移動同理,如有疑問私信或評論,我看到會回覆的~
case "s":
if(rh<9) {
if(rl==xl&&rh==xh-1) {
if(xh<9){
xh++;
a[xh][xl]=3;
a[rh][rl]=0;
rh++;
a[rh][rl]=1;
}
}else {
a[rh][rl]=0;
rh++;
a[rh][rl]=1;
}
}
break;
case "a":
if(rl>0) {
if(rh==xh&&rl==xl+1) {
if(xl>0) {
xl--;
a[xh][xl]=3;
a[rh][rl]=0;
rl--;
a[rh][rl]=1;
}
}else {
a[rh][rl]=0;
rl--;
a[rh][rl]=1;
}
}
break;
case "d":
if(rl<9) {
if(rh==xh&&rl==xl-1) {
if(xl<9) {
xl++;
a[xh][xl]=3;
a[rh][rl]=0;
rl++;
a[rh][rl]=1;
}
}else {
a[rh][rl]=0;
rl++;
a[rh][rl]=1;
}
}
break;
default://提示使用者輸入錯誤操作按鈕
System.out.println("會不會玩?");
break;
}
}
}
}
相關文章
- js 簡單的推箱子小遊戲步驟解析–大家都玩過的JS遊戲
- MATLAB 簡易版 你畫我猜小遊戲Matlab遊戲
- C語言實現推箱子游戲C語言
- 人人都可以用C語言寫推箱子小遊戲C語言遊戲
- Canvas悟空推箱子Canvas
- c++簡易小遊戲C++遊戲
- 大學生課程設計 ------ 安卓Android軟體設計(推箱子小遊戲)安卓Android遊戲
- java程式:簡易撲克牌遊戲Java遊戲
- 利用python實現簡易版的貪吃蛇遊戲(面向python小白)Python遊戲
- C#之簡易猜數字遊戲C#遊戲
- 簡易遊戲通訊協議框架1.0遊戲協議框架
- 遊戲推薦:反恐精英 for Mac版遊戲Mac
- 簡易版管道模式模式
- 我的簡易2048小遊戲記錄整理遊戲
- 簡易撲克牌遊戲簡單實現,歡迎指正遊戲
- Java第三季—簡易撲克牌遊戲Java遊戲
- React簡易版老虎機React
- 2019雲南行-簡易版
- 簡易版 vue實現Vue
- 網易《逆水寒》手遊宣佈:推出首個遊戲版ChatGPT遊戲ChatGPT
- html+js 實現 推箱子 貪吃蛇和簡單的飛機大戰HTMLJS
- Java實現簡易聯網坦克對戰小遊戲Java遊戲
- 簡易撲克牌遊戲JAVA原始碼_新手上路遊戲Java原始碼
- 簡易撲克遊戲---各位爸爸求指點指點遊戲
- 網易遊戲周家科:從體驗推進遊戲美術設計丨N.GAME遊戲GAM
- Laravel 結合 Swoole 簡易版Laravel
- 簡易版抽獎小程式
- 手寫簡易版React框架React框架
- 5月韓國19款遊戲開箱子概率不合規,國產遊戲佔比超5成遊戲
- 塞爾達,但是推箱子?開放世界解謎遊戲《海天島傳說》將於5月22日發售遊戲
- 模擬實現簡易版shell
- Docker簡易版教程——通俗易懂Docker
- 實現一個簡易版WebpackWeb
- 自制最簡易版vue.jsVue.js
- 簡易版NFT合約程式碼
- 裝逼的最高境界---一行js程式碼完成一個簡易版的貪吃蛇遊戲JS遊戲
- python手機版做小遊戲程式碼大全-python簡單小遊戲程式碼 怎麼用Python製作簡單小遊戲...Python遊戲
- 北京遊戲監管會議詳情:將嚴查無版號遊戲運營推廣遊戲