コード例 #1
0
    def run(self, game, state_stack):

        #set music
        pygame.mixer.music.stop()
        pygame.mixer.music.load('scene2.wav')

        """Starts the cutscene"""
        clock = pygame.time.Clock()
        self.game = game
        game.set_state_time()
        scene = rabbyt.Sprite("1space.png")
        scene.scale = 2.0
        scene.x = 400
        rabbit = rabbyt.Sprite("1rabbit.png")
        self.state_stack = state_stack
        #scene.alpha = rabbyt.lerp(0.0, 0.8, startt=1, endt=30)
        #scene.x = rabbyt.lerp(-20, 60, startt=1, endt=6)

        rabbit.alpha = rabbyt.lerp(0.0, 1.0, startt=3, endt=5)
        rabbit.scale = 0.5
        #rabbit.xy = (60,-60)

        words = FontSprite(game.font, "Dimensional Rabbit: ZzZzz ...")
        words.alpha = rabbyt.lerp(0.0, 1.0, startt=3, endt=5)
        words.y = -250
        words.x = -180
	self.music_started = False

        
        game.done = False
        while not game.done:
            clock.tick(40)
            rabbyt.clear()
            scene.render()
            rabbyt.set_time(game.get_ticks()/1000.0)
            ticks = game.get_ticks()/1000.0
            if ticks >= 3:
		if not self.music_started:
        	    pygame.mixer.music.play()
		    self.music_started = True
                words.render()
                rabbit.render()
            if ticks >= 5 and ticks < 7:
                words.x = -200
                words.text = "Dimensional Rabbit: ZZzzZ ZZzz ..."
            elif ticks >= 7 and ticks < 9:
                words.text = "Dimensional Rabbit: Oh!"
                words.x = -160
            elif ticks >= 9 and ticks < 11:
                words.text = "Dimensional Rabbit: I didn't think ..."
                words.x = -240
            elif ticks >= 11 and ticks < 13:
                words.text = "Dimensional Rabbit: ..." + \
                             " anybody would make it this far"
                words.x = -330
            elif ticks >= 13 and ticks < 17:
                words.text = "Dimensional Rabbit: Pardon me, you look lost."
                words.x = -270
            elif ticks >= 17 and ticks < 21:
                words.text = "Scientist: I know exactly where I'm going."
                words.x = -250
            elif ticks >= 21 and ticks < 25:
                words.text = "Dimensional Rabbit: Then you won't be " + \
                             "needing help from me."
                words.x = -385
            elif ticks >= 25 and ticks < 29:
                words.text = "Dimensional Rabbit: Tata!"
                words.x = -160
                rabbit.alpha = rabbyt.lerp(1.0, 0.0, startt=25, endt=29)
            elif ticks >= 29:
                words.text = "Scientist: ..."
                words.x = -100
                scene.alpha = rabbyt.lerp(1.0, 0.0, startt=29, endt=33)
            if ticks >= 33:
                game.done = True
                self.set_next_state()

            for event in pygame.event.get():
                if event.type ==  QUIT:
                    game.done = True
                    fdata = open("RabbitHighScores", 'w')
                    for i in range(5):
                        fdata.write(game.high_score_names[i] +  \
                                    " " + str(game.high_scores[i]) + "\n")
                if event.type == KEYDOWN:
                    if event.key == K_ESCAPE or event.key == K_RETURN:
                        game.done = True
                        self.set_next_state()
                elif event.type == pygame.JOYBUTTONDOWN and game.joystick.get_button(game.controls.settings["Escape"]):
                    game.done = True
                    self.set_next_state()
            pygame.display.flip()
コード例 #2
0
    def run(self, game, state_stack):
        """Starts the cutscene"""
        clock = pygame.time.Clock()
        self.game = game
        game.set_state_time()
        scene = rabbyt.Sprite("1space.png")
        scene.scale = 2.0
        scene.x = 400
        rabbit = rabbyt.Sprite("1rabbit.png")
        self.state_stack = state_stack
        # scene.alpha = rabbyt.lerp(0.0, 0.8, startt=1, endt=30)
        # scene.x = rabbyt.lerp(-20, 60, startt=1, endt=6)

        rabbit.alpha = rabbyt.lerp(0.0, 1.0, startt=3, endt=5)
        rabbit.scale = 0.5
        # rabbit.xy = (60,-60)

        words = FontSprite(game.font, "Dimensional Rabbit: Oh ...")
        words.alpha = rabbyt.lerp(0.0, 1.0, startt=3, endt=5)
        words.y = -250
        words.x = -180

        # set music
        pygame.mixer.music.stop()
        pygame.mixer.music.load("scene4.wav")
        self.music_started = False

        game.done = False
        while not game.done:
            clock.tick(40)
            rabbyt.clear()
            scene.render()
            rabbyt.set_time(game.get_ticks() / 1000.0)
            ticks = game.get_ticks() / 1000.0
            if ticks >= 3:
                if not self.music_started:
                    pygame.mixer.music.play()
                    self.music_started = True
                words.render()
                rabbit.render()
            if ticks >= 5 and ticks < 7:
                words.x = -200
                words.text = "Dimensional Rabbit: It's you again ..."
            elif ticks >= 7 and ticks < 11:
                words.text = "Scientist: THAT WAS THE WRONG TIME"
                words.x = -240
            elif ticks >= 11 and ticks < 15:
                words.text = "Scientist: WHY'D you lead me to WW2?!"
                words.x = -250
            elif ticks >= 15 and ticks < 19:
                words.text = "Dimensional Rabbit: So I was off" + " by like 500 years."
                words.x = -315
            elif ticks >= 19 and ticks < 23:
                words.text = "Dimensional Rabbit: Do you know how many " + "portals there are"
                words.x = -380
            elif ticks >= 23 and ticks < 27:
                words.text = "Dimensional Rabbit: in this place?"
                words.x = -200
            elif ticks >= 27 and ticks < 31:
                words.text = "Scientist: Well can you tell me where now?"
                words.x = -250
            elif ticks >= 31 and ticks < 35:
                words.text = "Dimensional Rabbit: Yeah it's this one " + "for sure."
                words.x = -305
            elif ticks >= 35 and ticks < 39:
                words.text = "Dimensional Rabbit: Sorry about the mix up. Good luck!"
                words.x = -350
                rabbit.alpha = rabbyt.lerp(1.0, 0.0, startt=25, endt=29)
            elif ticks >= 40:
                words.text = "Scientist: I hope you're right this time!"
                words.x = -200
                scene.alpha = rabbyt.lerp(1.0, 0.0, startt=29, endt=33)
            if ticks >= 37:
                game.done = True
                self.set_next_state()

            for event in pygame.event.get():
                if event.type == QUIT:
                    game.done = True
                    fdata = open("RabbitHighScores", "w")
                    for i in range(5):
                        fdata.write(game.high_score_names[i] + " " + str(game.high_scores[i]) + "\n")
                if event.type == KEYDOWN:
                    if event.key == K_ESCAPE or event.key == K_RETURN:
                        game.done = True
                        self.set_next_state()
                elif event.type == pygame.JOYBUTTONDOWN and game.joystick.get_button(game.controls.settings["Escape"]):
                    game.done = True
                    self.set_next_state()
            pygame.display.flip()