他の方がRPGの戦闘シーンをプログラミングしているのを見て、いい題材だと思って真似してみました。
p_life = 100
step = 0
encounter = 0
#戦闘シーンをメソッド化
def battle(player)
puts "敵が現れた"
sleep (1)
e_life = rand(10..50)
puts "敵の体力は#{e_life}です"
sleep (1)
while true
p_atack = rand (15..20)
e_atack = rand (1..20)
e_life -= p_atack
player -= e_atack
puts "あなたの攻撃!"
puts "#{p_atack}のダメージ"
sleep(1)
if e_life < 0
puts "勝利!!"
sleep (1)
break
end
puts "敵の体力は残り#{e_life}です"
sleep (1)
puts "敵の攻撃"
puts "#{e_atack}のダメージ"
if player < 0
puts "あなたは死にました"
sleep (1)
break
end
sleep (1)
end
return player
end
while step < 8
encounter = rand(0..2)
puts "・・・"
sleep (1)
if encounter == 2
p_life = battle(p_life)
if p_life < 0
break
end
puts "あなたの残り体力は#{p_life}です"
end
step += 1
end
覚えた事を全力で駆使して作成してみました。
とりあえず、戦闘シーンをメソッド化してみて、歩いていたらランダムに敵と遭遇して遭遇したら戦闘が始まるといった感じにしてみました。
説明不足感がすごいですけど、何かご指摘や改善案がありましたら教えて頂けると助かります。