<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
百變山莊坐落於太平洋的一座小島上,山莊主人亦是小島的主人。這個神祕主人細緻周到,邀請函裡不僅附著往返港口的機票,港口的郵船也是通往小島的專線。 初登小島,恢宏大氣的山莊直入眼簾,通過門廊,金碧輝煌的大廳震人心魄. 受邀的偵探們陸續到齊,【侍者】彬彬有禮地站在一旁,他安排你們圍坐在一個奇特十邊形的桌子旁稍加等待。【偵探指尖】回憶著自己臨行前調查的各位名偵探的資料,除了那個神祕的【電話亭】偵探仍沒有現身,世界偵探排名前五的偵探們們剛好每個人佔據了桌子的兩邊一角,就最近破獲的案情相互寒暄著。 "各位名偵探,歡迎你們來到百變山莊。"一個蒼老沉重的聲音響起,燈光驟滅。 乳白的牆面上同時投射出一個詭譎的背影。 "百變山莊的謎案,只有最優秀的偵探才能破解,我不會讓你們失望。希望你們也能經受住我的重重考驗。謎案的具體資訊,晚宴之後再向大家介紹。各位名偵探,祝你們用餐愉快!"畫面消失,燈光重新亮起,【侍者】推著餐車緩緩走來。 這個神祕的主人並沒有親臨現場。 【御姐偵探】對此十分不滿,她拉著【偵探手心】去往盥洗室,這兩位精緻的美女偵探要在用餐前修補妝容。 【侍者】托起一盤酒,示意大家自便拿取。你打量著眼前的酒杯,山莊主人對藝術有著執著的追求,連酒杯也都是十邊形的,說起不同尋常之處,這酒杯還有一個杯耳。 兩位美女偵探拿走酒杯剛一落座,德高望重的【安樂椅】偵探便舉杯祝詞,大家一飲而盡。少年偵探【紅領巾】試圖和【御姐】偵探交杯被拒絕,突然【偵探手心】皺著眉頭吐出來說酒味道不對,一旁的【侍者】趕緊遞過手帕擦拭。 "居然用這種廉價的餐酒來敷衍我們!真的是太…"【偵探手心】突然雙手扼住自己的脖子,倒在地上。"當….當…當……大廳一角的古董鐘敲響了8下。 少年偵探【紅領巾】第一時間檢查了【偵探手心】的身體,向大家宣佈了她的死亡。 挑戰已經開始了嗎? 【偵探指尖】暗自思忖著。名偵探們慌亂一團,卻被【侍者】告知他們已經不能離開這裡了。 島上並沒有訊號,而接送大家的遊船也已經駛出小島。真是個有趣的主人,【偵探指尖】不禁露出了微笑。
《角色扮演偵探》是自制的一款偵探文字遊戲,用JAVA語言實現。
用JAVA的基本語法和一些邏輯判斷,把劇情串起來,去吧,找出凶手。
1、通過亂數,獲取玩家所對應的身份
2、設計劇情背景,寫好劇本
3、玩家在控制檯輸入指定的命令,可以與劇情互動。可以通過程式碼實現:
Scanner sc = new Scanner(System.in) //獲取從控制檯輸入的字元 String input = sc.next();
4、通過邏輯判斷,就可以在不同的劇情流程中進行流轉。
隨機獲取玩家身份
角色介紹
故事背景
你的任務
探索現場
所以,你找到凶手了嗎
/* 這裡是遊戲執行類 偵探 */ public class MainGame extends Story { public static void main(String[] args) { //實現猜數位小遊戲,通過隨機的x數以下的亂數,獲取你所對應的身份 Random r = new Random(); int id = r.nextInt(5) + 1; inChoice(id); // switchChoice(id); sleep(1000); Scanner sc = new Scanner(System.in); System.out.println("接下來就深入瞭解一下其他人的身份吧!(請輸入 「yes」 或 「no」)"); String input = sc.next(); String yes = "yes"; if (!yes.equals(input)) { System.out.println("你確定不想了解其他人的身份嗎?"); System.out.println("這些線索能夠幫助你更快找到答案哦!"); System.out.println("那麼就進入下一步吧!(請輸入「yes」)"); } else { character(); System.out.println("那麼就進入案情推理吧!(請輸入「yes」)"); } String input2 = sc.next(); if (yes.equals(input2)) { Antecedent(); } System.out.println(" "); misson(); //開始遊戲 Game game = new Game(); Scanner in = new Scanner(System.in); while (true) { String line = in.nextLine(); String[] command = line.split(" "); if (command[0].equals("help")) { game.printHelp(); } else if (command[0].equals("go")) { game.goRoom(command[1]); } else if (command[0].equals("bye")) { System.out.println("下面進行結案投票環節,請選擇你認為的凶手:" + "1.安樂椅 2.御姐偵探 3.紅領巾偵探 4.偵探手心 5.偵探指尖 6.侍者(輸入序號即可)"); Scanner sca = new Scanner(System.in); int ordinal = sca.nextInt(); Story.Truth(ordinal); System.out.println(); System.out.println("命案解決了,你好棒喔~歡迎去玩下一部吶~"); System.exit(0); break; } } } public static void misson() { System.out.println("你的任務n" + "1.找出案件真凶;n" + "2.推斷偵探指尖在世界偵探排行榜中是第幾名。"); } public static void inChoice(int id) { Scanner sc = new Scanner(System.in); System.out.println("請輸入您猜測的數位(1-6之間的整數,它將對應你的身份):"); while (true) { int input = sc.nextInt(); if (input > id) { System.out.println("您猜的資料" + input + "大了"); } else if (input < id) { System.out.println("您猜的資料" + input + "小了"); } else { switchChoice(id); break; } } } public static void switchChoice(int id) { System.out.print("現在進行...隨機分配,你的身份是:"); sleep(1000); switch (id) { case 1: System.out.println("安樂椅偵探"); break; case 2: System.out.println("御姐偵探"); break; case 3: System.out.println("紅領巾偵探"); break; case 4: System.out.println("電話亭偵探"); break; case 5: System.out.println("偵探指尖"); break; case 6: System.out.println("侍者"); break; } } public static void sleep(int mills) { try { Thread.sleep(mills); } catch (Exception e) { e.printStackTrace(); } } }
public class BedRoom extends Room { public BedRoom() { super("指尖的房間"); } @Override public void narration() { System.out.println("指尖的偵探筆記"); System.out.println("【左利手】習慣用左手的人"); } }
public class Initialization { //初始化當前房間 Room currentRoom; //顯示歡迎資訊 public void welcome() { System.out.println("輸入「go+房間」去你想去的房間開始蒐證,如go main_bed"); System.out.println("如果想結束遊戲進行投票環節請輸入「bye」"); System.out.println("如果需要幫助,請記住輸入 「help」"); } //設定所有房間 public void setRoom() { //初始化所有的房間 Room bedroom = new BedRoom(); Room lobby = new Lobby(); Room secBed = new secBedroom(); Room thBed = new thBedroom(); //大廳初始化 lobby.setExit("thr_bed", thBed); lobby.setExit("sec_bed", secBed); lobby.setExit("main_bed", bedroom); //指尖初始化 bedroom.setExit("sec_bed", secBed); bedroom.setExit("thr_bed", thBed); //侍者初始化 secBed.setExit("thr_bed", thBed); secBed.setExit("main_bed", bedroom); //御姐的初始化 thBed.setExit("sec_bed", secBed); thBed.setExit("main_bed", bedroom); //設定起始房間 currentRoom = lobby; } //獲得當前房間 public Room getCurrentRoom() { return currentRoom; } }
public class Lobby extends Room { public Lobby() { super("大廳"); } @Override public void narration() { System.out.println("這裡有紅領巾偵探的杯子(1)和安樂椅偵探(2)的杯子,請輸入你要檢視的杯子"); Scanner sc = new Scanner(System.in); String cup = sc.next(); String hCup = "1";//紅領巾偵探的杯子 String ACup = "2";//安樂椅偵探的杯子 if (cup.equals(hCup)) { System.out.println("你注意到「紅領巾」偵探在飲酒是的詭異舉動,決定去檢查它的杯子。他的杯沿一側檢測除了毒藥成分,所有人杯沿一側都檢查出了毒藥成分!n" + " 你記得「紅領巾」偵探和死者都是左利手!"); } else if (cup.equals(ACup)) { System.out.println("你注意到「安樂椅」偵探領酒時異常的神情,決定去檢查它的杯子,這個杯子居然是十一邊形的!而其他人的杯子和桌子一樣是十邊形的。n "); } else { System.out.println("你所輸入錯誤,請輸入1或2"); } } }
通過此次的《角色扮演偵探》遊戲實現,讓我對JAVA的相關知識有了進一步的瞭解,對java這門語言也有了比以前更深刻的認識。
java的一些基本語法,比如資料型別、運運算元、程式流程控制和陣列等,理解更加透徹。java最核心的核心就是物件導向思想,對於這一個概念,終於悟到了一些。
以上就是Java實現經典角色扮演偵探遊戲遊戲的範例程式碼的詳細內容,更多關於Java角色扮演遊戲的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45