Esempio n. 1
0
def parse_args_modify(args, race_info):
    set_seed = False    #keep track of whether we've found args for each field
    set_seeded = False  
    set_char = False
    set_desc = False
    set_sd = False
    set_fp = False

    while args:
        next_cmd_args = clparse.pop_command(args)
        if not next_cmd_args:
            next_cmd_args.append(args[0])
            args.pop(0)
            
        if _parse_seed(next_cmd_args, race_info):
            if set_seed:
                return None
            else:
                set_seed = True
        elif _parse_seeded(next_cmd_args, race_info):
            if set_seeded:
                return None
            else:
                set_seeded = True
        elif _parse_char(next_cmd_args, race_info):
            if set_char:
                return None
            else:
                set_char = True
##        elif parse_sudden_death(args, race_info):
##            if set_sd:
##                return False
##            else:
##                set_seeded = True
##        elif parse_flagplant(args, race_info):
##            if set_fp:
##                return False
##            else:
##                set_seeded = True
        elif _parse_desc(next_cmd_args, race_info):
            if set_desc:
                return None
            else:
                set_desc = True
        else:
            return None

    if race_info.seeded:
        race_info.seed_fixed = set_seed
        if not set_seed:
            race_info.seed = seedgen.get_new_seed()
    elif set_seed and set_seeded: #user set a seed and asked for unseeded, so throw up our hands
        return None
    elif set_seed:
        race_info.seeded = True

    return race_info    
Esempio n. 2
0
def parse_args(args):
    #user_prefs is a list of preferences we should change
    user_prefs = UserPrefs()

    while args:
        next_cmd_args = clparse.pop_command(args)
        if not next_cmd_args:
            next_cmd_args.append(args[0])
            args.pop(0)

        #Parse each possible command
        _parse_show_spoilerchat(next_cmd_args, user_prefs)
        _parse_daily_alert(next_cmd_args, user_prefs)
        _parse_race_alert(next_cmd_args, user_prefs)
    #end while

    return user_prefs