現在の見出し:1.2節:敵キャラクターの作成
見出し一覧
- 1.2節:敵キャラクターの作成
- - 変数代入による敵データ定義機能の実装
- - 算術演算子による敵ステータス自動計算機能の実装
【PR】『Python』を学べる企業・個人向けのプログラミングコース
変数代入による敵データ定義機能の実装
前節(第1章1.1節)で作成したプレイヤー情報システム情報システムはテクノロジーと人間の相互作用を統合したシステムで、業務プロセスの効率化や意思決定支援に役立ちます。を基盤として、RPGに必要な敵キャラクターの基本データを定義する機能を実装します。敵キャラクターは固定的な名前と基本ステータスを持つ設計とし、後の戦闘システムで使用する敵データ管理の基盤を構築します。
敵の名前は文字列文字列は文字の並びを表現するデータ型で、テキストデータを扱うための基本的な構造として広く使用されています。変数で「ゴブリン」として設定し、敵の基本HP・攻撃力・防御力をそれぞれ整数値で定義します。敵の現在HPは最大HPと同じ値で初期化することで戦闘開始時の状態を管理し、後の戦闘処理でダメージ計算に使用される構造となります。
このシステムでは、プレイヤー情報と敵情報を同時に表示することで、戦闘前の状況確認が可能になります。変数代入による敵データ定義により、戦闘システムの基盤となる両陣営のキャラクター情報が完全に整備されます。
# コード
print("=== RPGゲーム開始 ===")
player_name = input("プレイヤー名を入力してください: ")
player_hp = int(input("初期HPを入力してください: "))
player_attack = int(input("攻撃力を入力してください: "))
# 初期データ管理変数の設定
max_player_hp = player_hp
player_defense = 5
battle_count = 0
game_active = True
# 敵データ定義
enemy_name = "ゴブリン"
enemy_max_hp = 80
enemy_hp = enemy_max_hp
enemy_attack = 20
enemy_defense = 3
print(f"\n【プレイヤー情報】")
print(f"名前: {player_name}")
print(f"HP: {player_hp}/{max_player_hp}")
print(f"攻撃力: {player_attack}")
print(f"防御力: {player_defense}")
print("プレイヤー作成完了!")
print(f"\n【敵情報】")
print(f"名前: {enemy_name}")
print(f"HP: {enemy_hp}/{enemy_max_hp}")
print(f"攻撃力: {enemy_attack}")
print(f"防御力: {enemy_defense}")
print("敵データ設定完了!")
print(f"\n【システム情報】")
print(f"戦闘回数: {battle_count}")
print(f"ゲーム状態: {'進行中' if game_active else '終了'}")
行数 | 種別 | コード | 解説 |
---|---|---|---|
12行目 | 新規 | enemy_name = "ゴブリン" |
敵キャラクターの名前を文字列変数で定義 |
13行目 | 新規 | enemy_max_hp = 80 |
敵の最大HPを80で設定 |
14行目 | 新規 | enemy_hp = enemy_max_hp |
敵の現在HPを最大HPと同じ値で初期化 |
15行目 | 新規 | enemy_attack = 20 |
敵の攻撃力を20で設定 |
16行目 | 新規 | enemy_defense = 3 |
敵の防御力を3で設定 |
24行目 | 新規 | print(f"\n【敵情報】") |
敵情報表示セクションの見出しを出力 |
25行目 | 新規 | print(f"名前: {enemy_name}") |
f-stringで敵の名前を表示 |
26行目 | 新規 | print(f"HP: {enemy_hp}/{enemy_max_hp}") |
f-stringで敵の現在HP/最大HPを表示 |
27行目 | 新規 | print(f"攻撃力: {enemy_attack}") |
f-stringで敵の攻撃力を表示 |
28行目 | 新規 | print(f"防御力: {enemy_defense}") |
f-stringで敵の防御力を表示 |
29行目 | 新規 | print("敵データ設定完了!") |
敵データ設定完了メッセージを表示 |