Add: [CN] horror coalition assets
BIN
assets/cn/coalition/HORROR_COALITION_CHECK.png
Normal file
|
After Width: | Height: | Size: 5.8 KiB |
BIN
assets/cn/coalition/HORROR_EASY.png
Normal file
|
After Width: | Height: | Size: 5.6 KiB |
BIN
assets/cn/coalition/HORROR_EX.png
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
BIN
assets/cn/coalition/HORROR_FLEET_PREPARATION.png
Normal file
|
After Width: | Height: | Size: 9.4 KiB |
BIN
assets/cn/coalition/HORROR_HARD.png
Normal file
|
After Width: | Height: | Size: 5.7 KiB |
BIN
assets/cn/coalition/HORROR_MODE_BATTLE.png
Normal file
|
After Width: | Height: | Size: 6.8 KiB |
BIN
assets/cn/coalition/HORROR_MODE_STORY.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |
BIN
assets/cn/coalition/HORROR_NORMAL.png
Normal file
|
After Width: | Height: | Size: 5.8 KiB |
BIN
assets/cn/coalition/HORROR_PT_OCR.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
assets/cn/coalition/HORROR_SP.png
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
BIN
assets/cn/coalition/HORROR_SWITCH_MULTI.png
Normal file
|
After Width: | Height: | Size: 9.5 KiB |
BIN
assets/cn/coalition/HORROR_SWITCH_SINGLE.png
Normal file
|
After Width: | Height: | Size: 9.7 KiB |
@@ -60,6 +60,18 @@ FROSTFALL_SWITCH_SINGLE = Button(area={'cn': (968, 449, 1098, 478), 'en': (968,
|
||||
FROSTFALL_TC1 = Button(area={'cn': (304, 320, 330, 332), 'en': (304, 320, 330, 332), 'jp': (304, 320, 330, 332), 'tw': (304, 320, 330, 332)}, color={'cn': (204, 162, 254), 'en': (204, 162, 254), 'jp': (204, 162, 254), 'tw': (188, 137, 254)}, button={'cn': (304, 320, 330, 332), 'en': (304, 320, 330, 332), 'jp': (304, 320, 330, 332), 'tw': (304, 320, 330, 332)}, file={'cn': './assets/cn/coalition/FROSTFALL_TC1.png', 'en': './assets/en/coalition/FROSTFALL_TC1.png', 'jp': './assets/jp/coalition/FROSTFALL_TC1.png', 'tw': './assets/tw/coalition/FROSTFALL_TC1.png'})
|
||||
FROSTFALL_TC2 = Button(area={'cn': (631, 160, 658, 173), 'en': (631, 160, 658, 173), 'jp': (631, 160, 658, 173), 'tw': (631, 160, 658, 173)}, color={'cn': (186, 136, 252), 'en': (186, 136, 252), 'jp': (186, 136, 252), 'tw': (186, 136, 252)}, button={'cn': (631, 160, 658, 173), 'en': (631, 160, 658, 173), 'jp': (631, 160, 658, 173), 'tw': (631, 160, 658, 173)}, file={'cn': './assets/cn/coalition/FROSTFALL_TC2.png', 'en': './assets/en/coalition/FROSTFALL_TC2.png', 'jp': './assets/jp/coalition/FROSTFALL_TC2.png', 'tw': './assets/tw/coalition/FROSTFALL_TC2.png'})
|
||||
FROSTFALL_TC3 = Button(area={'cn': (810, 362, 835, 373), 'en': (810, 362, 835, 373), 'jp': (810, 362, 835, 373), 'tw': (810, 362, 835, 373)}, color={'cn': (197, 153, 255), 'en': (197, 153, 255), 'jp': (197, 153, 255), 'tw': (197, 153, 255)}, button={'cn': (810, 362, 835, 373), 'en': (810, 362, 835, 373), 'jp': (810, 362, 835, 373), 'tw': (810, 362, 835, 373)}, file={'cn': './assets/cn/coalition/FROSTFALL_TC3.png', 'en': './assets/en/coalition/FROSTFALL_TC3.png', 'jp': './assets/jp/coalition/FROSTFALL_TC3.png', 'tw': './assets/tw/coalition/FROSTFALL_TC3.png'})
|
||||
HORROR_COALITION_CHECK = Button(area={'cn': (204, 49, 250, 70), 'en': (204, 49, 250, 70), 'jp': (204, 49, 250, 70), 'tw': (204, 49, 250, 70)}, color={'cn': (142, 142, 164), 'en': (142, 142, 164), 'jp': (142, 142, 164), 'tw': (142, 142, 164)}, button={'cn': (204, 49, 250, 70), 'en': (204, 49, 250, 70), 'jp': (204, 49, 250, 70), 'tw': (204, 49, 250, 70)}, file={'cn': './assets/cn/coalition/HORROR_COALITION_CHECK.png', 'en': './assets/cn/coalition/HORROR_COALITION_CHECK.png', 'jp': './assets/cn/coalition/HORROR_COALITION_CHECK.png', 'tw': './assets/cn/coalition/HORROR_COALITION_CHECK.png'})
|
||||
HORROR_EASY = Button(area={'cn': (863, 425, 890, 464), 'en': (863, 425, 890, 464), 'jp': (863, 425, 890, 464), 'tw': (863, 425, 890, 464)}, color={'cn': (76, 76, 96), 'en': (76, 76, 96), 'jp': (76, 76, 96), 'tw': (76, 76, 96)}, button={'cn': (863, 425, 890, 464), 'en': (863, 425, 890, 464), 'jp': (863, 425, 890, 464), 'tw': (863, 425, 890, 464)}, file={'cn': './assets/cn/coalition/HORROR_EASY.png', 'en': './assets/cn/coalition/HORROR_EASY.png', 'jp': './assets/cn/coalition/HORROR_EASY.png', 'tw': './assets/cn/coalition/HORROR_EASY.png'})
|
||||
HORROR_EX = Button(area={'cn': (172, 410, 200, 448), 'en': (172, 410, 200, 448), 'jp': (172, 410, 200, 448), 'tw': (172, 410, 200, 448)}, color={'cn': (150, 101, 105), 'en': (150, 101, 105), 'jp': (150, 101, 105), 'tw': (150, 101, 105)}, button={'cn': (172, 410, 200, 448), 'en': (172, 410, 200, 448), 'jp': (172, 410, 200, 448), 'tw': (172, 410, 200, 448)}, file={'cn': './assets/cn/coalition/HORROR_EX.png', 'en': './assets/cn/coalition/HORROR_EX.png', 'jp': './assets/cn/coalition/HORROR_EX.png', 'tw': './assets/cn/coalition/HORROR_EX.png'})
|
||||
HORROR_FLEET_PREPARATION = Button(area={'cn': (1026, 514, 1139, 542), 'en': (1026, 514, 1139, 542), 'jp': (1026, 514, 1139, 542), 'tw': (1026, 514, 1139, 542)}, color={'cn': (146, 132, 183), 'en': (146, 132, 183), 'jp': (146, 132, 183), 'tw': (146, 132, 183)}, button={'cn': (1026, 514, 1139, 542), 'en': (1026, 514, 1139, 542), 'jp': (1026, 514, 1139, 542), 'tw': (1026, 514, 1139, 542)}, file={'cn': './assets/cn/coalition/HORROR_FLEET_PREPARATION.png', 'en': './assets/cn/coalition/HORROR_FLEET_PREPARATION.png', 'jp': './assets/cn/coalition/HORROR_FLEET_PREPARATION.png', 'tw': './assets/cn/coalition/HORROR_FLEET_PREPARATION.png'})
|
||||
HORROR_HARD = Button(area={'cn': (659, 343, 687, 382), 'en': (659, 343, 687, 382), 'jp': (659, 343, 687, 382), 'tw': (659, 343, 687, 382)}, color={'cn': (73, 74, 94), 'en': (73, 74, 94), 'jp': (73, 74, 94), 'tw': (73, 74, 94)}, button={'cn': (659, 343, 687, 382), 'en': (659, 343, 687, 382), 'jp': (659, 343, 687, 382), 'tw': (659, 343, 687, 382)}, file={'cn': './assets/cn/coalition/HORROR_HARD.png', 'en': './assets/cn/coalition/HORROR_HARD.png', 'jp': './assets/cn/coalition/HORROR_HARD.png', 'tw': './assets/cn/coalition/HORROR_HARD.png'})
|
||||
HORROR_MODE_BATTLE = Button(area={'cn': (76, 625, 115, 664), 'en': (76, 625, 115, 664), 'jp': (76, 625, 115, 664), 'tw': (76, 625, 115, 664)}, color={'cn': (146, 140, 156), 'en': (146, 140, 156), 'jp': (146, 140, 156), 'tw': (146, 140, 156)}, button={'cn': (76, 625, 115, 664), 'en': (76, 625, 115, 664), 'jp': (76, 625, 115, 664), 'tw': (76, 625, 115, 664)}, file={'cn': './assets/cn/coalition/HORROR_MODE_BATTLE.png', 'en': './assets/cn/coalition/HORROR_MODE_BATTLE.png', 'jp': './assets/cn/coalition/HORROR_MODE_BATTLE.png', 'tw': './assets/cn/coalition/HORROR_MODE_BATTLE.png'})
|
||||
HORROR_MODE_STORY = Button(area={'cn': (292, 626, 329, 665), 'en': (292, 626, 329, 665), 'jp': (292, 626, 329, 665), 'tw': (292, 626, 329, 665)}, color={'cn': (165, 155, 167), 'en': (165, 155, 167), 'jp': (165, 155, 167), 'tw': (165, 155, 167)}, button={'cn': (292, 626, 329, 665), 'en': (292, 626, 329, 665), 'jp': (292, 626, 329, 665), 'tw': (292, 626, 329, 665)}, file={'cn': './assets/cn/coalition/HORROR_MODE_STORY.png', 'en': './assets/cn/coalition/HORROR_MODE_STORY.png', 'jp': './assets/cn/coalition/HORROR_MODE_STORY.png', 'tw': './assets/cn/coalition/HORROR_MODE_STORY.png'})
|
||||
HORROR_NORMAL = Button(area={'cn': (765, 127, 793, 166), 'en': (765, 127, 793, 166), 'jp': (765, 127, 793, 166), 'tw': (765, 127, 793, 166)}, color={'cn': (75, 75, 92), 'en': (75, 75, 92), 'jp': (75, 75, 92), 'tw': (75, 75, 92)}, button={'cn': (765, 127, 793, 166), 'en': (765, 127, 793, 166), 'jp': (765, 127, 793, 166), 'tw': (765, 127, 793, 166)}, file={'cn': './assets/cn/coalition/HORROR_NORMAL.png', 'en': './assets/cn/coalition/HORROR_NORMAL.png', 'jp': './assets/cn/coalition/HORROR_NORMAL.png', 'tw': './assets/cn/coalition/HORROR_NORMAL.png'})
|
||||
HORROR_PT_OCR = Button(area={'cn': (1196, 339, 1276, 357), 'en': (1196, 339, 1276, 357), 'jp': (1196, 339, 1276, 357), 'tw': (1196, 339, 1276, 357)}, color={'cn': (62, 52, 54), 'en': (62, 52, 54), 'jp': (62, 52, 54), 'tw': (62, 52, 54)}, button={'cn': (1196, 339, 1276, 357), 'en': (1196, 339, 1276, 357), 'jp': (1196, 339, 1276, 357), 'tw': (1196, 339, 1276, 357)}, file={'cn': './assets/cn/coalition/HORROR_PT_OCR.png', 'en': './assets/cn/coalition/HORROR_PT_OCR.png', 'jp': './assets/cn/coalition/HORROR_PT_OCR.png', 'tw': './assets/cn/coalition/HORROR_PT_OCR.png'})
|
||||
HORROR_SP = Button(area={'cn': (430, 130, 458, 168), 'en': (430, 130, 458, 168), 'jp': (430, 130, 458, 168), 'tw': (430, 130, 458, 168)}, color={'cn': (161, 110, 112), 'en': (161, 110, 112), 'jp': (161, 110, 112), 'tw': (161, 110, 112)}, button={'cn': (430, 130, 458, 168), 'en': (430, 130, 458, 168), 'jp': (430, 130, 458, 168), 'tw': (430, 130, 458, 168)}, file={'cn': './assets/cn/coalition/HORROR_SP.png', 'en': './assets/cn/coalition/HORROR_SP.png', 'jp': './assets/cn/coalition/HORROR_SP.png', 'tw': './assets/cn/coalition/HORROR_SP.png'})
|
||||
HORROR_SWITCH_MULTI = Button(area={'cn': (1078, 458, 1208, 487), 'en': (1078, 458, 1208, 487), 'jp': (1078, 458, 1208, 487), 'tw': (1078, 458, 1208, 487)}, color={'cn': (229, 173, 59), 'en': (229, 173, 59), 'jp': (229, 173, 59), 'tw': (229, 173, 59)}, button={'cn': (1078, 458, 1208, 487), 'en': (1078, 458, 1208, 487), 'jp': (1078, 458, 1208, 487), 'tw': (1078, 458, 1208, 487)}, file={'cn': './assets/cn/coalition/HORROR_SWITCH_MULTI.png', 'en': './assets/cn/coalition/HORROR_SWITCH_MULTI.png', 'jp': './assets/cn/coalition/HORROR_SWITCH_MULTI.png', 'tw': './assets/cn/coalition/HORROR_SWITCH_MULTI.png'})
|
||||
HORROR_SWITCH_SINGLE = Button(area={'cn': (939, 458, 1070, 487), 'en': (939, 458, 1070, 487), 'jp': (939, 458, 1070, 487), 'tw': (939, 458, 1070, 487)}, color={'cn': (227, 171, 59), 'en': (227, 171, 59), 'jp': (227, 171, 59), 'tw': (227, 171, 59)}, button={'cn': (939, 458, 1070, 487), 'en': (939, 458, 1070, 487), 'jp': (939, 458, 1070, 487), 'tw': (939, 458, 1070, 487)}, file={'cn': './assets/cn/coalition/HORROR_SWITCH_SINGLE.png', 'en': './assets/cn/coalition/HORROR_SWITCH_SINGLE.png', 'jp': './assets/cn/coalition/HORROR_SWITCH_SINGLE.png', 'tw': './assets/cn/coalition/HORROR_SWITCH_SINGLE.png'})
|
||||
NEONCITY_COALITION_CHECK = Button(area={'cn': (230, 36, 276, 82), 'en': (179, 30, 276, 68), 'jp': (122, 30, 250, 86), 'tw': (230, 36, 276, 82)}, color={'cn': (136, 139, 142), 'en': (95, 98, 101), 'jp': (71, 86, 101), 'tw': (136, 139, 142)}, button={'cn': (230, 36, 276, 82), 'en': (179, 30, 276, 68), 'jp': (122, 30, 250, 86), 'tw': (230, 36, 276, 82)}, file={'cn': './assets/cn/coalition/NEONCITY_COALITION_CHECK.png', 'en': './assets/en/coalition/NEONCITY_COALITION_CHECK.png', 'jp': './assets/jp/coalition/NEONCITY_COALITION_CHECK.png', 'tw': './assets/cn/coalition/NEONCITY_COALITION_CHECK.png'})
|
||||
NEONCITY_EASY = Button(area={'cn': (255, 252, 308, 270), 'en': (306, 208, 349, 229), 'jp': (245, 250, 320, 273), 'tw': (304, 207, 350, 228)}, color={'cn': (131, 132, 135), 'en': (115, 124, 154), 'jp': (130, 130, 134), 'tw': (118, 128, 158)}, button={'cn': (255, 252, 308, 270), 'en': (306, 208, 349, 229), 'jp': (245, 250, 320, 273), 'tw': (304, 207, 350, 228)}, file={'cn': './assets/cn/coalition/NEONCITY_EASY.png', 'en': './assets/en/coalition/NEONCITY_EASY.png', 'jp': './assets/jp/coalition/NEONCITY_EASY.png', 'tw': './assets/tw/coalition/NEONCITY_EASY.png'})
|
||||
NEONCITY_EX = Button(area={'cn': (655, 353, 708, 370), 'en': (714, 308, 741, 328), 'jp': (643, 350, 720, 373), 'tw': (709, 308, 746, 328)}, color={'cn': (151, 150, 151), 'en': (162, 100, 99), 'jp': (137, 136, 137), 'tw': (157, 92, 93)}, button={'cn': (655, 353, 708, 370), 'en': (714, 308, 741, 328), 'jp': (643, 350, 720, 373), 'tw': (709, 308, 746, 328)}, file={'cn': './assets/cn/coalition/NEONCITY_EX.png', 'en': './assets/en/coalition/NEONCITY_EX.png', 'jp': './assets/jp/coalition/NEONCITY_EX.png', 'tw': './assets/tw/coalition/NEONCITY_EX.png'})
|
||||
|
||||
@@ -60,6 +60,8 @@ class Coalition(CoalitionCombat, CampaignEvent):
|
||||
ocr = DALPtOcr(DAL_PT_OCR, name='OCR_PT', letter=(255, 213, 69), threshold=128)
|
||||
elif event == 'coalition_20260122':
|
||||
ocr = Digit(FASHION_PT_OCR, name='OCR_PT', letter=(41, 40, 40), threshold=128)
|
||||
elif event == 'coalition_20260723':
|
||||
ocr = Digit(HORROR_PT_OCR, name='OCR_PT', lang='cnocr', letter=(228, 230, 237), threshold=256)
|
||||
else:
|
||||
logger.error(f'ocr object is not defined in event {event}')
|
||||
raise ScriptError
|
||||
@@ -83,6 +85,8 @@ class Coalition(CoalitionCombat, CampaignEvent):
|
||||
"""
|
||||
if self.config.Campaign_Event == 'coalition_20260122':
|
||||
return False
|
||||
if self.config.Campaign_Event == 'coalition_20260723':
|
||||
return False
|
||||
return True
|
||||
|
||||
def triggered_stop_condition(self, oil_check=False, pt_check=False):
|
||||
|
||||
@@ -19,6 +19,13 @@ class NeoncitySwitch(Switch):
|
||||
return 'unknown'
|
||||
|
||||
|
||||
class HorrorSwitch(Switch):
|
||||
def handle_additional(self, main):
|
||||
if main.handle_story_skip():
|
||||
return True
|
||||
return super().handle_additional(main)
|
||||
|
||||
|
||||
class CoalitionUI(Combat):
|
||||
def in_coalition(self):
|
||||
# The same as raid
|
||||
@@ -61,6 +68,11 @@ class CoalitionUI(Combat):
|
||||
mode_switch = Switch('CoalitionMode', offset=(20, 20))
|
||||
mode_switch.add_state('story', FASHION_MODE_STORY)
|
||||
mode_switch.add_state('battle', FASHION_MODE_BATTLE)
|
||||
elif event == 'coalition_20260723':
|
||||
# HORROR mode has appear animation so enlarge search area
|
||||
mode_switch = HorrorSwitch('CoalitionMode', offset=(50, 20))
|
||||
mode_switch.add_state('story', HORROR_MODE_STORY)
|
||||
mode_switch.add_state('battle', HORROR_MODE_BATTLE)
|
||||
else:
|
||||
logger.error(f'MODE_SWITCH is not defined in event {event}')
|
||||
raise ScriptError
|
||||
@@ -100,6 +112,9 @@ class CoalitionUI(Combat):
|
||||
elif event == 'coalition_20260122':
|
||||
fleet_switch.add_state('single', FASHION_SWITCH_SINGLE)
|
||||
fleet_switch.add_state('multi', FASHION_SWITCH_MULTI)
|
||||
elif event == 'coalition_20260723':
|
||||
fleet_switch.add_state('single', HORROR_SWITCH_SINGLE)
|
||||
fleet_switch.add_state('multi', HORROR_SWITCH_MULTI)
|
||||
else:
|
||||
logger.error(f'FLEET_SWITCH is not defined in event {event}')
|
||||
raise ScriptError
|
||||
@@ -164,6 +179,12 @@ class CoalitionUI(Combat):
|
||||
('coalition_20260122', 'hard'): FASHION_HARD,
|
||||
('coalition_20260122', 'sp'): FASHION_SP,
|
||||
('coalition_20260122', 'ex'): FASHION_EX,
|
||||
# HORROR
|
||||
('coalition_20260723', 'easy'): HORROR_EASY,
|
||||
('coalition_20260723', 'normal'): HORROR_NORMAL,
|
||||
('coalition_20260723', 'hard'): HORROR_HARD,
|
||||
('coalition_20260723', 'sp'): HORROR_SP,
|
||||
('coalition_20260723', 'ex'): HORROR_EX,
|
||||
}
|
||||
stage = stage.lower()
|
||||
try:
|
||||
@@ -252,6 +273,12 @@ class CoalitionUI(Combat):
|
||||
('coalition_20260122', 'hard'): 3,
|
||||
('coalition_20260122', 'sp'): 4,
|
||||
('coalition_20260122', 'ex'): 5,
|
||||
# HORROR
|
||||
('coalition_20260723', 'easy'): 1,
|
||||
('coalition_20260723', 'normal'): 2,
|
||||
('coalition_20260723', 'hard'): 3,
|
||||
('coalition_20260723', 'sp'): 4,
|
||||
('coalition_20260723', 'ex'): 5,
|
||||
}
|
||||
stage = stage.lower()
|
||||
try:
|
||||
@@ -280,6 +307,8 @@ class CoalitionUI(Combat):
|
||||
elif event == 'coalition_20260122':
|
||||
# FASHION reuses NEONCITY, just (-12, -12) shifted
|
||||
return NEONCITY_FLEET_PREPARATION
|
||||
elif event == 'coalition_20260723':
|
||||
return HORROR_FLEET_PREPARATION
|
||||
else:
|
||||
logger.error(f'FLEET_PREPARATION is not defined in event {event}')
|
||||
raise ScriptError
|
||||
@@ -304,6 +333,7 @@ class CoalitionUI(Combat):
|
||||
'coalition_20240627',
|
||||
'coalition_20250626',
|
||||
'coalition_20260122',
|
||||
'coalition_20260723',
|
||||
]:
|
||||
# easy is single fleet, SP and EX must must multiple fleets
|
||||
if stage in ['easy', 'sp', 'ex']:
|
||||
@@ -346,9 +376,10 @@ class CoalitionUI(Combat):
|
||||
logger.info(f'{fleet_preparation} -> {NEONCITY_PREPARATION_EXIT}')
|
||||
self.device.click(NEONCITY_PREPARATION_EXIT)
|
||||
continue
|
||||
if self.appear_then_click(DAL_DIFFICULTY_EXIT, offset=(20, 20), interval=3):
|
||||
logger.info(f'{DAL_DIFFICULTY_EXIT} -> {DAL_DIFFICULTY_EXIT}')
|
||||
continue
|
||||
if event == 'coalition_20251120':
|
||||
if self.appear_then_click(DAL_DIFFICULTY_EXIT, offset=(20, 20), interval=3):
|
||||
logger.info(f'{DAL_DIFFICULTY_EXIT} -> {DAL_DIFFICULTY_EXIT}')
|
||||
continue
|
||||
|
||||
def enter_map(self, event, stage, mode):
|
||||
"""
|
||||
|
||||
@@ -132,10 +132,10 @@ page_campaign.link(button=CAMPAIGN_GOTO_EVENT, destination=page_sp)
|
||||
|
||||
# Coalition
|
||||
# FROSTFALL
|
||||
page_coalition = Page(FROSTFALL_COALITION_CHECK)
|
||||
page_coalition.link(button=GOTO_MAIN, destination=page_main)
|
||||
page_coalition.link(button=BACK_ARROW, destination=page_campaign_menu)
|
||||
page_campaign_menu.link(button=CAMPAIGN_MENU_GOTO_EVENT, destination=page_coalition)
|
||||
# page_coalition = Page(FROSTFALL_COALITION_CHECK)
|
||||
# page_coalition.link(button=GOTO_MAIN, destination=page_main)
|
||||
# page_coalition.link(button=BACK_ARROW, destination=page_campaign_menu)
|
||||
# page_campaign_menu.link(button=CAMPAIGN_MENU_GOTO_EVENT, destination=page_coalition)
|
||||
# ACADEMY
|
||||
# page_coalition_menu = Page(COALITION_ACADEMY_MAIN_CHECK)
|
||||
# page_coalition_menu.link(button=COALITION_ACADEMY_HOME, destination=page_main)
|
||||
@@ -159,6 +159,11 @@ page_campaign_menu.link(button=CAMPAIGN_MENU_GOTO_EVENT, destination=page_coalit
|
||||
# page_coalition.link(button=GOTO_MAIN, destination=page_main)
|
||||
# page_coalition.link(button=BACK_ARROW, destination=page_campaign_menu)
|
||||
# page_campaign_menu.link(button=CAMPAIGN_MENU_GOTO_EVENT, destination=page_coalition)
|
||||
# HORROR
|
||||
page_coalition = Page(HORROR_COALITION_CHECK)
|
||||
page_coalition.link(button=GOTO_MAIN, destination=page_main)
|
||||
page_coalition.link(button=BACK_ARROW, destination=page_campaign_menu)
|
||||
page_campaign_menu.link(button=CAMPAIGN_MENU_GOTO_EVENT, destination=page_coalition)
|
||||
|
||||
# Operation Siren
|
||||
page_os = Page(OS_CHECK)
|
||||
|
||||