예제 #1
0
 def deactivate():
     menu = Menu([4326])
     for p in get_packages():
         if p.is_active:
             menu.append([p.name], p.deactivate)
     menu.append([4118], None)
     menu.run()
예제 #2
0
 def update():
     menu = Menu([4327])
     for p in get_packages():
         if p.is_active:
             menu.append([p.name], (p.update, voice))
     menu.append([4118], None)
     menu.run()
예제 #3
0
 def add():
     menu = Menu([4325])
     for p in get_packages():
         if not p.is_active:
             menu.append([p.name], (p.add, voice))
     menu.append([4118], None)
     menu.run()
예제 #4
0
 def replay_menu(self):
     menu = Menu([4315])
     for n in sorted(os.listdir(REPLAYS_PATH), reverse=True):
         if n.endswith(".txt"):
             menu.append([time.strftime("%c", time.localtime(int(n[:-4])))], (self.replay, n))
     menu.append([4041], None)
     menu.run()
예제 #5
0
 def choose_server_ip_in_a_list(self):
     servers_list = None
     try:
         f = urllib.urlopen(SERVERS_LIST_URL)
         if f.read(len(SERVERS_LIST_HEADER)) == SERVERS_LIST_HEADER:
             servers_list = f.readlines()
     except:
         pass
     if servers_list is None:
         voice.alert([1029]) # hostile sound
         warning("couldn't get the servers list from the metaserver"
                 " => using the default servers list")
         servers_list = DEFAULT_SERVERS
     nb = 0
     menu = Menu()
     for s in servers_list:
         try:
             ip, version, login, port = s.split()[1:]
             # ignore the first parameter (time)
         except:
             warning("line not recognized from the metaserver: %s", s)
             continue
         nb += 1
         if version == VERSION:
             menu.append([login, 4073, login], (connect_and_play, ip, port))
     menu.title = nb2msg(len(menu.choices)) + [4078] + nb2msg(nb) + [4079]
     menu.append([4075, 4076], None)
     menu.run()
예제 #6
0
 def choose_server_ip_in_a_list(self):
     servers_list = None
     try:
         f = urllib.urlopen(SERVERS_LIST_URL)
         if f.read(len(SERVERS_LIST_HEADER)) == SERVERS_LIST_HEADER:
             servers_list = f.readlines()
     except:
         pass
     if servers_list is None:
         voice.alert([1029])  # hostile sound
         warning("couldn't get the servers list from the metaserver"
                 " => using the default servers list")
         servers_list = DEFAULT_SERVERS
     nb = 0
     menu = Menu()
     for s in servers_list:
         try:
             ip, version, login, port = s.split()[1:]
             # ignore the first parameter (time)
         except:
             warning("line not recognized from the metaserver: %s", s)
             continue
         nb += 1
         if version == VERSION:
             menu.append([login, 4073, login], (connect_and_play, ip, port))
     menu.title = nb2msg(len(menu.choices)) + [4078] + nb2msg(nb) + [4079]
     menu.append([4075, 4076], None)
     menu.run()
예제 #7
0
 def replay_menu(self):
     menu = Menu([4315])
     for n in sorted(os.listdir(REPLAYS_PATH), reverse=True):
         if n.endswith(".txt"):
             menu.append([time.strftime("%c", time.localtime(int(n[:-4])))], (self.replay, n))
     menu.append([4041], None)
     menu.run()
예제 #8
0
def replay_menu():
    menu = Menu(mp.OBSERVE_RECORDED_GAME)
    for n in sorted(os.listdir(REPLAYS_PATH), reverse=True):
        if n.endswith(".txt"):
            menu.append([time.strftime("%c", time.localtime(int(n[:-4])))],
                        (replay, n))
    menu.append(mp.QUIT2, None)
    menu.run()
예제 #9
0
def replay_menu():
    menu = Menu(mp.OBSERVE_RECORDED_GAME)
    for n in sorted(os.listdir(REPLAYS_PATH), reverse=True):
        if n.endswith(".txt"):
            menu.append([time.strftime("%c", time.localtime(int(n[:-4])))],
                        (replay, n))
    menu.append(mp.QUIT2, None)
    menu.run()
예제 #10
0
 def mods_menu():
     mods_menu = Menu(["Mods"])
     mods_menu.append([0], (set_and_launch_mod, ""))
     for mod in res.available_mods():
         mods_menu.append([mod], (set_and_launch_mod, mod))
     mods_menu.append([4118], END_LOOP)
     mods_menu.run()
     return END_LOOP
예제 #11
0
 def soundpacks_menu():
     soundpacks_menu = Menu(["Soundpacks"])
     soundpacks_menu.append([0], (set_and_launch_soundpack, ""))
     for soundpack in res.available_soundpacks():
         soundpacks_menu.append([soundpack], (set_and_launch_soundpack, soundpack))
     soundpacks_menu.append([4118], END_LOOP)
     soundpacks_menu.run()
     return END_LOOP
예제 #12
0
 def mods_menu():
     mods_menu = Menu([4341])
     mods_menu.append([0], (set_and_launch_mod, ""))
     for mod in res.available_mods():
         mods_menu.append([mod], (set_and_launch_mod, mod))
     mods_menu.append([4118], END_LOOP)
     mods_menu.run()
     return END_LOOP
예제 #13
0
def mods_menu():
    mods_menu = Menu(mp.MODS)
    mods_menu.append([0], (set_and_launch_mod, ""))
    for mod in res.available_mods():
        mods_menu.append([mod], (set_and_launch_mod, mod))
    mods_menu.append(mp.BACK, CLOSE_MENU)
    mods_menu.run()
    return CLOSE_MENU
예제 #14
0
def mods_menu():
    mods_menu = Menu(mp.MODS)
    mods_menu.append([0], (set_and_launch_mod, ""))
    for mod in res.available_mods():
        mods_menu.append([mod], (set_and_launch_mod, mod))
    mods_menu.append(mp.BACK, CLOSE_MENU)
    mods_menu.run()
    return CLOSE_MENU
예제 #15
0
 def soundpacks_menu():
     soundpacks_menu = Menu([4342])
     soundpacks_menu.append([0], (set_and_launch_soundpack, ""))
     for soundpack in res.available_soundpacks():
         soundpacks_menu.append([soundpack],
                                (set_and_launch_soundpack, soundpack))
     soundpacks_menu.append([4118], END_LOOP)
     soundpacks_menu.run()
     return END_LOOP
예제 #16
0
def soundpacks_menu():
    soundpacks_menu = Menu(mp.SOUNDPACKS)
    soundpacks_menu.append(mp.NOTHING, (set_and_launch_soundpack, ""))
    for soundpack in res.available_soundpacks():
        soundpacks_menu.append([soundpack],
                               (set_and_launch_soundpack, soundpack))
    soundpacks_menu.append(mp.BACK, CLOSE_MENU)
    soundpacks_menu.run()
    return CLOSE_MENU
예제 #17
0
def soundpacks_menu():
    soundpacks_menu = Menu(mp.SOUNDPACKS)
    soundpacks_menu.append(mp.NOTHING, (set_and_launch_soundpack, ""))
    for soundpack in res.available_soundpacks():
        soundpacks_menu.append([soundpack],
                               (set_and_launch_soundpack, soundpack))
    soundpacks_menu.append(mp.BACK, CLOSE_MENU)
    soundpacks_menu.run()
    return CLOSE_MENU
예제 #18
0
def multiplayer_menu():
    if config.login == "player":
        voice.alert(mp.ENTER_NEW_LOGIN)
        modify_login()
    menu = Menu(mp.MAKE_A_SELECTION, [
        (mp.CHOOSE_SERVER_IN_LIST, choose_server_ip_in_a_list),
        (mp.ENTER_SERVER_IP, enter_server_ip),
        (mp.CANCEL, None),
    ])
    menu.run()
예제 #19
0
def multiplayer_menu():
    if config.login == "player":
        voice.alert(mp.ENTER_NEW_LOGIN)
        modify_login()
    menu = Menu(mp.MAKE_A_SELECTION, [
        (mp.CHOOSE_SERVER_IN_LIST, choose_server_ip_in_a_list),
        (mp.ENTER_SERVER_IP, enter_server_ip),
        (mp.CANCEL, None),
         ])
    menu.run()
예제 #20
0
 def multiplayer_menu(self):
     revision_checker.start_if_needed()
     if config.login == "player":
         voice.alert([4235]) # type your new login
         self.modify_login()
     menu = Menu([4030], [
         ([4119], self.choose_server_ip_in_a_list),
         ([4120], self.enter_server_ip),
         ([4048], None),
          ])
     menu.run()
예제 #21
0
 def multiplayer_menu(self):
     revision_checker.start_if_needed()
     if config.login == "player":
         voice.alert([4235])  # type your new login
         self.modify_login()
     menu = Menu([4030], [
         ([4119], self.choose_server_ip_in_a_list),
         ([4120], self.enter_server_ip),
         ([4048], None),
     ])
     menu.run()
예제 #22
0
        def select_next_mod(parent):

            def add_mod(mod):
                if mod not in mods:
                    mods.append(mod)
                    parent.title = mods

            menu = Menu([4320] + mods)
            for mod in available_mods():
                menu.append([mod], (add_mod, mod))
            menu.append([4118], None)
            menu.run()
예제 #23
0
 def run(self):
     if self.mods is not None:
         res.set_mods(self.mods)
     try:
         self.load_resources()
         menu = Menu(self.title, [])
         if len(self._available_chapters()) > 1:
             ch = self._available_chapters()[-1]
             menu.append(mp.CONTINUE + ch.title, ch)
         for ch in self._available_chapters():
             prefix = nb2msg(ch.id) if ch.id > 0 else []
             menu.append(prefix + ch.title, ch)
         menu.append(mp.BACK, None)
         menu.run()
     finally:
         self.unload_resources()
예제 #24
0
파일: campaign.py 프로젝트: ctoth/soundrts
 def run(self):
     if self.mods is not None:
         res.set_mods(self.mods)
     try:
         self.load_resources()
         menu = Menu(self.title, [])
         if len(self._available_chapters()) > 1:
             ch = self._available_chapters()[-1]
             menu.append([4011] + ch.title, ch) # "continue"
         for ch in self._available_chapters():
             prefix = nb2msg(ch.id) if ch.id > 0 else []  
             menu.append(prefix + ch.title, ch)
 #        menu.append([4113], "restore")
         menu.append([4118], None) # "cancel"
         menu.run()
     finally:
         self.unload_resources()
예제 #25
0
    def run(self):
        if self.mods is not None:
            res.set_mods(self.mods)
        try:
            self.load_resources()
            menu = Menu(self.title, [])
            if len(self._available_chapters()) > 1:
                ch = self._available_chapters()[-1]
                menu.append([4011] + ch.title, ch)  # "continue"
            for ch in self._available_chapters():
                prefix = nb2msg(ch.id) if ch.id > 0 else []
                menu.append(prefix + ch.title, ch)

    #        menu.append([4113], "restore")
            menu.append([4118], None)  # "cancel"
            menu.run()
        finally:
            self.unload_resources()
예제 #26
0
def choose_server_ip_in_a_list():
    servers = servers_list(voice)
    total = 0
    compatible = 0
    menu = Menu()
    for s in servers:
        try:
            _, ip, version, login, port = s.split()
        except ValueError:
            warning("line not recognized from the metaserver: %s", s)
        else:
            total += 1
            if version == VERSION:
                compatible += 1
                menu.append([login], (connect_and_play, ip, port),
                            mp.SERVER_HOSTED_BY + [login])
    menu.title = nb2msg(compatible) + mp.SERVERS_ON + nb2msg(total) + mp.ARE_COMPATIBLE
    menu.append(mp.CANCEL2, None, mp.GO_BACK_TO_PREVIOUS_MENU)
    menu.run()
예제 #27
0
def choose_server_ip_in_a_list():
    servers = servers_list(voice)
    total = 0
    compatible = 0
    menu = Menu()
    for s in servers:
        try:
            _, ip, version, login, port = s.split()
        except ValueError:
            warning("line not recognized from the metaserver: %s", s)
        else:
            total += 1
            if version == VERSION:
                compatible += 1
                menu.append([login], (connect_and_play, ip, port),
                            mp.SERVER_HOSTED_BY + [login])
    menu.title = nb2msg(compatible) + mp.SERVERS_ON + nb2msg(
        total) + mp.ARE_COMPATIBLE
    menu.append(mp.CANCEL2, None, mp.GO_BACK_TO_PREVIOUS_MENU)
    menu.run()
예제 #28
0
 def training_menu(self):
     menu = Menu([4055], remember="mapmenu")
     for m in res.worlds_multi():
         menu.append(m.title, (self.training_menu_after_map, m))
     menu.append([4041], None)
     menu.run()
예제 #29
0
파일: campaign.py 프로젝트: ctoth/soundrts
 def _defeat(self):
     menu = Menu([], [])
     menu.append([4266], self) # restart
     menu.append([4009], None) # cancel
     menu.run()
예제 #30
0
 def run(self):
     menu = Menu(mp.START_A_GAME_ON, remember="mapmenu")
     for m in worlds_multi():
         menu.append(m.title, (self._open_players_menu, m))
     menu.append(mp.QUIT2, None)
     menu.run()
예제 #31
0
 def training_menu(self):
     menu = Menu([4055], remember="mapmenu")
     for m in res.worlds_multi():
         menu.append(m.title, (self.training_menu_after_map, m))
     menu.append([4041], None)
     menu.run()
예제 #32
0
 def _victory(self):
     menu = Menu([], [])
     menu.append(mp.CONTINUE, self._get_next())
     menu.append(mp.QUIT, None)
     menu.run()
예제 #33
0
 def _defeat(self):
     menu = Menu([], [])
     menu.append(mp.RESTART, self)
     menu.append(mp.QUIT, None)
     menu.run()
예제 #34
0
 def run(self):
     menu = Menu(mp.START_A_GAME_ON, remember="mapmenu")
     for m in worlds_multi():
         menu.append(m.title, (self._open_players_menu, m))
     menu.append(mp.QUIT2, None)
     menu.run()
예제 #35
0
파일: campaign.py 프로젝트: ctoth/soundrts
 def _victory(self):
     menu = Menu([], [])
     menu.append([4011], self._get_next()) # continue
     menu.append([4009], None) # cancel
     menu.run()
예제 #36
0
 def _victory(self):
     menu = Menu([], [])
     menu.append([4011], self._get_next())  # continue
     menu.append([4009], None)  # cancel
     menu.run()
예제 #37
0
 def _defeat(self):
     menu = Menu([], [])
     menu.append([4266], self)  # restart
     menu.append([4009], None)  # cancel
     menu.run()