演習課題「フォームで、RPGの戦闘シーンを作る」
右の環境には、SinatraでRPGの戦闘シーンのプログラムが作成してありますが、敵の名前が表示されません。battle.rbを修正して、@enemies変数に下記の値を代入して、敵の名前を表示するように修正してください。
 "スライム", "モンスター", "ドラゴン"
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
※ 採点時は、サーバーを起動し、問題文に関するページにアクセスできる状態にしてください。
#05:具体例:フォームで、RPGの戦闘シーンの作ろう
ここでは、Sinatraによるフォームの具体例として、RPGの戦闘シーンを作ります。先ほどのチャプターで作ったフォームをベースにして、ドロップダウンメニューでプレイヤーを選択できるようにしましょう。
# フォームで、RPGの戦闘シーンを作る
require 'sinatra'
require 'sinatra/reloader'
require 'erb'
before do
    @players = ["勇者", "戦士", "魔法使い", "忍者"]
end
get '/' do
    @message = "新たなモンスターが現れた!"
    erb :battle
end
post '/' do
    @name = params[:name]
    @message = "#{@name}は、モンスターと戦った!"
    erb :battle
end
<h1>RPGの戦闘フォーム</h1>
<p><%= @message %></p>
<form action="/" method="post">
    <label for="name">プレイヤー</label>
    <select name="name">
        <% @players.each do |player| %>
            <option value="<%= player %>"><%= player %></option>
            <% end %>
    </select>
    <p></p>
    <button type="submit">たたかう</button>
</form>
<form action="/" method="get">
    <input type="submit" value="にげる!">
</form>