番外編:ドラ〇エ風RPGをつくってみる(STEP 3)

STEP 3「にげる」を追加しよう

「0」を入力したらバトルから逃げる処理を追加します。
これは ifelse if の出番です。

💡 ヒント
✅ 正解例コード(main関数のみ)
int main() {
    int command;

    printf("=== バトルスタート ===\n");

    while (1) {
        showStatus();
        showEnemy();

        printf("\n0: にげる\n");                       // ★ 追加
        printf("1: たたかう\n");
        printf("コマンドを入力してください: ");
        scanf("%d", &command);
        getchar();

        if (command == 1) {
            battle();

            if (enemyParam[CHAR_HP] <= 0) {
                break;
            }
        }
        else if (command == 0) {                       // ★ 追加:にげる処理
            printf("\n%sはにげだした!\n", playerName);
            break;
        }

        waitEnter();
    }

    printf("=== バトル終了 ===\n");
    return 0;
}
▶ やってみよう
実行して「0」を入力 → にげるメッセージが出てバトルが終わることを確認。
「1」で攻撃 → 倒すまで戦えることも確認。