Java文字冒险游戏方案,用木兰编程语言编写文字冒险游戏(前八章)
剛到手《Make Your Own Python Text Adventure: A Guide to Learning Programming》一書,打算將它的例程用木蘭語言重寫并改為中文標識符。一方面看看已重現的木蘭功能對新手入門教程是否足夠,順便對之前小結的木蘭與 Python 的語法對比進行補充。下面代碼在木蘭發布版本 0.0.15.0 運行通過。
該書三四五六章分別介紹用戶輸入、條件語句、函數、列表,直接跳到第七章:循環,因為例程包含了前幾章的技術:
func 玩 {
庫存 = ['匕首','金幣(5)','面包棍']
println("逃出生天!")
loop {
輸入 = 獲取命令()
if ['n', 'N'].__contains__(輸入) {
println("往北!")
} elif ['s', 'S'].__contains__(輸入) {
println("往南!")
} elif ['e', 'E'].__contains__(輸入) {
println("往東!")
} elif ['w', 'W'].__contains__(輸入) {
println("往西!")
} elif ['i', 'I'].__contains__(輸入) {
println("庫存:")
for 家伙 in 庫存 {
println('* ' + str(家伙))
}
} else {
println("不懂!")
}
}
}
func 獲取命令 {
return input('行動:')
}
玩()
比較大的不適是不支持 Python 元素 in 列表 的判斷語法,這里用 __contains__ 代替,尚待確認是否有更簡便的木蘭語法沒發現。
可以用 .. 和 ..< 代替 Python 中的 range:
for 數 in 1..<11 {
因數 = []
for 除數 in 1..數 {
因數.append(除數) if 數 % 除數 == 0
}
println("`數`的因數:" + str(因數))
}
第八章:類型和個體
type 人 {
func $人(名稱, 年齡, 愛吃的) {
$名稱 = 名稱
$年齡 = 年齡
$愛吃的 = 愛吃的
}
func $出生年份 {
return 2015 - $年齡
}
func $__str__ {
return "姓名:{} 年齡:{} 愛吃的:{}".format(
$名稱, $年齡, $愛吃的[0])
}
}
各人 = [人("Ed", 11, ["hotdogs", "jawbreakers"])
, 人("Edd", 11, ["broccoli"])
, 人("Eddy", 12, ["chunky puffs", "jawbreakers"])]
年齡和 = 0
年份和 = 0
for 某人 in 各人 {
年齡和 = 年齡和 + 某人.年齡
年份和 = 年份和 + 某人.出生年份()
}
println("平均年齡:" + str((年齡和 + 0.0) / len(各人)))
println("平均出生年份:" + str(int(年份和 / len(各人))))
println("普查中的人:")
for 某人 in 各人 {
println(某人)
}
第九章、異常,需要木蘭的 try...catch 語法,打算在 gitee 項目重現該語法后繼續本系列。
總結
以上是生活随笔為你收集整理的Java文字冒险游戏方案,用木兰编程语言编写文字冒险游戏(前八章)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解忧云SMS短信服务平台系统 短信发送系
- 下一篇: l对c语言课程的看法论文,学生选修课程系