Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/game/CreditsState.py
blob: f049ad542ce47b9033b2d89bf4383c126f9e2aa5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# -*- coding: utf-8 -*-

import pygame
import MenuState
from api.GameState import CGameState
from api.Game import CGame
from api.Button import CButton
from api.Sprite2 import CSprite
from api.MultiLabel import CMultiLabel
import api.Image as Image

from assets.data import credits_data


class CCreditsState(CGameState):

    mBackground = None    
    mInstructions = None
    #mX = 10
    mButtonBack = None
        
    def init(self):
        CGameState.init(self)
        
        self.mBackground = Image.loadImage('assets/images/back_credits.png', False)
        CGame().setBackground(self.mBackground)
        
        self.mBsetted = False
        self.mNsetted = True
                
        self.mBackImageN = Image.loadImage('assets/images/back.png')
        self.mBackImageB = Image.loadImage('assets/images/back_big.png')
        
        self.mButtonBack = CSprite()
        self.mButtonBack.setRegistrationPointOffset(22, 22)
        self.mButtonBack.setXY(1170, 30)
        self.mButtonBack.setImage(self.mBackImageN)
        CGame().addChild(self.mButtonBack)
        
        text = ''
        for l in credits_data.CREDITS:
            text = text + '\n' + unicode(l, 'UTF-8')
        
        self.mCredits = CMultiLabel()
        self.mCredits.bgColor = (255, 125, 50)
        self.mCredits.font = pygame.font.Font('assets/fonts/DejaVuSans.ttf', 28)
        self.mCredits.set_center((600, 300))
        self.mCredits.set_size((600, 400))
        
        self.mCredits.set_text(text)
        CGame().addChild(self.mCredits)
        
        
    def update(self):
        #print "menu update"
        CGameState.update(self)
        
        if self.mButtonBack.mouseOver():
            if not(self.mBsetted):
                self.mBsetted = True
                self.mNsetted = False
                self.mButtonBack.setRegistrationPointOffset(27, 27)
                self.mButtonBack.setImage(self.mBackImageB)
        else:
            if not(self.mNsetted):
                self.mBsetted = False
                self.mNSetted = True
                self.mButtonBack.setRegistrationPointOffset(22, 22)
                self.mButtonBack.setImage(self.mBackImageN)
        
        if self.mButtonBack.clicked():
            print "clicked back......"
            ms = MenuState.CMenuState()
            CGame().setState(ms)
        
    def destroy(self):
        CGameState.destroy(self)
        CGame().removeChild(self.mButtonBack)
        CGame().removeChild(self.mCredits)
        self.mButtonBack = None
        self.mBackground = None
        #CGame().removeChild(self.mGlobe)
        print "CMenuState destroy"
        
    def doEvents(self, aEvent):
        print aEvent.type