-
Notifications
You must be signed in to change notification settings - Fork 46
/
GlowMode.hpp
38 lines (31 loc) · 1.17 KB
/
GlowMode.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#pragma once
#include <iostream>
struct GlowMode {
std::byte bodyStyle, borderStyle, borderWidth, transparency;
GlowMode() {}
GlowMode(int x_val, int y_val, int z_val, int transparency_val) :
bodyStyle(static_cast<std::byte>(x_val)),
borderStyle(static_cast<std::byte>(y_val)),
borderWidth(static_cast<std::byte>(z_val)),
transparency(static_cast<std::byte>(transparency_val)) {}
GlowMode(std::byte x_val, std::byte y_val, std::byte z_val, std::byte transparency_val) :
bodyStyle(x_val),
borderStyle(y_val),
borderWidth(z_val),
transparency(transparency_val) {}
bool IsZeroVector() const {
return bodyStyle == std::byte(0)
&& borderStyle == std::byte(0)
&& borderWidth == std::byte(0)
&& borderWidth == std::byte(0);
}
bool operator==(const GlowMode& other) const {
return bodyStyle == other.bodyStyle
&& borderStyle == other.borderStyle
&& borderWidth == other.borderWidth
&& transparency == other.transparency;
}
bool operator!=(const GlowMode& other) const {
return !(*this == other);
}
};