liblcf
rpg_enemyaction.h
Go to the documentation of this file.
1 /* !!!! GENERATED FILE - DO NOT EDIT !!!!
2  * --------------------------------------
3  *
4  * This file is part of liblcf. Copyright (c) 2020 liblcf authors.
5  * https://github.com/EasyRPG/liblcf - https://easyrpg.org
6  *
7  * liblcf is Free/Libre Open Source Software, released under the MIT License.
8  * For the full copyright and license information, please view the COPYING
9  * file that was distributed with this source code.
10  */
11 
12 #ifndef LCF_RPG_ENEMYACTION_H
13 #define LCF_RPG_ENEMYACTION_H
14 
15 // Headers
16 #include <stdint.h>
17 #include "enum_tags.h"
18 
22 namespace RPG {
23  class EnemyAction {
24  public:
25  enum Kind {
29  };
30  static constexpr auto kKindTags = makeEnumTags<Kind>(
31  "basic",
32  "skill",
33  "transformation"
34  );
35  enum Basic {
43  Basic_nothing = 7
44  };
45  static constexpr auto kBasicTags = makeEnumTags<Basic>(
46  "attack",
47  "dual_attack",
48  "defense",
49  "observe",
50  "charge",
51  "autodestruction",
52  "escape",
53  "nothing"
54  );
64  };
65  static constexpr auto kConditionTypeTags = makeEnumTags<ConditionType>(
66  "always",
67  "switch",
68  "turn",
69  "actors",
70  "hp",
71  "sp",
72  "party_lvl",
73  "party_fatigue"
74  );
75 
76  int ID = 0;
77  int32_t kind = 0;
78  int32_t basic = 1;
79  int32_t skill_id = 1;
80  int32_t enemy_id = 1;
81  int32_t condition_type = 0;
82  int32_t condition_param1 = 0;
83  int32_t condition_param2 = 0;
84  int32_t switch_id = 1;
85  bool switch_on = false;
86  int32_t switch_on_id = 1;
87  bool switch_off = false;
88  int32_t switch_off_id = 1;
89  int32_t rating = 50;
90  };
91 
92  inline bool operator==(const EnemyAction& l, const EnemyAction& r) {
93  return l.kind == r.kind
94  && l.basic == r.basic
95  && l.skill_id == r.skill_id
96  && l.enemy_id == r.enemy_id
100  && l.switch_id == r.switch_id
101  && l.switch_on == r.switch_on
102  && l.switch_on_id == r.switch_on_id
103  && l.switch_off == r.switch_off
104  && l.switch_off_id == r.switch_off_id
105  && l.rating == r.rating;
106  }
107 
108  inline bool operator!=(const EnemyAction& l, const EnemyAction& r) {
109  return !(l == r);
110  }
111 }
112 
113 #endif
RPG::EnemyAction::switch_on_id
int32_t switch_on_id
Definition: rpg_enemyaction.h:86
RPG::EnemyAction::ConditionType_sp
@ ConditionType_sp
Definition: rpg_enemyaction.h:61
RPG::operator==
bool operator==(const Actor &l, const Actor &r)
Definition: rpg_actor.h:64
RPG::EnemyAction::ConditionType
ConditionType
Definition: rpg_enemyaction.h:55
RPG::EnemyAction::ConditionType_hp
@ ConditionType_hp
Definition: rpg_enemyaction.h:60
RPG::EnemyAction::switch_off_id
int32_t switch_off_id
Definition: rpg_enemyaction.h:88
RPG::EnemyAction::ConditionType_turn
@ ConditionType_turn
Definition: rpg_enemyaction.h:58
RPG::EnemyAction::Basic_autodestruction
@ Basic_autodestruction
Definition: rpg_enemyaction.h:41
RPG::EnemyAction::ConditionType_actors
@ ConditionType_actors
Definition: rpg_enemyaction.h:59
RPG
Definition: rpg_actor.h:26
RPG::EnemyAction::Kind_skill
@ Kind_skill
Definition: rpg_enemyaction.h:27
RPG::EnemyAction::Kind_basic
@ Kind_basic
Definition: rpg_enemyaction.h:26
RPG::EnemyAction::Basic_nothing
@ Basic_nothing
Definition: rpg_enemyaction.h:43
RPG::EnemyAction::switch_id
int32_t switch_id
Definition: rpg_enemyaction.h:84
RPG::EnemyAction::Basic_attack
@ Basic_attack
Definition: rpg_enemyaction.h:36
RPG::EnemyAction::Kind
Kind
Definition: rpg_enemyaction.h:25
RPG::EnemyAction::basic
int32_t basic
Definition: rpg_enemyaction.h:78
RPG::EnemyAction::ConditionType_always
@ ConditionType_always
Definition: rpg_enemyaction.h:56
RPG::EnemyAction::skill_id
int32_t skill_id
Definition: rpg_enemyaction.h:79
RPG::EnemyAction::Basic
Basic
Definition: rpg_enemyaction.h:35
RPG::EnemyAction::Basic_defense
@ Basic_defense
Definition: rpg_enemyaction.h:38
RPG::EnemyAction::ConditionType_party_lvl
@ ConditionType_party_lvl
Definition: rpg_enemyaction.h:62
RPG::EnemyAction::Basic_dual_attack
@ Basic_dual_attack
Definition: rpg_enemyaction.h:37
RPG::EnemyAction::kKindTags
static constexpr auto kKindTags
Definition: rpg_enemyaction.h:30
RPG::operator!=
bool operator!=(const Actor &l, const Actor &r)
Definition: rpg_actor.h:98
RPG::EnemyAction::ID
int ID
Definition: rpg_enemyaction.h:76
RPG::EnemyAction::rating
int32_t rating
Definition: rpg_enemyaction.h:89
RPG::EnemyAction
Definition: rpg_enemyaction.h:23
RPG::EnemyAction::kind
int32_t kind
Definition: rpg_enemyaction.h:77
RPG::EnemyAction::switch_on
bool switch_on
Definition: rpg_enemyaction.h:85
RPG::EnemyAction::Kind_transformation
@ Kind_transformation
Definition: rpg_enemyaction.h:28
RPG::EnemyAction::enemy_id
int32_t enemy_id
Definition: rpg_enemyaction.h:80
RPG::EnemyAction::switch_off
bool switch_off
Definition: rpg_enemyaction.h:87
RPG::EnemyAction::Basic_escape
@ Basic_escape
Definition: rpg_enemyaction.h:42
RPG::EnemyAction::ConditionType_switch
@ ConditionType_switch
Definition: rpg_enemyaction.h:57
RPG::EnemyAction::condition_type
int32_t condition_type
Definition: rpg_enemyaction.h:81
RPG::EnemyAction::condition_param2
int32_t condition_param2
Definition: rpg_enemyaction.h:83
RPG::EnemyAction::condition_param1
int32_t condition_param1
Definition: rpg_enemyaction.h:82
RPG::EnemyAction::Basic_charge
@ Basic_charge
Definition: rpg_enemyaction.h:40
RPG::EnemyAction::kConditionTypeTags
static constexpr auto kConditionTypeTags
Definition: rpg_enemyaction.h:65
RPG::EnemyAction::ConditionType_party_fatigue
@ ConditionType_party_fatigue
Definition: rpg_enemyaction.h:63
RPG::EnemyAction::Basic_observe
@ Basic_observe
Definition: rpg_enemyaction.h:39
enum_tags.h
RPG::EnemyAction::kBasicTags
static constexpr auto kBasicTags
Definition: rpg_enemyaction.h:45