Exemple #1
0
    def manage_packages(self):

        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()

        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()

        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()

        menu = Menu([4324], [
            ([4325], add),
            ([4326], deactivate),
            ([4327], update),
            ([4076], END_LOOP),
            ])
        menu.loop()
        reload_all()
Exemple #2
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
Exemple #3
0
 def make_menu(self):
     menu = Menu()
     for g in self.invitations:
         menu.append([4053] + g[1:], (self.server.write_line, "register %s" % g[0]))
     menu.append([4055], self._get_creation_submenu())
     menu.append([4340], self._get_creation_submenu("public"))
     menu.append([4041], (self.server.write_line, "quit"))
     return menu
Exemple #4
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
Exemple #5
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
Exemple #6
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
Exemple #7
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()
Exemple #8
0
 def make_menu(self):
     menu = Menu()
     for g in self.invitations:
         menu.append(mp.ACCEPT_INVITATION_FROM + g[1:],
                     (self.server.write_line, "register %s" % g[0]))
     menu.append(mp.START_A_GAME_ON, self._get_creation_submenu())
     menu.append(mp.START_A_PUBLIC_GAME_ON,
                 self._get_creation_submenu("public"))
     menu.append(mp.QUIT2, (self.server.write_line, "quit"))
     return menu
Exemple #9
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()
Exemple #10
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()
Exemple #11
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()
Exemple #12
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()
Exemple #13
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
Exemple #14
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
Exemple #15
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
Exemple #16
0
 def build_training_menu_after_map(self):
     menu = Menu()
     if len(self.players) < self.map.nb_players_max:
         menu.append([4058, 4258], (self.training_menu_invite, "easy"))
         menu.append([4058, 4257],
                     (self.training_menu_invite, "aggressive"))
     if len(self.players) >= self.map.nb_players_min:
         menu.append([4059], self.start_training_game)
     for pn, (p, pr) in enumerate(zip(self.players, self.factions)):
         self._add_faction_menu(menu, pn, p, pr)
     menu.append([4048, 4060], END_LOOP)
     return menu
Exemple #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
Exemple #18
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()
Exemple #19
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()
Exemple #20
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()
Exemple #21
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()
Exemple #22
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()
Exemple #23
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()
Exemple #24
0
 def build_training_menu_after_map(self):
     menu = Menu()
     if len(self.players) < self.map.nb_players_max:
         menu.append([4058, 4258], (self.training_menu_invite, "easy"))
         menu.append([4058, 4257], (self.training_menu_invite,
                                    "aggressive"))
     if len(self.players) >= self.map.nb_players_min:
         menu.append([4059], self.start_training_game)
     for pn, (p, pr) in enumerate(zip(self.players, self.factions)):
         self._add_faction_menu(menu, pn, p, pr)
     menu.append([4048, 4060], END_LOOP)
     return menu
Exemple #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(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()
Exemple #26
0
def single_player_menu():
    Menu(
        mp.MAKE_A_SELECTION,
        [(c.title, c) for c in campaigns()] + [
            (mp.START_A_GAME_ON, TrainingMenu().run),
            #            (mp.RESTORE, restore_game),
            (mp.BACK, CLOSE_MENU),
        ]).loop()
Exemple #27
0
def options_menu():
    Menu(mp.OPTIONS_MENU, [
        (mp.MODIFY_LOGIN, modify_login),
        (mp.MODS, mods_menu),
        (mp.SOUNDPACKS, soundpacks_menu),
        (mp.OPEN_USER_FOLDER, open_user_folder),
        (mp.BACK, CLOSE_MENU),
    ]).loop()
Exemple #28
0
 def main(self):
     single_player_menu = Menu([4030],
         [(c.title, c) for c in campaigns()] +
         [
         ([4055], self.training_menu),
         ([4113], self.restore_game),
         ([4118], END_LOOP),
         ])
     server_menu = Menu([4043], [
         ([4044, 4045], (start_server_and_connect, "admin_only")),
         ([4046, 4047], (start_server_and_connect, "")),
         ([4121, 4122], (start_server_and_connect,
                         "admin_only no_metaserver")),
         ([4048], None),
         ])
     options_menu = Menu([4086], [
         ([4087], self.modify_login),
         ([4319], self.modify_default_mods),
         [[4323], self.manage_packages],
         ([4118], END_LOOP),
         ])
     main_menu = Menu([4029, 4030], [
         [[4031, 4032], single_player_menu.loop],
         [[4033, 4034], self.multiplayer_menu],
         [[4035, 4036], server_menu],
         [[4315], self.replay_menu],
         [[4037, 4038], options_menu.loop],
         [[4041, 4042], END_LOOP],
         ])
     if "connect_localhost" in sys.argv:
         connect_and_play()
     else:
         main_menu.loop()
Exemple #29
0
 def make_menu(self):
     menu = Menu()
     for g in self.invitations:
         menu.append([4053] + g[1:], (self.server.write_line, "register %s" % g[0]))
     menu.append([4055], self._get_creation_submenu())
     menu.append([4041], (self.server.write_line, "quit"))
     return menu
Exemple #30
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()
Exemple #31
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()
Exemple #32
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()
Exemple #33
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()
Exemple #34
0
def server_menu():
    Menu(mp.WHAT_KIND_OF_SERVER, [
        (mp.SIMPLE_SERVER, (start_server_and_connect, "admin_only"),
         mp.SIMPLE_SERVER_EXPLANATION),
        (mp.PUBLIC_SERVER,
         (start_server_and_connect, ""), mp.PUBLIC_SERVER_EXPLANATION),
        (mp.PRIVATE_SERVER,
         (start_server_and_connect,
          "admin_only no_metaserver"), mp.PRIVATE_SERVER_EXPLANATION),
        (mp.CANCEL, None),
    ]).run()
Exemple #35
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()
 def _create_game(self, args):
     n, title = args
     Menu([4055] + title, [
         ([4103], (self.server.write_line, "create %s 0.5" % n)),
         ([4104], (self.server.write_line, "create %s 1.0" % n)),
         ([4105] + nb2msg(2),
          (self.server.write_line, "create %s 2.0" % n)),
         ([4105] + nb2msg(4),
          (self.server.write_line, "create %s 4.0" % n)),
         ([4048], None),
     ],
          default_choice_index=1).run()  # XXX not a ServerMenu
Exemple #37
0
    def modify_default_mods(self):

        def available_mods():
            result = []
            for path in get_all_packages_paths():
                mods_path = os.path.join(path, "mods")
                for mod in os.listdir(mods_path):
                    if os.path.isdir(os.path.join(mods_path, mod)) \
                       and mod not in result and mod not in mods:
                        result.append(mod)
            return result

        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()

        def save():
            previous_mods = config.mods
            config.config_mods = ",".join(mods)
            config.mods = config.config_mods
            config.save()
            if config.mods != previous_mods:
                reload_all()
            return END_LOOP

        mods = []
        menu = Menu([4321]) # the list is empty
        menu.append([4320], (select_next_mod, menu))
        menu.append([4096], save)
        menu.append([4098], END_LOOP)
        menu.loop()
Exemple #38
0
 def main_menu():
     import version
     return Menu([
         "SoundRTS %s %s %s," %
         (version.VERSION, res.mods, res.soundpacks), 4030
     ], [
         [[4031, 4032], single_player_menu.loop],
         [[4033, 4034], self.multiplayer_menu],
         [[4035, 4036], server_menu],
         [[4315], self.replay_menu],
         [[4037, 4038], options_menu.loop],
         [[4337], launch_manual],
         [[4041, 4042], END_LOOP],
     ])
Exemple #39
0
def main_menu():
    Menu(["SoundRTS %s %s %s," % (VERSION, res.mods, res.soundpacks)] +
         mp.MAKE_A_SELECTION, [
             [
                 mp.SINGLE_PLAYER, single_player_menu,
                 mp.SINGLE_PLAYER_EXPLANATION
             ],
             [mp.MULTIPLAYER2, multiplayer_menu, mp.MULTIPLAYER2_EXPLANATION],
             [mp.SERVER, server_menu, mp.SERVER_EXPLANATION],
             [mp.OBSERVE_RECORDED_GAME, replay_menu],
             [mp.OPTIONS, options_menu, mp.OPTIONS_EXPLANATION],
             [mp.DOCUMENTATION, launch_manual],
             [mp.QUIT2, CLOSE_MENU, mp.QUIT2_EXPLANATION],
         ]).loop()
Exemple #40
0
 def _create_game(self, args):
     n, title, is_public = args
     Menu(title,
          [([4103], (self.server.write_line, "create %s 0.5 %s" %
          (n, is_public))),
           ([4104], (self.server.write_line, "create %s 1.0 %s" %
           (n, is_public))),
           ([4105] + nb2msg(2), (self.server.write_line, "create %s 2.0 %s" %
           (n, is_public))),
           ([4105] + nb2msg(4), (self.server.write_line, "create %s 4.0 %s" %
           (n, is_public))),
           ([4048], None),
           ],
          default_choice_index=1).run() # XXX not a ServerMenu
Exemple #41
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()
Exemple #42
0
    def _get_speed_submenu(self, args):
        n, title, is_public = args

        def create_with_speed(speed):
            s = "create %s %s %s" % (n, speed, is_public)
            return (self.server.write_line, s)

        Menu(title, [
            (mp.SET_SPEED_TO_SLOW, create_with_speed("0.5")),
            (mp.SET_SPEED_TO_NORMAL, create_with_speed("1.0")),
            (mp.SET_SPEED_TO_FAST + nb2msg(2), create_with_speed("2.0")),
            (mp.SET_SPEED_TO_FAST + nb2msg(4), create_with_speed("4.0")),
            (mp.CANCEL, None),
        ],
             default_choice_index=1).run()
Exemple #43
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()
Exemple #44
0
 def _defeat(self):
     menu = Menu([], [])
     menu.append([4266], self) # restart
     menu.append([4009], None) # cancel
     menu.run()
Exemple #45
0
 def _victory(self):
     menu = Menu([], [])
     menu.append([4011], self._get_next()) # continue
     menu.append([4009], None) # cancel
     menu.run()
Exemple #46
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()
Exemple #47
0
 def _build_players_menu(self):
     menu = Menu()
     if len(self._players) < self._map.nb_players_max:
         menu.append(mp.INVITE + mp.QUIET_COMPUTER, (self._add_ai, "easy"))
         menu.append(mp.INVITE + mp.AGGRESSIVE_COMPUTER,
                     (self._add_ai, "aggressive"))
         menu.append(mp.INVITE + mp.AGGRESSIVE_COMPUTER + nb2msg(2),
                     (self._add_ai, "ai2"))
     if len(self._players) >= self._map.nb_players_min:
         menu.append(mp.START, self._run_game)
     if len(self._map.factions) > 1:
         self._add_faction_menus(menu)
     menu.append(mp.CANCEL, CLOSE_MENU, mp.CANCEL_THIS_GAME)
     return menu
Exemple #48
0
 def _get_creation_submenu(self):
     menu = Menu([4055], remember="mapmenu")
     for n, m in enumerate(self.maps):
         menu.append(m, (self._create_game, (n, m)))
     menu.append([4048], None)
     return menu
Exemple #49
0
 def make_menu(self):
     menu = Menu(self.map.title)
     self._add_faction_menu(menu, *self._get_player())
     menu.append([4041, 4061], (self.server.write_line, "unregister"))
     return menu
Exemple #50
0
 def make_menu(self):
     menu = Menu(self.map.title)
     if len(self.registered_players) < self.map.nb_players_max:
         for p in self.available_players:
             menu.append([4058, p],
                         (self.server.write_line, "invite %s" % p))
         menu.append([4058, 4258], (self.server.write_line, "invite_easy"))
         menu.append([4058, 4257],
                     (self.server.write_line, "invite_aggressive"))
     if len(self.registered_players) >= self.map.nb_players_min:
         menu.append([4059], (self.server.write_line, "start"))
     for pn, (p, pa, pr) in enumerate(self.registered_players):
         pa = int(pa)
         for a in range(1, len(self.registered_players) + 1):
             if a != pa:
                 menu.append([4284, p, 4285] + nb2msg(a),
                             (self.server.write_line,
                              "move_to_alliance %s %s" % (pn, a)))
         if p in (self.server.login, "ai"):
             self._add_faction_menu(menu, pn, p, pr)
     menu.append([4048, 4060], (self.server.write_line, "cancel_game"))
     return menu
Exemple #51
0
 def __init__(self, server):
     self.server = server
     Menu.__init__(self)
Exemple #52
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()