Strip Enemizer

Foundation for GUI translation
This commit is contained in:
Mike A. Trethewey
2020-03-09 19:10:40 -07:00
parent ff51821701
commit ceceee68df
6 changed files with 342 additions and 25 deletions

View File

@@ -2,10 +2,13 @@ from source.classes.SpriteSelector import SpriteSelector as spriteSelector
from source.gui.randomize.gameoptions import set_sprite
from Rom import Sprite, get_sprite_from_name
import source.classes.constants as CONST
from source.classes.BabelFish import BabelFish
from source.classes.Empty import Empty
# Load args/settings for most tabs
def loadcliargs(gui, args, settings=None):
if args is not None:
fish = BabelFish()
# for k, v in vars(args).items():
# if type(v) is dict:
# setattr(args, k, v[1]) # only get values for player 1 for now
@@ -23,6 +26,13 @@ def loadcliargs(gui, args, settings=None):
for widget in options[mainpage][subpage]:
# Get the value and set it
arg = options[mainpage][subpage][widget]
label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget)
if hasattr(gui.pages[mainpage].pages[subpage].widgets[widget],"type"):
type = gui.pages[mainpage].pages[subpage].widgets[widget].type
if type == "checkbox":
gui.pages[mainpage].pages[subpage].widgets[widget].checkbox.configure(text=label)
elif type == "selectbox":
gui.pages[mainpage].pages[subpage].widgets[widget].label.configure(text=label)
gui.pages[mainpage].pages[subpage].widgets[widget].storageVar.set(args[arg])
# If we're on the Game Options page and it's not about Hints
if subpage == "gameoptions" and not widget == "hints":
@@ -30,27 +40,56 @@ def loadcliargs(gui, args, settings=None):
# Check if we've got the widget in Adjust settings
hasSettings = settings is not None
hasWidget = ("adjust." + widget) in settings if hasSettings else None
label = fish.translate("gui","gui","adjust." + widget)
if ("adjust." + widget) in label:
label = fish.translate("gui","gui","randomizer.gameoptions." + widget)
if hasattr(gui.pages["adjust"].content.widgets[widget],"type"):
type = gui.pages["adjust"].content.widgets[widget].type
if type == "checkbox":
gui.pages["adjust"].content.widgets[widget].checkbox.configure(text=label)
elif type == "selectbox":
gui.pages["adjust"].content.widgets[widget].label.configure(text=label)
if hasWidget is None:
# If we've got a Game Options val and we don't have an Adjust val, use the Game Options val
gui.pages["adjust"].content.widgets[widget].storageVar.set(args[arg])
# Get EnemizerCLI setting
gui.pages["randomizer"].pages["enemizer"].enemizerCLIpathVar.set(args["enemizercli"])
mainpage = "randomizer"
subpage = "enemizer"
widget = "enemizercli"
setting = "enemizercli"
gui.pages[mainpage].pages[subpage].widgets[widget].storageVar.set(args[setting])
label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget)
gui.pages[mainpage].pages[subpage].widgets[widget].pieces["frame"].label.configure(text=label)
label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget + ".online")
gui.pages[mainpage].pages[subpage].widgets[widget].pieces["online"].label.configure(text=label)
# Get baserom path
gui.pages["randomizer"].pages["generation"].romVar.set(args["rom"])
mainpage = "randomizer"
subpage = "generation"
setting = "rom"
gui.pages[mainpage].pages[subpage].romVar.set(args[setting])
# Get Multiworld Worlds count
if args["multi"]:
gui.pages["randomizer"].pages["multiworld"].widgets["worlds"].storageVar.set(str(args["multi"]))
mainpage = "randomizer"
subpage = "multiworld"
widget = "worlds"
setting = "multi"
if args[setting]:
gui.pages[mainpage].pages[subpage].widgets[widget].storageVar.set(str(args[setting]))
# Get Seed ID
if args["seed"]:
gui.frames["bottom"].seedVar.set(str(args["seed"]))
mainpage = "bottom"
setting = "seed"
if args[setting]:
gui.frames[mainpage].seedVar.set(str(args[setting]))
# Get number of generations to run
if args["count"]:
gui.frames["bottom"].widgets["generationcount"].storageVar.set(str(args["count"]))
mainpage = "bottom"
widget = "generationcount"
setting = "count"
if args[setting]:
gui.frames[mainpage].widgets[widget].storageVar.set(str(args[setting]))
# Get output path
gui.outputPath.set(args["outputpath"])