概要

私は競馬のゲームを作りました。
実際と異なる点が多くありますが、プレイした時の分かりやすさを重視しているため見逃してください。

解説

ゲームの流れとしては、
1、馬の紹介
2、馬を選ぶ
3,レース開始、実況
4,結果
となっています。

実況パートで同じ馬が連続で出ないようにしました。
また、人気順で優勝のしやすさが変わるようにしようか迷いましたが、
実際の競馬では人気な馬は他の馬に警戒されてしまい逆に勝ちにくくなるので、反映させない事にしました。

仮に入れるとしたら、
「import numpy as np」
を先頭に置いた上で

  1. uma=[1,2,3,4,5]
  2.     weights=[0.3,0.3,0.2,0.1,0.1]
  3.     kekka=np.random.choice(uma,p=weights)
を44行目に置き換えたと思います。

そんな競馬のゲームのソースコードは下のモノです。:)

コード

  1. import random
  2. import time
  3. def main():
  4.     print("競馬場へようこそ!")
  5.     time.sleep(1)
  6.     print("ここは競馬場。さっそく予測を立ててみましょう!")
  7.     time.sleep(1)
  8.     print("一番人気、エクスビジネスー")
  9.     time.sleep(0.7)
  10.     print("二番人気、ジュギョネムイ")
  11.     time.sleep(0.7)
  12.     print("三番人気、オヤツマダカー")
  13.     time.sleep(0.7)
  14.     print("四番人気、アイワントタンイ")
  15.     time.sleep(0.7)
  16.     print("五番人気、カダイオワラン")
  17.     time.sleep(0.7)
  18.     gess=int(input("どの馬が優勝すると思いますか?(人気番号の半角数字で教えてください)"))
  19.     print("レースが始まりました。")
  20.     time.sleep(1)
  21.     keika=random.randint(1,6)
  22.     print("さあ、真っ先に飛び出したのは",str(keika),"番人気の馬です。")
  23.     time.sleep(2)
  24.     keikaa=random.randint(1,6)
  25.     while keikaa == keika:
  26.         keikaa=random.randint(1,6)
  27.     print("おおっと!ここで",str(keikaa),"番の馬が前に躍り出た!")
  28.     time.sleep(2)
  29.     saigo=random.randint(1,6)
  30.     saigoo=random.randint(1,6)
  31.     while saigoo == saigo:
  32.         saigoo=random.randint(1,6)
  33.     print("最終コーナー、先頭で競り合っているのは",str(saigo),"番、",str(saigoo),"番の二頭です!")
  34.     time.sleep(2)
  35.     print("さあ、最終的なレースの結果は……")
  36.     time.sleep(3)
  37.     kekka=random.randint(1,6)
  38.     print("確定しました!",str(kekka),"番人気の馬の優勝です!!")
  39.     time.sleep(2)
  40.     print("あなたが予想したのは",gess,"番人気の馬です。")
  41.     time.sleep(2)
  42.     if gess == kekka:
  43.         print("おめでとう御座います!")
  44.     else:
  45.         print("残念でした……")
  46. main()