liblcf
Loading...
Searching...
No Matches
rpg_eventpage.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_EVENTPAGE_H
13#define LCF_RPG_EVENTPAGE_H
14
15// Headers
16#include <stdint.h>
17#include <string>
18#include <vector>
19#include "enum_tags.h"
20#include "rpg_eventcommand.h"
22#include "rpg_moveroute.h"
23
27namespace RPG {
28 class EventPage {
29 public:
30 enum Direction {
35 };
36 static constexpr auto kDirectionTags = makeEnumTags<Direction>(
37 "up",
38 "right",
39 "down",
40 "left"
41 );
42 enum Frame {
47 };
48 static constexpr auto kFrameTags = makeEnumTags<Frame>(
49 "left",
50 "middle",
51 "right",
52 "middle2"
53 );
54 enum MoveType {
62 };
63 static constexpr auto kMoveTypeTags = makeEnumTags<MoveType>(
64 "stationary",
65 "random",
66 "vertical",
67 "horizontal",
68 "toward",
69 "away",
70 "custom"
71 );
72 enum Trigger {
78 };
79 static constexpr auto kTriggerTags = makeEnumTags<Trigger>(
80 "action",
81 "touched",
82 "collision",
83 "auto_start",
84 "parallel"
85 );
86 enum Layers {
89 Layers_above = 2
90 };
91 static constexpr auto kLayersTags = makeEnumTags<Layers>(
92 "below",
93 "same",
94 "above"
95 );
96 enum AnimType {
104 };
105 static constexpr auto kAnimTypeTags = makeEnumTags<AnimType>(
106 "non_continuous",
107 "continuous",
108 "fixed_non_continuous",
109 "fixed_continuous",
110 "fixed_graphic",
111 "spin",
112 "step_frame_fix"
113 );
121 };
122
123 int ID = 0;
125 std::string character_name;
126 int32_t character_index = 0;
128 int32_t character_pattern = 1;
129 bool translucent = false;
130 int32_t move_type = 1;
131 int32_t move_frequency = 3;
132 int32_t trigger = 0;
133 int32_t layer = 0;
134 bool overlap_forbidden = false;
135 int32_t animation_type = 0;
136 int32_t move_speed = 3;
138 std::vector<EventCommand> event_commands;
139 };
140
141 inline bool operator==(const EventPage& l, const EventPage& r) {
142 return l.condition == r.condition
147 && l.translucent == r.translucent
148 && l.move_type == r.move_type
150 && l.trigger == r.trigger
151 && l.layer == r.layer
154 && l.move_speed == r.move_speed
155 && l.move_route == r.move_route
157 }
158
159 inline bool operator!=(const EventPage& l, const EventPage& r) {
160 return !(l == r);
161 }
162}
163
164#endif
static constexpr auto kLayersTags
Definition: rpg_eventpage.h:91
static constexpr auto kMoveTypeTags
Definition: rpg_eventpage.h:63
static constexpr auto kDirectionTags
Definition: rpg_eventpage.h:36
int32_t character_pattern
MoveRoute move_route
@ AnimType_fixed_non_continuous
Definition: rpg_eventpage.h:99
int32_t character_index
int32_t move_frequency
int32_t animation_type
static constexpr auto kTriggerTags
Definition: rpg_eventpage.h:79
static constexpr auto kFrameTags
Definition: rpg_eventpage.h:48
EventPageCondition condition
int32_t character_direction
std::vector< EventCommand > event_commands
int32_t move_speed
std::string character_name
static constexpr auto kAnimTypeTags
Definition: rpg_actor.h:26
bool operator==(const Actor &l, const Actor &r)
Definition: rpg_actor.h:64
bool operator!=(const Actor &l, const Actor &r)
Definition: rpg_actor.h:98