Java文字冒险游戏方案,用木兰编程语言编写文字冒险游戏(前八章)
剛到手《Make Your Own Python Text Adventure: A Guide to Learning Programming》一書,打算將它的例程用木蘭語言重寫并改為中文標(biāo)識符。一方面看看已重現(xiàn)的木蘭功能對新手入門教程是否足夠,順便對之前小結(jié)的木蘭與 Python 的語法對比進(jìn)行補(bǔ)充。下面代碼在木蘭發(fā)布版本 0.0.15.0 運(yùn)行通過。
該書三四五六章分別介紹用戶輸入、條件語句、函數(shù)、列表,直接跳到第七章:循環(huán),因?yàn)槔贪饲皫渍碌募夹g(shù):
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('行動(dòng):')
}
玩()
比較大的不適是不支持 Python 元素 in 列表 的判斷語法,這里用 __contains__ 代替,尚待確認(rèn)是否有更簡便的木蘭語法沒發(fā)現(xiàn)。
可以用 .. 和 ..< 代替 Python 中的 range:
for 數(shù) in 1..<11 {
因數(shù) = []
for 除數(shù) in 1..數(shù) {
因數(shù).append(除數(shù)) if 數(shù) % 除數(shù) == 0
}
println("`數(shù)`的因數(shù):" + str(因數(shù)))
}
第八章:類型和個(gè)體
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 項(xiàng)目重現(xiàn)該語法后繼續(xù)本系列。
總結(jié)
以上是生活随笔為你收集整理的Java文字冒险游戏方案,用木兰编程语言编写文字冒险游戏(前八章)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解忧云SMS短信服务平台系统 短信发送系
- 下一篇: l对c语言课程的看法论文,学生选修课程系