コード例 #1
0
ファイル: randomSelect.py プロジェクト: szostki/randomSelect
def demo(screen):
    # Typical terminals are 80x24 on UNIX and 80x25 on Windows
    f = Figlet(font='slant')

    effects = [
        Cog(screen, 20, 10, 10),
        Cog(screen, 60, 25, 15, direction=-1),
        Print(screen,
              FigletText(f.renderText(secure_random.choice(autoTeam)),
                         font="term"),
              x=45,
              y=22,
              start_frame=60)
    ]

    effects.append(
        Print(screen,
              FigletText(f.renderText('Super team na dzis:'), font='term'),
              x=90,
              y=int(0)))
    currentMemberIndex = 1
    for member in autoTeam:
        effects.append(
            Print(screen,
                  FigletText(f.renderText(member), font='term'),
                  x=120,
                  y=int(7 * currentMemberIndex) + 2))
        currentMemberIndex += 1

    screen.play([Scene(effects, -1)], stop_on_resize=True)
コード例 #2
0
def demo(screen):
    # Typical terminals are 80x24 on UNIX and 80x25 on Windows
    if screen.width != 80 or screen.height not in (24, 25):
        effects = [
            Print(screen,
                  FigletText("Resize to 80x24"),
                  y=screen.height // 2 - 3),
        ]
    else:
        effects = [
            Cog(screen, 20, 10, 10),
            Cog(screen, 60, 30, 15, direction=-1),
            Print(screen,
                  FigletText("ascii", font="smkeyboard"),
                  attr=Screen.A_BOLD,
                  x=47,
                  y=3,
                  start_frame=50),
            Print(screen,
                  FigletText("matics", font="smkeyboard"),
                  attr=Screen.A_BOLD,
                  x=45,
                  y=7,
                  start_frame=100),
            Print(screen,
                  FigletText("by Peter Brittain", font="term"),
                  x=8,
                  y=22,
                  start_frame=150)
        ]
    screen.play([Scene(effects, -1)], stop_on_resize=True)
コード例 #3
0
ファイル: test_effects.py プロジェクト: zed/asciimatics
    def test_cog(self):
        """
        Check that Cog works.
        """
        # Check that Cog updates the Screen every other frame.
        screen = MagicMock(spec=Screen, colours=8, unicode_aware=False)
        canvas = Canvas(screen, 10, 40, 0, 0)
        effect = Cog(canvas, 10, 5, 5)
        effect.reset()
        self.assert_blank(canvas)
        my_buffer = [[(32, 7, 0, 0) for _ in range(40)] for _ in range(10)]
        for i in range(20):
            effect.update(i)
            self.assertEqual(self.check_canvas(
                canvas,
                my_buffer,
                lambda value: self.assertIn(
                    chr(value[0]), " ''^.|/7.\\|Ywbd#")),
                i % 2 == 0)

        # Check there is no stop frame by default.
        self.assertEqual(effect.stop_frame, 0)

        # This effect should ignore events.
        event = object()
        self.assertEqual(event, effect.process_event(event))
コード例 #4
0
ファイル: test.py プロジェクト: sdfs1231/ICS
 def __init__(self, screen, x, y):
     super(AnimationFrame, self).__init__(screen,
                                          width=screen.width // 2,
                                          height=screen.height // 2,
                                          name="Clock",
                                          can_scroll=False,
                                          x=x,
                                          y=y)
     self.set_theme("bright")
     #effects=[]add effect one by one
     self.add_effect(Cog(self._canvas, 0, 0, self._canvas.width // 4), )
     self.add_effect(
         Cog(self._canvas,
             self._canvas.width,
             self._canvas.height,
             self._canvas.width // 4,
             direction=-1))
     self.set_theme("bright")
     self.fix()
コード例 #5
0
    def test_cog(self):
        """
        Check that Cog works.
        """
        # Check that Cog updates the Screen every other frame.
        screen = MagicMock(spec=Screen, colours=8, unicode_aware=False)
        canvas = Canvas(screen, 10, 40, 0, 0)
        effect = Cog(canvas, 10, 5, 5)
        effect.reset()
        self.assert_blank(canvas)
        my_buffer = [[(32, 7, 0, 0) for _ in range(40)] for _ in range(10)]
        for i in range(20):
            effect.update(i)
            self.assertEqual(self.check_canvas(
                canvas,
                my_buffer,
                lambda value: self.assertIn(
                    chr(value[0]), " ''^.|/7.\\|Ywbd#")),
                i % 2 == 0)

        # Check there is no stop frame by default.
        self.assertEqual(effect.stop_frame, 0)

        # This effect should ignore events.
        event = object()
        self.assertEqual(event, effect.process_event(event))
コード例 #6
0
ファイル: test_effects.py プロジェクト: rijalati/asciimatics
    def test_cog(self):
        """
        Check that Cog works.
        """
        # Check that Cog updates the Screen every other frame.
        screen = MagicMock(spec=Screen, colours=8)
        canvas = Canvas(screen, 10, 40, 0, 0)
        effect = Cog(canvas, 10, 5, 5)
        effect.reset()
        self.assert_blank(canvas)
        buffer = [[(32, 7, 0, 0) for _ in range(40)] for _ in range(10)]
        for i in range(20):
            effect.update(i)
            self.assertEqual(self.check_canvas(
                canvas,
                buffer,
                lambda value: self.assertIn(
                    chr(value[0]), " ''^.|/7.\\|Ywbd#")),
                i % 2 == 0)

        # Check there is no stop frame by default.
        self.assertEqual(effect.stop_frame, 0)
コード例 #7
0
ファイル: test_effects.py プロジェクト: antmd/asciimatics
    def test_cog(self):
        """
        Check that Cog works.
        """
        # Check that Cog updates the Screen every other frame.
        screen = MagicMock(spec=Screen, colours=8)
        canvas = Canvas(screen, 10, 40, 0, 0)
        effect = Cog(canvas, 10, 5, 5)
        effect.reset()
        self.assert_blank(canvas)
        buffer = [[(32, 7, 0, 0) for _ in range(40)] for _ in range(10)]
        for i in range(20):
            effect.update(i)
            self.assertEqual(
                self.check_canvas(
                    canvas, buffer, lambda value: self.assertIn(
                        chr(value[0]), " ''^.|/7.\\|Ywbd#")), i % 2 == 0)

        # Check there is no stop frame by default.
        self.assertEqual(effect.stop_frame, 0)
コード例 #8
0
    def demo(screen):
        scenes = []

        # scene 1: splash screen
        effects = [
            Print(
                screen,
                FigletText("YAHTZOTRON", font="starwars"),
                int(screen.height / 2 - 8),
                transparent=False,
                speed=1,
            ),
            Print(
                screen,
                StaticRenderer(
                    ["The friendly robot that beats you in Yahtzee"]),
                int(screen.height / 2),
                speed=1,
            ),
            Cog(screen, 5, screen.height - 5, 8, colour=screen.COLOUR_YELLOW),
            Cog(
                screen,
                screen.width - 5,
                screen.height - 5,
                8,
                direction=-1,
                colour=screen.COLOUR_YELLOW,
            ),
            Stars(screen, 200),
            Print(
                screen,
                StaticRenderer(["🤖   🎲 🎲 🎲 🎲 🎲   🤖"]),
                int(screen.height / 2 + 4),
                speed=1,
            ),
        ]
        scenes.append(Scene(effects, 100))

        # scene 2: origin story
        effects = [
            Print(screen, StaticRenderer([lab_left]), x=5, y=0, speed=1),
            Print(screen, StaticRenderer([robot]), x=20, y=0, speed=1),
            Print(screen, StaticRenderer([man_standing]), x=40, y=0, speed=1),
            Print(screen, StaticRenderer([lab_right]), x=52, y=0, speed=1),
            Flash(screen, 25, duration=3, start_frame=25, stop_frame=35),
            Flash(screen, 30, duration=2, start_frame=30, stop_frame=35),
            Print(
                screen,
                StaticRenderer(["● ●"]),
                x=25,
                y=3,
                colour=screen.COLOUR_YELLOW,
                start_frame=30,
            ),
            Print(
                screen,
                SpeechBubble("It's alive!"),
                x=40,
                y=13,
                start_frame=50,
                stop_frame=75,
                clear=True,
                speed=1,
            ),
            Print(
                screen,
                SpeechBubble("State your prime directive"),
                x=35,
                y=13,
                start_frame=90,
                stop_frame=130,
                clear=True,
            ),
            Print(
                screen,
                SpeechBubble("T O . . . R O L L"),
                x=15,
                y=13,
                start_frame=150,
                clear=True,
                speed=1,
            ),
        ]
        scenes.append(Scene(effects, 200))

        screen.play(scenes, repeat=False, stop_on_resize=True)