mirror of
https://github.com/Faraphel/Atlas-Install.git
synced 2025-07-03 03:08:29 +02:00
implemented MKWColor for easier naming of BMG color
This commit is contained in:
parent
9a97453a20
commit
aa6eeb2e49
1 changed files with 40 additions and 21 deletions
|
@ -2,25 +2,44 @@ Tag = str
|
||||||
Slot = str
|
Slot = str
|
||||||
|
|
||||||
|
|
||||||
Color = {
|
class ColorNotFound(Exception):
|
||||||
"yor7": 0xF5090B, # apple red
|
def __init__(self, color_data: any):
|
||||||
"yor6": 0xE82C09, # dark red
|
super().__init__(f'Can\'t find color "{color_data}"')
|
||||||
"yor5": 0xE65118, # dark orange (flame)
|
|
||||||
"yor4": 0xFF760E, # orange (pumpkin)
|
|
||||||
"yor3": 0xFFA61F, # light orange (bright yellow)
|
class MKWColor:
|
||||||
"yor2": 0xFEBC1F, # yellow (ripe mango)
|
"""
|
||||||
"yor1": 0xFFE71F, # light yellow
|
Represent a color that can be used inside MKW files
|
||||||
"yor0": 0xFFFF22, # neon yellow
|
"""
|
||||||
"blue2": 0x1170EC, # dark blue
|
|
||||||
"blue1": 0x75B5F6, # azure
|
all_colors: list[dict] = [
|
||||||
"green": 0x0EB00A, # green
|
{"bmg": "yor7", "hex": 0xF5090B, "name": "apple red"},
|
||||||
"yellow": 0xFFFD1E, # neon yellow 2
|
{"bmg": "yor6", "hex": 0xE82C09, "name": "dark red"},
|
||||||
"red4": 0xEE0C10, # vivid red
|
{"bmg": "yor5", "hex": 0xE65118, "name": "dark orange"}, # flame
|
||||||
"red3": 0xFF0308, # red
|
{"bmg": "yor4", "hex": 0xFF760E, "name": "orange"}, # pumpkin
|
||||||
"red2": 0xF14A4E, # light red
|
{"bmg": "yor3", "hex": 0xFFA61F, "name": "light orange"}, # bright yellow
|
||||||
"red1": 0xE46C74, # pink
|
{"bmg": "yor2", "hex": 0xFEBC1F, "name": "yellow"}, # ripe mango
|
||||||
"white": 0xFFFFFF, # white
|
{"bmg": "yor1", "hex": 0xFFE71F, "name": "light yellow"},
|
||||||
"clear": 0x000000, # clear
|
{"bmg": "yor0", "hex": 0xFFFF22, "name": "neon yellow"},
|
||||||
"off": 0x998C86 # off
|
{"bmg": "blue2", "hex": 0x1170EC, "name": "dark blue"},
|
||||||
}
|
{"bmg": "blue1", "hex": 0x75B5F6, "name": "azure"},
|
||||||
|
{"bmg": "green", "hex": 0x0EB00A, "name": "green"},
|
||||||
|
{"bmg": "yellow", "hex": 0xFFFD1E, "name": "neon yellow 2"},
|
||||||
|
{"bmg": "red4", "hex": 0xEE0C10, "name": "vivid red"},
|
||||||
|
{"bmg": "red3", "hex": 0xFF0308, "name": "red"},
|
||||||
|
{"bmg": "red2", "hex": 0xF14A4E, "name": "light red"},
|
||||||
|
{"bmg": "red1", "hex": 0xE46C74, "name": "pink"},
|
||||||
|
{"bmg": "white", "hex": 0xFFFFFF, "name": "white"},
|
||||||
|
{"bmg": "clear", "hex": 0x000000, "name": "clear"},
|
||||||
|
{"bmg": "off", "hex": 0x998C86, "name": "off"},
|
||||||
|
]
|
||||||
|
|
||||||
|
__slots__ = ("bmg", "hex", "name")
|
||||||
|
|
||||||
|
def __init__(self, color_data: any, color_key: str = "name"):
|
||||||
|
colors = list(filter(lambda color: color[color_key] == color_data, self.all_colors))
|
||||||
|
if len(colors) == 0: raise ColorNotFound(color_data)
|
||||||
|
|
||||||
|
for key, value in colors[0].items():
|
||||||
|
setattr(self, key, value)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue