演習課題「RPGの攻撃シーン」
右のコードには、RPGの攻撃シーンを表示するプログラムで、$teamのメンバーが順番にattack関数を呼び出します。さらに、$teamのメンバーが攻撃した後に、敵の体力($enemy_hp)を表示するようになっています。敵の最初の体力は標準入力によって入力されます。
ここに、$teamのメンバーが攻撃した分だけ、敵の体力をマイナスするコードを追加してください。
$teamのメンバーの攻撃力は、あらかじめ$teamに定義されています。
敵の体力は、450以上とします。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
勇者はスライムを攻撃した
敵のHPは残り530です
戦士はスライムを攻撃した
敵のHPは残り380です
魔法使いはスライムを攻撃した
敵のHPは残り280です
#05:RPGの攻撃シーンを作ろう
ここでは、関数を使った具体的な例として、RPGの攻撃シーンを表示するプログラムを作成してみます。
<?php
// RPGの攻撃シーンを作ろう
$enemies = array("スライム", "モンスター", "ドラゴン");
foreach ($enemies as $enemy) {
// echo "勇者は" . $enemy . "を攻撃した\n";
attack($enemy);
}
function attack($target) {
echo "勇者は" . $target . "を攻撃した\n";
$damage = rand(1, 20);
if ($damage < 15) {
echo $target . "に" . $damage . "のダメージを与えた!\n";
} else {
echo "クリティカルヒット!" . $target . "に100のダメージを与えた!!\n";
}
}
?>