myrmidon / scripts /refactor_main.py
tek Atrust
chore(deploy): build monolithic server for Hugging Face
d5ef46f
Raw
History Blame Contribute Delete
3.59 kB
import re
print("Refactoring Main.gd and Main.tscn...")
# Read Main.gd
with open("archon-agency-tycoon/Scripts/Main.gd", "r") as f:
main_gd = f.read()
# Update onready paths in Main.gd
main_gd = re.sub(r'@onready var minimap_container: Control = \$VBox/HBoxMain/RightPanel/VBox/MinimapContainer', '@onready var minimap_container: Control = $UILayer/UI/RightPanel/VBox/MinimapContainer', main_gd)
main_gd = re.sub(r'@onready var ticker: RichTextLabel = \$VBox/TopBar/HBox/TickerLabel', '@onready var ticker: RichTextLabel = $UILayer/UI/TopBar/HBox/TickerLabel', main_gd)
main_gd = re.sub(r'@onready var lang_button: Button = \$VBox/TopBar/HBox/LangButton', '@onready var lang_button: Button = $UILayer/UI/TopBar/HBox/LangButton', main_gd)
main_gd = re.sub(r'@onready var jukebox_button: Button = \$VBox/TopBar/HBox/JukeboxButton', '@onready var jukebox_button: Button = $UILayer/UI/TopBar/HBox/JukeboxButton', main_gd)
main_gd = re.sub(r'@onready var task_container: HBoxContainer = \$VBox/BottomBar/VBox/TaskContainer', '@onready var task_container: HBoxContainer = $UILayer/UI/BottomBar/VBox/TaskContainer', main_gd)
# Office rooms are now Node2D under World/Rooms
main_gd = re.sub(r'@onready var dev_room_label: Label = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/DevRoom/Label', '@onready var dev_room_label: Label = $World/Rooms/DevRoom/Label', main_gd)
main_gd = re.sub(r'@onready var sales_room_label: Label = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/SalesRoom/Label', '@onready var sales_room_label: Label = $World/Rooms/SalesRoom/Label', main_gd)
main_gd = re.sub(r'@onready var qa_room_label: Label = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/QARoom/Label', '@onready var qa_room_label: Label = $World/Rooms/QARoom/Label', main_gd)
main_gd = re.sub(r'@onready var break_room_label: Label = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/BreakRoom/Label', '@onready var break_room_label: Label = $World/Rooms/BreakRoom/Label', main_gd)
# Room types change from PanelContainer to Node2D
main_gd = re.sub(r'@onready var dev_room: PanelContainer = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/DevRoom', '@onready var dev_room: Node2D = $World/Rooms/DevRoom', main_gd)
main_gd = re.sub(r'@onready var sales_room: PanelContainer = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/SalesRoom', '@onready var sales_room: Node2D = $World/Rooms/SalesRoom', main_gd)
main_gd = re.sub(r'@onready var qa_room: PanelContainer = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/QARoom', '@onready var qa_room: Node2D = $World/Rooms/QARoom', main_gd)
main_gd = re.sub(r'@onready var break_room: PanelContainer = \$VBox/HBoxMain/GameArea/Building/OfficeGrid/BreakRoom', '@onready var break_room: Node2D = $World/Rooms/BreakRoom', main_gd)
main_gd = re.sub(r'\$VBox/BottomBar/VBox/ActionHBox/RecruitBtn', '$UILayer/UI/BottomBar/VBox/ActionHBox/RecruitBtn', main_gd)
main_gd = re.sub(r'\$VBox/BottomBar/VBox/ActionHBox/ExpandRoomBtn', '$UILayer/UI/BottomBar/VBox/ActionHBox/ExpandRoomBtn', main_gd)
main_gd = re.sub(r'\$VBox/BottomBar/VBox/ActionHBox/SaveBtn', '$UILayer/UI/BottomBar/VBox/ActionHBox/SaveBtn', main_gd)
main_gd = re.sub(r'"VBox/HBoxMain/RightPanel/VBox/EventLog"', '"UILayer/UI/RightPanel/VBox/EventLog"', main_gd)
# Remove office_grid references since we are moving away from grid container
main_gd = re.sub(r'@onready var office_grid: GridContainer = \$VBox/HBoxMain/GameArea/Building/OfficeGrid\n', '@onready var office_grid: Node2D = $World/Rooms\n', main_gd)
with open("archon-agency-tycoon/Scripts/Main.gd", "w") as f:
f.write(main_gd)
print("Main.gd updated!")