ゴリラと学ぶ「Pythonで合言葉ゲーム」
ゴリはゲーム🎮が大好きウホ。今のものから昔のものまで、はばひろく好んでいるウホ。
ゲームはよくないみたいにいわれることも多いけど、やってて楽しいということはおつむ🧠の刺激にはなっているわけで、適度ならおつむによいだろうし、それでおべんきょうもできたらなおさら嬉しいウホ。
そうこう考えていると、急にゲームをつくりたい衝動にかられてしまったウホ!そこでゴリは、さっそくめちゃくちゃ簡単なゲームをつくってみることにしたウホ。
もんだい
Pythonをつかって、ゴリラが森の入り口で合言葉を言い合うゲームを作りたいウホ。
絵とかを書いたり描画させるのは面倒だから、テキストだけで作っていきたいウホ。
合言葉をいいあって、もしあっていたらHappy Gorilla Endにすることが出来るウホ。
でも、もしまちがっていたら、もう一度聞き返すような処理をしたいウホ。
さらに、けっこうおしいところまでいっていたらほめて、まちがったあともヒントを教えられるようにしたいウホ。
どういうふうにコードすればいいウホ?
🦍🦍🦍🦍🦍🦍🦍🦍🦍🦍🦍
つくったもの
動作環境: Google colaboraoty (python3 notebook 2020/02/22)
さっそくゴリラの合言葉ゲーム「The Gorilla Fantasy」をつくってみたウホ!こまかいないようはさておき、このコードをコピペしてやってみてほしいウホ。
ちなみに、このゲームを攻略するためには、こことかこことかをみるといいウホ。でも、まるっきりネタバレにもなるから、じぶんで挑戦したいというゴリラはリンク先に飛ばない方がいいウホ。ただし何も見ずにだとそうとう難しくなるから、判断はまかせるウホ。
import time
key = 2
print('---The Gorilla Fantasy---')
time.sleep(2)
print('ゴリが歩いていると、森の入り口に門番がいたウホ。')
time.sleep(2)
print('その門番は、ゴリに向かってこう聞いたウホ。')
time.sleep(2)
print('「あいことばは?」')
time.sleep(2)
print('きゅうにいわれてもわからないウホ。どうすればいいウホ?')
time.sleep(2)
print('「しかたないウホ。ヒントをいうウホ。」')
time.sleep(2)
while key > 1:
print('「18」')
time.sleep(2)
print('「さあはやく答えるウホ!」')
time.sleep(2)
print('合言葉をこたえるウホ。->')
keyword = input()
print('---------------------------------------')
print('『'+keyword+'』だウホ!')
if keyword == 'ウホホウホ':
for i in range(0, 3):
print('.')
time.sleep(2)
print('「うむ、確かに18は『ゴリ進数』で表すと『ウホホウホ』になるウホ。」')
time.sleep(2)
print('「問題ないウホ!通るウホ。」')
time.sleep(2)
print('そういうと、門番のゴリラはゴリを通してくれたウホ。')
time.sleep(2)
print('よかったよかったウホ。')
time.sleep(2)
print('🦍🦍🦍🦍🦍🦍Happy Gorilla End🦍🦍🦍🦍🦍')
key = 0
elif 'ウホ' in keyword:
for i in range(0, 3):
print('.')
time.sleep(2)
print('「『ウホ』というものに着目しているのはいい感じウホ。」')
time.sleep(3)
print('「でも掟はやぶれないウホ。でなおしてくるウホ!」')
time.sleep(3)
print('ゴリラでなおし中')
for i in range(0, 3):
print('.')
time.sleep(2)
print('「またきたウホ?しかたのないやつウホ。」')
time.sleep(2)
print('「じゃあ大ヒントをあげるウホ。18という数をゴリたちは別の数でも表せるウホ。」')
time.sleep(7)
print('「これでわかるはずウホ。じゃあもういちど数字をいうウホ。」')
else:
for i in range(0, 3):
print('.')
time.sleep(2)
print('「論外ウホ!全然違うウホ!」')
time.sleep(3)
print('「でなおしてくるウホ!」')
time.sleep(3)
print('ゴリラでなおし中')
for i in range(0, 3):
print('.')
time.sleep(2)
print('「またきたウホ?しかたのないやつウホ。」')
time.sleep(2)
print('「じゃあ大ヒントをあげるウホ。18という数をゴリたちは別の数でも表せるウホ。」')
time.sleep(7)
print('「これでわかるはずウホ。じゃあもういちど数字をいうウホ。」')
ここから内容を書いていくウホ。ぜんぶ説明するのはめんどうだから、大事なところだけいうウホ。
まず、key = 2
では、あとあとにwhile key > 1
としている処理のために、keyが2であり続ける限りはwhileループを続けるようにしているウホ。
このあとに質問のコーナーになって、もし正解していたら、key = 0
としてループから外れるようにしているウホ。
あとはパッパパッパすすむのもなんかみづらいから、time.sleep(2)
をてきとうにはさんでいって、ちょっと読みやすいようにしているウホ。
あとの工夫はせいぜい、elif 'ウホ' in keyword:
くらいウホ。これは答えに結びつくような内容について近い答えがでていたら、ほめるための分岐ウホ。
あとは、もしこのゲームをできるだけなにも知らない状態でたのしみたいという稀有なゴリラがいたときために、これ以上はあんまりかかないことにするウホ。
こたえ: 上の通り
すごく簡単にだけど、ゴリラのテキストゲームを作ることができたウホ。こういうのはシンプルだけど、考えて想像する余地があるぶんなかなか面白いウホ。こういうゲームを少しずつつくっていって、いずれはゴリラのための学習ゲームもつくれたらゴリ的にはうれしいウホ!