Esempio n. 1
0
 def initialize(self):
     Game.initialize(self)
     self.set_background(color=(50, 90, 130))
     self.target = Target()
     #self.target.draw()
     self.count = Score(pos=(20, 30), label='Targets:')
     self.count.addPoints(5)
     self.score = Score(pos=(20, 60), label='Moves:')
     self.score.addPoints(10)
     self.player = InteractPenguin()
     self.player.penUp()
     self.sprites.add(self.player)
     self.moveTarget()
Esempio n. 2
0
class PracticeGame(Game):
    def initialize(self):
        Game.initialize(self)
        self.set_background(color=(50, 90, 130))
        self.target = Target()
        #self.target.draw()
        self.count = Score(pos=(20, 30), label='Targets:')
        self.count.addPoints(5)
        self.score = Score(pos=(20, 60), label='Moves:')
        self.score.addPoints(10)
        self.player = InteractPenguin()
        self.player.penUp()
        self.sprites.add(self.player)
        self.moveTarget()

    def moveTarget(self):
        self.target.poof()
        while self.player.rect.colliderect(self.target.rect):
            self.target.poof()

    def message(self, m):
        t = Drawable.String(self.window, m)
        p = CirclePath(duration=10)
        t.set_path(p)
        try:
            t.runPath()
        except:
            pass
        wait(2000)
        os._exit(0)

    def win(self):
        self.message('YOU WIN !')

    def lose(self):
        self.message('YOU LOSE !')

    def forward(self, dist):
        self.player.forward(dist)
        self.score.addPoints(-1)
        if not self.score.score.points:
            self.lose()
        self.mainloop(1)
        if self.player.rect.colliderect(self.target.rect):
            self.count.addPoints(-1)
            self.player.blink(5)
            if not self.count.score.points:
                self.win()
            self.moveTarget()
            self.mainloop(1)

    def backward(self, dist):
        self.forward(-dist)