1 /* !!!! GENERATED FILE - DO NOT EDIT !!!!
2  * --------------------------------------
3  *
4  * This file is part of liblcf. Copyright (c) 2021 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_SAVESCREEN_H
13 #define LCF_RPG_SAVESCREEN_H
14 
15 // Headers
16 #include <stdint.h>
17 #include "lcf/context.h"
18 #include <ostream>
19 #include <type_traits>
20 
21 /**
22  * rpg::SaveScreen class.
23  */
24 namespace lcf {
25 namespace rpg {
26 	class SaveScreen {
27 	public:
28 		int32_t tint_finish_red = 100;
29 		int32_t tint_finish_green = 100;
30 		int32_t tint_finish_blue = 100;
31 		int32_t tint_finish_sat = 100;
32 		double tint_current_red = 100.0;
33 		double tint_current_green = 100.0;
34 		double tint_current_blue = 100.0;
35 		double tint_current_sat = 100.0;
36 		int32_t tint_time_left = 0;
37 		bool flash_continuous = false;
38 		int32_t flash_red = 0;
39 		int32_t flash_green = 0;
40 		int32_t flash_blue = 0;
41 		double flash_current_level = 0.0;
42 		int32_t flash_time_left = 0;
43 		bool shake_continuous = false;
44 		int32_t shake_strength = 0;
45 		int32_t shake_speed = 0;
46 		int32_t shake_position = 0;
47 		int32_t shake_position_y = 0;
48 		int32_t shake_time_left = 0;
49 		int32_t pan_x = 0;
50 		int32_t pan_y = 0;
51 		int32_t battleanim_id = 0;
52 		int32_t battleanim_target = 0;
53 		int32_t battleanim_frame = 0;
54 		bool battleanim_active = false;
55 		bool battleanim_global = false;
56 		int32_t weather = 0;
57 		int32_t weather_strength = 0;
58 	};
59 
60 	inline bool operator==(const SaveScreen& l, const SaveScreen& r) {
61 		return l.tint_finish_red == r.tint_finish_red
62 		&& l.tint_finish_green == r.tint_finish_green
63 		&& l.tint_finish_blue == r.tint_finish_blue
64 		&& l.tint_finish_sat == r.tint_finish_sat
65 		&& l.tint_current_red == r.tint_current_red
66 		&& l.tint_current_green == r.tint_current_green
67 		&& l.tint_current_blue == r.tint_current_blue
68 		&& l.tint_current_sat == r.tint_current_sat
69 		&& l.tint_time_left == r.tint_time_left
70 		&& l.flash_continuous == r.flash_continuous
71 		&& l.flash_red == r.flash_red
72 		&& l.flash_green == r.flash_green
73 		&& l.flash_blue == r.flash_blue
74 		&& l.flash_current_level == r.flash_current_level
75 		&& l.flash_time_left == r.flash_time_left
76 		&& l.shake_continuous == r.shake_continuous
77 		&& l.shake_strength == r.shake_strength
78 		&& l.shake_speed == r.shake_speed
79 		&& l.shake_position == r.shake_position
80 		&& l.shake_position_y == r.shake_position_y
81 		&& l.shake_time_left == r.shake_time_left
82 		&& l.pan_x == r.pan_x
83 		&& l.pan_y == r.pan_y
84 		&& l.battleanim_id == r.battleanim_id
85 		&& l.battleanim_target == r.battleanim_target
86 		&& l.battleanim_frame == r.battleanim_frame
87 		&& l.battleanim_active == r.battleanim_active
88 		&& l.battleanim_global == r.battleanim_global
89 		&& l.weather == r.weather
90 		&& l.weather_strength == r.weather_strength;
91 	}
92 
93 	inline bool operator!=(const SaveScreen& l, const SaveScreen& r) {
94 		return !(l == r);
95 	}
96 
97 	std::ostream& operator<<(std::ostream& os, const SaveScreen& obj);
98 
99 	template <typename F, typename ParentCtx = Context<void,void>>
100 	void ForEachString(SaveScreen& obj, const F& f, const ParentCtx* parent_ctx = nullptr) {
101 		(void)obj;
102 		(void)f;
103 		(void)parent_ctx;
104 	}
105 
106 } // namespace rpg
107 } // namespace lcf
108 
109 #endif
110