第02話:気をつけろ!今度の風はなにか違うぞ!
前回、帽子を追いかけてみましたが、あまりにドラマ性がありませんでした。
いくら自動生成とは言え、もうちょっと起伏が欲しいものです。
しかし、少年はただ走るばかりでどうやらあまり能力がないようです。
時を止める能力とかあるともっとサクッと終わるのですが。
しかたがないので、風の方に演技をしてもらいましょう。
風というのは強弱が付くのが当たり前なので、まったく自然な発想です。
**********************************************
少女「また帽子がとばされちゃった!」
少年「また僕が取ってくるよ!」
少年は駆け出した。
少年は秒速2.5mで走っているが、風が秒速2mで吹いている。
少年は走り続けた。
帽子までまだ30メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ31.5メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ35.0メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ40.5メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ43.0メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ46.5メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ49.0メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ55.5メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ56.0メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ62.5メートルある。
穏やかな風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ61.0メートルある。
穏やかな風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ60.5メートルある。
穏やかな風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ58.0メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ60.5メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ66.0メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ66.5メートルある。
穏やかな風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ65.0メートルある。
穏やかな風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ63.5メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ70.0メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ72.5メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ73.0メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ77.5メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ83.0メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ85.5メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ91.0メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ92.5メートルある。
かなりの強風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ99.0メートルある。
それなりに強い風が帽子を運んでいく。
少年は走り続けた。
帽子までまだ99.5メートルある。
それなりに強い風が帽子を運んでいく。
少年は諦めて足を止めた。
少年がうなだれて少女のもとに戻ると、少女は冷ややかな目で少年を見た。
少女「あなたには失望したわ」
**********************************************
風を強くしたら、当然のごとく少年は追いつけなくなってしまいました。
君には失望したよ。
そして、当然のごとく、やはり単調です。
いくら風が変化しても少年はただ追いかけるだけです。
彼にももう少し芸をして欲しいものです。
今回も退屈だった文章を生成したプログラムは以下の通り。
#! ruby -E Windows-31J:utf-8
# coding: utf-8
#02話:気をつけろ!今度の風はなにか違うぞ!
#初期化
$d = 30 #帽子までの距離
$windspeed = 2 #風の速度
$speed = 2.5 #走る速度
#メソッド類
def boy_run
puts "少年は走り続けた。"
puts "帽子までまだ"+$d.to_s+"メートルある。"
puts
end
def nextstep
change_windspeed
$d = $d - $speed + $windspeed
end
def change_windspeed
$windspeed = rand(10).to_i
if $windspeed <= 2
puts "穏やかな風が帽子を運んでいく。"
puts
elsif $windspeed <= 5
puts "それなりに強い風が帽子を運んでいく。"
puts
else
puts "かなりの強風が帽子を運んでいく。"
puts
end
end
def print_condition
puts "少年は秒速"+$speed.to_s+"mで走っているが、風が秒速"+$windspeed.to_s+"mで吹いている。"
puts
end
#メインルーチン
puts "**********************************************"
puts
puts "少女「また帽子がとばされちゃった!」"
puts
puts "少年「また僕が取ってくるよ!」"
puts
puts "少年は駆け出した。"
puts
print_condition
while $d < 100 do
boy_run
nextstep
end
puts "少年は諦めて足を止めた。"
puts
puts "少年がうなだれて少女のもとに戻ると、少女は冷ややかな目で少年を見た。"
puts
puts "少女「あなたには失望したわ」"
puts
puts "**********************************************"