예제 #1
0
 def __init__(self):
     self.gameModel = GameModel(0)
     self.aiPlayer = AIPlayer(Figures.circle, self.gameModel)
     self.play = Board(self.canvasClickCallback, self.startNewGame,
                       self.aiPlayer.setDifficultyToEasy,
                       self.aiPlayer.setDifficultyToHard,
                       self.gameModel.playFieldWidth,
                       self.gameModel.playfieldHeight)
     self.aiTurn = False
예제 #2
0
    def __init__(self):
        self.model = GameModel()
        root = Tk()
        root.minsize(width=900, height=650)
        root.title("Word Challenge")
        root.configure(background='#23B6C0')
        root.resizable(0, 0)
        self.root = root

        self.view = GameStartView(root)
        self.score = 0
        self.partial_score = 0  # score earned from current key word
        self.time_remaining = 120
        self.view.register_controller(self)
        self.view.pack()
예제 #3
0
    def victoryStuffs(self):
        self._status = VICTORY
        self.turnLbl[self.ind].text = 'Victory !'
        self.player[self.ind].makeShipsVisible()
        self.player[not self.ind].makeShipsVisible()

        pXY = self.player[self.ind].xy
        pWH = self.player[self.ind].wh
        wh = [reduceTo(pWH[0], 50), self.topPanelXY[1] - pXY[1] - pWH[1] - 10]
        xy = [(glb.wh[0] - wh[0]) // 2, pXY[1] + pWH[1] + 5]

        self.mainMenuButton = GameModel.GameModel(xy,
                                                  wh, [1, 1],
                                                  self.batch,
                                                  gPlayer,
                                                  mouseOverAud=True)
        mXY = self.mainMenuButton.xy
        mWH = self.mainMenuButton.wh

        mdl.quad(mXY,
                 mWH, [0, 159, 217, 180],
                 self.batch,
                 gFullQuad,
                 blend=True)
        mdl.quad([0, 0],
                 glb.wh, [0, 0, 0, 150],
                 self.batch,
                 gFullQuad,
                 blend=True)

        wh[1] = reduceTo(wh[1], 85)
        mdl.label(xy,
                  wh,
                  'Main Menu',
                  size=49,
                  batch=self.batch,
                  group=gHeaderText,
                  xyPercInside=[5, 20])
예제 #4
0
#! /usr/bin/python3

import pygame
import GameView
import GameController
import GameMenu
import GameModel

if __name__ == "__main__":
    pygame.mixer.pre_init(44100, -16, 2, 4096)
    pygame.mixer.init()
    pygame.init()
    gameModel = GameModel.GameModel()
    gameMenu = GameMenu.GameMenu()
    gameView = GameView.GameView(gameMenu.screen, gameModel)
    gameController = GameController.GameController(gameView, gameMenu)
    gameController.main_menu()
예제 #5
0
pygame.init()

# screen
screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
area = pygame.Rect(-BORDER_SIZE, -BORDER_SIZE, SCREEN_WIDTH + 2 * BORDER_SIZE,
                   SCREEN_HEIGHT + 2 * BORDER_SIZE)

# text
myFont30 = pygame.font.SysFont(None, 30)
myFont200 = pygame.font.SysFont(None, 200)
myFont100 = pygame.font.SysFont(None, 100)
pygame.display.set_caption("Asteroids")

mouseSprite = pygame.sprite.Sprite()

game = GameModel.GameModel(area, asteroidsNumber=ASTEROID_NUMBER)

player = AIPlayer.AIPlayer(game, "player")
clock = pygame.time.Clock()
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT or (event.type == pygame.KEYDOWN
                                         and event.key == pygame.K_ESCAPE):
            sys.exit()
        if game.isOver and (event.type == pygame.KEYDOWN
                            and event.key == pygame.K_RETURN):
            game.restart()
        if game.isOver and event.type == pygame.MOUSEBUTTONDOWN:
            game.restart()

    # update gameModel
예제 #6
0
    def __init__(self, parent):
        Frame.__init__(self, parent)
        self.model = GameModel()
        self.master = parent
        self.controller = None

        # Color values declared as constants
        self.COLOR_RANDOM_EMPTY = '#F8F8FF'  # background color of the labels for the keyword
        self.COLOR_ENTER_EMPTY = '#FFEBCD'  # background color of the labels for the letters entered
        self.COLOR_WORD_EMPTY = '#CCFFFF'  # background color of the labels for the keyword

        self.COLOR_RANDOM_FILLED = '#008B8B'
        self.COLOR_ENTER_FILLED = 'pink'
        self.COLOR_WORD_FILLED = '#191970'
        self.FS = 14  # font size of the letters

        #main frame
        s = Style()
        s.theme_use('alt')

        self.filename = Image.open('snowflakes.jpg')
        self.resized = self.filename.resize(
            (900, 650),
            Image.ANTIALIAS)  # resized image-gets the size of the whole frame
        self.resized2 = ImageTk.PhotoImage(
            self.resized)  #creates the photo image from the file
        self.back = Label(self, image=self.resized2,
                          anchor=CENTER)  #sets the image
        self.back.place(x=0, y=0, relheight=1, relwidth=1)
        self.back.pack(fill=BOTH, expand=YES)

        # array of labels for letters of the key word
        self.randomlet = []
        self.randomlet = self.labels(self, 0.05, 6, 500, 80, 150, 70,
                                     self.COLOR_RANDOM_FILLED, 25)

        # array of labels for letters entered
        self.enteredlet = []
        self.enteredlet = self.labels(self, 0.05, 6, 400, 80, 150, 70,
                                      self.COLOR_ENTER_EMPTY, 25)

        # LABELS ON VIEW
        #score
        self.score = Label(self,
                           text='Score: 0',
                           foreground='#223245',
                           background='#7dd4e4',
                           font=('Symbol', 22),
                           anchor=CENTER)
        self.score.pack()
        self.score.place(x=100,
                         y=525,
                         relwidth=0.13,
                         relheight=0.07,
                         anchor=CENTER)

        #timer
        self.timer = Label(self,
                           text="2:00",
                           background='#2929a3',
                           foreground='#ffffcc',
                           font=('Symbol', 22),
                           anchor=CENTER)
        self.timer.pack()
        self.timer.place(x=800,
                         y=525,
                         relwidth=0.13,
                         relheight=0.07,
                         anchor=CENTER)

        #feedback
        self.feedback = Label(self,
                              text='Some Feedback',
                              foreground='#223246',
                              background='#7dd4e4',
                              font=('Symbol', 16),
                              anchor=CENTER)
        self.feedback.pack()
        self.feedback.place(x=100,
                            y=430,
                            relwidth=0.17,
                            relheight=0.05,
                            anchor=CENTER)

        # BUTTONS ON VIEW

        # bstyle = Style()
        # bstyle.configure('B.TButton',background = 'red')

        # Enter button
        #  self.enter=Button(self, text = "enter", width = 6)
        #  self.enter.pack()
        #  self.enter.place(x = 400, y = 600, anchor = CENTER)
        #  self.enter.configure(style='B.TButton')

        # Shuffle button
        #  bstyle.configure('green.TButton',background = 'green')
        # self.shuffle=Button(self, text = "shuffle", width = 6)
        #self.shuffle.pack()
        #self.shuffle.configure(style = 'green.TButton')
        #self.shuffle.place(x = 500, y = 600, anchor = CENTER)

        # New button
        # self.getnew = Button(self, text = "New", width = 6)
        #      #   self.getnew = Button(self, text = "New", width = 6, command = self.end_game)
        # self.getnew.pack()
        # self.getnew.place(x = 600, y = 600, anchor = CENTER)

        # Start button
        # self.start = Button(self, text = "Start", width = 6)
        # self.start.pack()
        # self.start.place(x = 300, y = 600, anchor = CENTER)

        # fields that hold labels for words of each length
        self.words3 = []
        self.words4 = []
        self.words5 = []
        self.words6 = []

        # binding keys to buttons
        self.master.bind("<Return>", self.enter_function)
        self.master.bind("<space>", self.shuffle_function)
        self.master.bind("<BackSpace>", self.backspace_function)
        self.master.bind("<Tab>", self.get_new_key)
        self.master.bind("<Key>", self.key)
        self.pack()
예제 #7
0
def main():
    view = View()
    gameModel = GameModel()
    gameModel.view = view
예제 #8
0
import cocos
from model/game import GameModel
from view/game import GameModel
from controller/game import GameController

def get_scene()
	scene = cocos.scene.Scene()

	model = GameModel()
	view = GameView(model)
	controller = GameController(model)

	return scene