Esempio n. 1
0
def set_time_limit(connection, duration):
    """
    Set this game time limit
    /timelimit <duration>
    """
    limit = cast_duration(duration)
    span = prettify_timespan(limit)
    protocol = connection.protocol
    # takes time in minutes
    protocol.set_time_limit(limit / 60)
    protocol.send_chat('Time limit set to {}'.format(span), irc=True)
Esempio n. 2
0
bans_urls = bans_config.option('urls', [])
respawn_time_option = config.option('respawn_time',
                                    default="8sec",
                                    cast=cast_duration)
respawn_waves = config.option('respawn_waves', default=False)
game_mode = config.option('game_mode', default='ctf')
random_rotation = config.option('random_rotation', default=False)
passwords = config.option('passwords', default={})
logfile = logging_config.option('logfile', default='./logs/log.txt')
loglevel = logging_config.option('loglevel', default='info')
map_rotation = config.option('rotation',
                             default=['classicgen', 'random'],
                             validate=lambda x: isinstance(x, list))
default_time_limit = config.option('default_time_limit',
                                   default="20min",
                                   cast=lambda x: cast_duration(x) / 60)
cap_limit = config.option('cap_limit',
                          default=10,
                          validate=lambda x: isinstance(x, (int, float)))
advance_on_win = config.option('advance_on_win',
                               default=False,
                               validate=lambda x: isinstance(x, bool))
team1_name = team1_config.option('name',
                                 default='Blue',
                                 validate=validate_team_name)
team2_name = team2_config.option('name',
                                 default='Green',
                                 validate=validate_team_name)
team1_color = team1_config.option('color', default=(0, 0, 196))
team2_color = team2_config.option('color', default=(0, 196, 0))
friendly_fire = config.option('friendly_fire', default=False)
Esempio n. 3
0
from pyspades.common import prettify_timespan
from piqueserver.map import check_rotation
from piqueserver.scheduler import Scheduler
from piqueserver.commands import command
from piqueserver.config import config, cast_duration

votemap_config = config.section('votemap')

VOTEMAP_AUTOSCHEDULE_OPTION = votemap_config.option('autoschedule', 180)
VOTEMAP_PUBLIC_VOTES_OPTION = votemap_config.option('public_votes', True)
# godwhoa: This option gets loaded into votemap_time but that doesn't get used anywhere.
VOTEMAP_TIME_OPTION = votemap_config.option('time',
                                            default="2min",
                                            cast=cast_duration)
VOTEMAP_EXTENSION_TIME_OPTION = votemap_config.option(
    'extension_time', default="15min", cast=lambda x: cast_duration(x) / 60)
VOTEMAP_PLAYER_DRIVEN_OPTION = votemap_config.option('player_driven', False)
VOTEMAP_PERCENTAGE_OPTION = votemap_config.option('percentage', 80)


def cancel_verify(connection, instigator):
    return (connection.admin or connection is instigator
            or connection.rights.cancel)


class VoteMap(object):
    extension_time = 0.0
    public_votes = True
    instigator = None
    protocol = None
Esempio n. 4
0
bans_file = bans_config.option('file', default='bans.txt')
bans_urls = bans_config.option('urls', [])
respawn_time_option = config.option(
    'respawn_time', default="8sec", cast=cast_duration)
respawn_waves = config.option('respawn_waves', default=False)
game_mode = config.option('game_mode', default='ctf')
random_rotation = config.option('random_rotation', default=False)
passwords = config.option('passwords', default={})
logfile = logging_config.option('logfile', default='./logs/log.txt')
loglevel = logging_config.option('loglevel', default='info')
map_rotation = config.option('rotation', default=['classicgen', 'random'],
                             validate=lambda x: isinstance(x, list))
default_time_limit = config.option(
    'default_time_limit', default="20min",
    cast=lambda x: cast_duration(x)/60)
cap_limit = config.option('cap_limit', default=10,
                          validate=lambda x: isinstance(x, (int, float)))
advance_on_win = config.option('advance_on_win', default=False,
                               validate=lambda x: isinstance(x, bool))
everyone_is_admin = config.option('everyone_is_admin', default=False,
                               validate=lambda x: isinstance(x, bool))
team1_name = team1_config.option(
    'name', default='Blue', validate=validate_team_name)
team2_name = team2_config.option(
    'name', default='Green', validate=validate_team_name)
team1_color = team1_config.option('color', default=(0, 0, 196))
team2_color = team2_config.option('color', default=(0, 196, 0))
friendly_fire = config.option('friendly_fire', default=False)
friendly_fire_on_grief = config.option('friendly_fire_on_grief',
                                       default=True)