from engine import * ##from model import * import time import pygame import random class test_state(model.abstract_gamestate): def __init__(self): self.image = misc.load_image("ball.bmp") self.positions = [] def draw(self, screen): for dest in self.positions: screen.blit(self.image, dest) def key_pressed(self, key): if key == pygame.locals.K_SPACE: self.quit() elif key == pygame.locals.K_a: self.positions.append((random.randint(0,640), random.randint(0,480))) def mouse_moved(self, pos): self.positions.append(pos) def mouse_pressed(self,pos): self.set_state(next_state()) class next_state(model.abstract_gamestate): def draw(self, screen): pass def key_pressed(self, key): if key == pygame.locals.K_SPACE: self.set_state(test_state()) def main(): ## Viktigt: VYN måste initeras först, state SIST. breakout_events = event_manager() breakout_view = view.view(640,480,"Test",False) breakout_view.set_event_manager(breakout_events) breakout_clock = controller.clock(30) breakout_clock.set_event_handler(breakout_events) bo_input = controller.input() bo_input.set_event_handler(breakout_events) bo_model = model.model() bo_model.set_event_handler(breakout_events) breakout_events.add_listener(bo_input) breakout_events.add_listener(breakout_clock) breakout_events.add_listener(breakout_view) breakout_events.add_listener(bo_model) bo_ingame = test_state() bo_model.set_state(bo_ingame) breakout_clock.run() main()