def get_languages_list(): gamelangs = [(code.split("_", 1)[0], code) for code in g.available_languages()] langcount = {} for language, _ in gamelangs: #language++ langcount[language] = langcount.get(language, 0) + 1 #Load languages data with open(os.path.join(g.data_dir,"languages.dat")) as langdata: languages = json.load(langdata) output = [] for language, code in gamelangs: if langcount[language] > 1: # There are more countries with this base language. # Use full language+country locale name name = languages.get(code, code) else: #This is the only country using that base language. #Use the (shorter) base language name name = languages.get(language, language) #Choose native or english name output.append((code, name[1] or name[0])) return sorted(output)
def get_languages_list(): gamelangs = [(code.split("_", 1)[0], code) for code in g.available_languages()] langcount = {} for language, _ in gamelangs: #language++ langcount[language] = langcount.get(language, 0) + 1 #Load languages data with open(os.path.join(g.data_dir, "languages.dat")) as langdata: languages = json.load(langdata) output = [] for language, code in gamelangs: if langcount[language] > 1: # There are more countries with this base language. # Use full language+country locale name name = languages.get(code, code) else: #This is the only country using that base language. #Use the (shorter) base language name name = languages.get(language, language) #Choose native or english name output.append((code, name[1] or name[0])) return sorted(output)
def getGameTranslations(): """Return a list of available game translations (both ll and ll_CC) Generated list is suitable to be used as a filter to getLanguages() method. Do not confuse with the languages data dict that is generated by this module. This function is just here as a reference, but I won't use this at all. You may even delete it, I truly don't care. """ game_translations = set() for language in g.available_languages(): game_translations.add(language) if "_" in language: game_translations.add(language.split("_",1)[0]) return dict(game_translations)
def getGameTranslations(): """Return a list of available game translations (both ll and ll_CC) Generated list is suitable to be used as a filter to getLanguages() method. Do not confuse with the languages data dict that is generated by this module. This function is just here as a reference, but I won't use this at all. You may even delete it, I truly don't care. """ game_translations = set() for language in g.available_languages(): game_translations.add(language) if "_" in language: game_translations.add(language.split("_", 1)[0]) return dict(game_translations)
def __init__(self, *args, **kwargs): super(OptionsScreen, self).__init__(*args, **kwargs) self.size = (.79, .63) self.pos = (.5, .5) self.anchor = constants.MID_CENTER self.background_color = (0,0,50) self.borders = () self.fullscreen_label = text.Text(self, (.01, .01), (.15, .05), text="Fullscreen:", underline=0, align=constants.LEFT, background_color=gg.colors["clear"]) self.fullscreen_toggle = OptionButton(self, (.17, .01), (.07, .05), text="NO", text_shrink_factor=.75, hotkey="f", force_underline=-1, function=self.set_fullscreen, args=(button.TOGGLE_VALUE,)) self.sound_label = text.Text(self, (.28, .01), (.15, .05), text="Sound:", underline=0, background_color=gg.colors["clear"]) self.sound_toggle = OptionButton(self, (.44, .01), (.07, .05), text="YES", text_shrink_factor=.75, hotkey="s", force_underline=-1, function=self.set_sound, args=(button.TOGGLE_VALUE,)) self.grab_label = text.Text(self, (.55, .01), (.15, .05), text="Mouse grab:", underline=0, background_color=gg.colors["clear"]) self.grab_toggle = OptionButton(self, (.71, .01), (.07, .05), text="NO", text_shrink_factor=.75, hotkey="m", force_underline=-1, function=self.set_grab, args=(button.TOGGLE_VALUE,)) self.resolution_label = text.Text(self, (.01, .08), (.15, .05), text="Resolution:", align=constants.LEFT, background_color=gg.colors["clear"]) self.resolution_group = button.ButtonGroup() self.resolution_640x480 = OptionButton(self, (.17, .08), (.12, .05), text="640X480", text_shrink_factor=.5, function=self.set_resolution, args=((640,480),)) self.resolution_group.add(self.resolution_640x480) self.resolution_800x600 = OptionButton(self, (.333, .08), (.12, .05), text="800X600", text_shrink_factor=.5, function=self.set_resolution, args=((800,600),)) self.resolution_group.add(self.resolution_800x600) self.resolution_1024x768 = OptionButton(self, (.496, .08), (.12, .05), text="1024X768", text_shrink_factor=.5, function=self.set_resolution, args=((1024,768),)) self.resolution_group.add(self.resolution_1024x768) self.resolution_1280x1024 = OptionButton(self, (.66, .08), (.12, .05), text="1280X1024", text_shrink_factor=.5, function=self.set_resolution, args=((1280,1024),)) self.resolution_group.add(self.resolution_1280x1024) self.resolution_custom = OptionButton(self, (.17, .15), (.12, .05), text="CUSTOM:", text_shrink_factor=.5) self.resolution_group.add(self.resolution_custom) self.resolution_custom_horiz = \ text.EditableText(self, (.333, .15), (.12, .05), text="1400", borders=constants.ALL, border_color=gg.colors["white"], background_color=(0,0,50,255)) self.resolution_custom_X = text.Text(self, (.46, .15), (.03, .05), text="X", base_font=gg.font[1], background_color=gg.colors["clear"]) self.resolution_custom_vert = \ text.EditableText(self, (.496, .15), (.12, .05), text="1050", borders=constants.ALL, border_color=gg.colors["white"], background_color=(0,0,50,255)) self.resolution_apply = \ button.FunctionButton(self, (.66, .15), (.12, .05), text="APPLY", text_shrink_factor=.75, hotkey="a", function=self.set_resolution_custom) self.soundbuf_label = text.Text(self, (.01, .22), (.25, .05), text="Sound buffering:", align=constants.LEFT, background_color=gg.colors["clear"]) self.soundbuf_group = button.ButtonGroup() self.soundbuf_low = OptionButton(self, (.27, .22), (.14, .05), text="LOW", hotkey="l", function=self.set_soundbuf, args=(1024,)) self.soundbuf_group.add(self.soundbuf_low) self.soundbuf_normal = OptionButton(self, (.44, .22), (.17, .05), text="NORMAL", hotkey="n", function=self.set_soundbuf, args=(1024*2,)) self.soundbuf_group.add(self.soundbuf_normal) self.soundbuf_high = OptionButton(self, (.64, .22), (.14, .05), text="HIGH", hotkey="h", function=self.set_soundbuf, args=(1024*4,)) self.soundbuf_group.add(self.soundbuf_high) self.language_label = text.Text(self, (.01, .30), (.15, .05), text="Language:", align=constants.LEFT, background_color=gg.colors["clear"]) self.language_choice = \ listbox.UpdateListbox(self, (.17, .30), (.21, .25), list=g.available_languages(), update_func=self.set_language) self.daynight_label = text.Text(self, (.55, .30), (.15, .05), text="Day/night display:", underline=2, background_color=gg.colors["clear"]) self.daynight_toggle = OptionButton(self, (.71, .30), (.07, .05), text="NO", text_shrink_factor=.75, hotkey="y", force_underline=-1, function=self.set_daynight, args=(button.TOGGLE_VALUE,)) self.save_button = button.FunctionButton(self, (.42, .45), (.34, .05), text="SAVE OPTIONS TO DISK", hotkey="d", function=save_options)