root/traintris/tutorial.py @ 299

Revision 299, 2.4 KB (checked in by andefodahl, 2 years ago)

Tutorial done?

Line 
1import pygame
2from constants import *
3from comments import *
4from constants import *
5from graphics import *
6from eventmanager import *
7from button import *
8
9class Tutorial:
10    """ A class that is the wrapper for the tutorial of the game. """
11   
12    def __init__(self, screen, evManager):
13        self.evManager = evManager
14        self.evManager.RegisterListener(self)
15        self.comments = Comments().comments
16        self.counter = 1
17        self.buttonList = []
18        self.screen = screen
19        self.graphics = Graphics(screen)
20        print "Here"
21        self.buttonList.append(Button("Continue", "menubutton", (195,85), (self.screen.get_width()/2 + 120, self.screen.get_height()/2 + 110), CONSTANTS.CATEGORY))
22        for button in self.buttonList:
23            self.graphics.drawButton(button.text, button.size, button.images, button.mode, button.pos)
24            print "here"
25        self.continueTutorial()
26   
27    def continueTutorial(self):
28        self.graphics.drawDialogBox(self.comments["tutorial" + str(self.counter)], self.comments["tutorial" + str(self.counter+1)], pygame.Color("black"))
29        print self.comments["tutorial" + str(self.counter)]
30        print self.comments["tutorial" + str(self.counter+1)]
31        for button in self.buttonList:
32            self.graphics.drawButton(button.text, button.size, button.images, button.mode, button.pos)
33        pygame.display.update()
34       
35   
36    def Notify(self, event):
37        if isinstance(event, MouseClickEvent):
38            for button in self.buttonList:
39                if button.mode != CONSTANTS.DEPRESSED:
40                    if event.x > button.pos[0] and event.x < button.pos[0]+button.size[0] \
41                    and event.y > button.pos[1] and event.y < button.pos[1]+button.size[1] \
42                    and event.type == 'up':
43                        if button.type == CONSTANTS.CATEGORY and self.counter < 13:
44                            print "Here as well"
45                            self.counter += 2
46                            self.continueTutorial()
47                        elif button.type == CONSTANTS.CATEGORY and self.counter > 12:
48                            ev = TutorialEnd()
49                            self.evManager.Post(ev)
50                        button.mode = CONSTANTS.HOVER
51                    else:
52                        button.mode = CONSTANTS.NEUTRAL
Note: See TracBrowser for help on using the browser.