コード例 #1
0
ファイル: match.py プロジェクト: kolanos/hockeyage
class Match(object):
    def __init__(self, show_events=False):
        self.show_events = show_events

        self.event = Event()

        self.home = Team('Calgary Flames', 'CGY')
        self.road = Team('Edmonton Oilers', 'EDM')

        self.period = Period()
        self.start_period()

    def start_period(self):
        self.period.next_period()
        self.clock = Clock(self.period)
        self.zone = Zone()
        self.possession = Possession()

        self.play = Play(self.home, self.road, self.zone, self.possession)

        self.event.add(self.period, self.clock, self.play(), self.zone)
        self.event.add(self.period, self.clock, self.play(), self.zone)

        while self.clock.running:
            self.next_event()

    def end_period(self):
        self.clock.end()
        self.event.add(self.period, self.clock, self.play.end(), self.zone)
        if self.period < 3:
            self.start_period()
        else:
            self.end_game()

    def next_event(self):
        self.clock.tick()

        self.home.lineup.lines.add_toi(self.clock.since_last_tick)
        self.road.lineup.lines.add_toi(self.clock.since_last_tick)

        if not self.clock.running:
            self.end_period()
        else:
            self.home.lineup.lines.line_change()
            self.road.lineup.lines.line_change()

            self.event.add(self.period,
                           self.clock,
                           self.play(),
                           self.zone)

    def end_game(self):
        if self.show_events:
            self.event.show()
コード例 #2
0
ファイル: match.py プロジェクト: kolanos/hockeyage
    def start_period(self):
        self.period.next_period()
        self.clock = Clock(self.period)
        self.zone = Zone()
        self.possession = Possession()

        self.play = Play(self.home, self.road, self.zone, self.possession)

        self.event.add(self.period, self.clock, self.play(), self.zone)
        self.event.add(self.period, self.clock, self.play(), self.zone)

        while self.clock.running:
            self.next_event()
コード例 #3
0
ファイル: match.py プロジェクト: kolanos/hockeyage
class Match(object):
    def __init__(self, show_events=False):
        self.show_events = show_events

        self.event = Event()

        self.home = Team('Calgary Flames', 'CGY')
        self.road = Team('Edmonton Oilers', 'EDM')

        self.period = Period()
        self.start_period()

    def start_period(self):
        self.period.next_period()
        self.clock = Clock(self.period)
        self.zone = Zone()
        self.possession = Possession()

        self.play = Play(self.home, self.road, self.zone, self.possession)

        self.event.add(self.period, self.clock, self.play(), self.zone)
        self.event.add(self.period, self.clock, self.play(), self.zone)

        while self.clock.running:
            self.next_event()

    def end_period(self):
        self.clock.end()
        self.event.add(self.period, self.clock, self.play.end(), self.zone)
        if self.period < 3:
            self.start_period()
        else:
            self.end_game()

    def next_event(self):
        self.clock.tick()

        self.home.lineup.lines.add_toi(self.clock.since_last_tick)
        self.road.lineup.lines.add_toi(self.clock.since_last_tick)

        if not self.clock.running:
            self.end_period()
        else:
            self.home.lineup.lines.line_change()
            self.road.lineup.lines.line_change()

            self.event.add(self.period, self.clock, self.play(), self.zone)

    def end_game(self):
        if self.show_events:
            self.event.show()
コード例 #4
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_tick():
    period = Period()
    clock = Clock(period)
    clock.tick()
    assert_true(clock.clock > 0)
    period = Period()
    clock = Clock(period)
    clock.tick(30)
    assert_equal(30, clock.clock)
コード例 #5
0
ファイル: match.py プロジェクト: kolanos/hockeyage
    def start_period(self):
        self.period.next_period()
        self.clock = Clock(self.period)
        self.zone = Zone()
        self.possession = Possession()

        self.play = Play(self.home, self.road, self.zone, self.possession)

        self.event.add(self.period, self.clock, self.play(), self.zone)
        self.event.add(self.period, self.clock, self.play(), self.zone)

        while self.clock.running:
            self.next_event()
コード例 #6
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_tick():
    period = Period()
    clock = Clock(period)
    clock.tick()
    assert_true(clock.clock > 0)
    period = Period()
    clock = Clock(period)
    clock.tick(30)
    assert_equal(30, clock.clock)
コード例 #7
0
ファイル: event_tests.py プロジェクト: kolanos/hockeyage
def test_add():
    event = Event()
    period = Period()
    clock = Clock(period)
    possession = Possession()
    zone = Zone()
    play = Start(None, None, zone, possession)
    event.add(period, clock, play, zone)
    assert_equal(1, event.event)
    assert_true(len(event.events) == 1)
    assert_equal(period.period, event.events[0]['period'])
    assert_equal('00:00', event.events[0]['elapsed'])
    assert_equal('20:00', event.events[0]['remaining'])
    assert_equal(play.name, event.events[0]['play'])
    assert_equal(zone.name, event.events[0]['zone'])
コード例 #8
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_elapsed():
    period = Period()
    clock = Clock(period)
    assert_equal('00:00', clock.elapsed)
    clock.tick(30)
    assert_equal('00:30', clock.elapsed)
コード例 #9
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_end():
    period = Period()
    clock = Clock(period)
    clock.end()
    assert_true(clock.clock == clock.total_time)
コード例 #10
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_remaining():
    period = Period()
    clock = Clock(period)
    assert_equal('20:00', clock.remaining)
    clock.tick(30)
    assert_equal('19:30', clock.remaining)
コード例 #11
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_elapsed():
    period = Period()
    clock = Clock(period)
    assert_equal('00:00', clock.elapsed)
    clock.tick(30)
    assert_equal('00:30', clock.elapsed)
コード例 #12
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_running():
    period = Period()
    clock = Clock(period)
    assert_true(clock.running)
コード例 #13
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_end():
    period = Period()
    clock = Clock(period)
    clock.end()
    assert_true(clock.clock == clock.total_time)
コード例 #14
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_init():
    period = Period()
    clock = Clock(period)
    assert_equal(0, clock.clock)
    assert_equal(0, clock.last_tick)
    assert_equal(1200, clock.total_time)
コード例 #15
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_remaining():
    period = Period()
    clock = Clock(period)
    assert_equal('20:00', clock.remaining)
    clock.tick(30)
    assert_equal('19:30', clock.remaining)
コード例 #16
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_since_last_tick():
    period = Period()
    clock = Clock(period)
    clock.tick(30)
    assert_equal(30, clock.since_last_tick)
コード例 #17
0
ファイル: clock_tests.py プロジェクト: kolanos/hockeyage
def test_since_last_tick():
    period = Period()
    clock = Clock(period)
    clock.tick(30)
    assert_equal(30, clock.since_last_tick)