Changeset 50
- Timestamp:
- 04/05/08 11:04:27 (8 months ago)
- Location:
- muckaround/blobworld
- Files:
-
- 2 added
- 3 modified
-
source/blobs.py (added)
-
source/game.py (modified) (3 diffs)
-
source/level.py (modified) (2 diffs)
-
source/player.py (added)
-
test.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
muckaround/blobworld/source/game.py
r48 r50 1 import random 2 1 3 from video import Video 2 4 from level import Level 5 from player import HumanPlayer, ComputerPlayer 6 from blobs import Blob 3 7 4 8 from pyglet.gl import * 9 10 11 def rand_pos(max_x, max_y): 12 return (random.uniform(0, max_x), random.uniform(0, max_y)) 13 5 14 6 15 class Game(object): … … 10 19 self.video = None 11 20 self.level = None 21 self.human = None 22 self.renderable = True 23 self.players = [] 24 25 def spawn_players(self): 26 # Hard code to 1HUMAN v 1CPU 27 human = HumanPlayer(self, 'human') 28 self.players.append(human) 29 self.human = human 30 self.players.append(ComputerPlayer(self, 'computer')) 31 32 for p in self.players: 33 self.add_blob(p, rand_pos(self.level.width, self.level.height), 5) 34 12 35 13 36 def init_video(self): … … 24 47 25 48 def on_mouse_press(self, x, y, button, modifiers): 26 self.level.add_blob((x, y), 10) 49 self.add_blob(self.human, (x, y), 10) 50 51 def add_blob(self, owner, pos, radius): 52 blob = Blob(self, owner, pos, radius) 53 self.level.add_blob(blob) 54 owner.inform_blob_ownership(blob) 27 55 28 56 def render(self): -
muckaround/blobworld/source/level.py
r48 r50 6 6 from blobs import Blob 7 7 8 8 9 class Level(object): 9 10 10 def __init__(self, game ):11 def __init__(self, game, width, height): 11 12 self.game = game 13 self.width = width 14 self.height = height 12 15 self.blobs = [] 13 16 … … 16 19 b.think(dt) 17 20 18 def add_blob(self, pos, radius): 19 b = Blob(pos, radius) 20 self.blobs.append(b) 21 def add_blob(self, blob): 22 self.blobs.append(blob) 21 23 22 24 23 25 class LevelRenderable(Level): 24 26 25 def __init__(self, game ):26 Level.__init__(self, game )27 def __init__(self, game, *args, **kwargs): 28 Level.__init__(self, game, *args, **kwargs) 27 29 self.video = game.video 28 30 -
muckaround/blobworld/test.py
r48 r50 12 12 game = Game() 13 13 game.init_video() 14 game.level = LevelRenderable(game) 14 game.level = LevelRenderable(game, 800, 600) 15 game.spawn_players() 15 16 16 17 last_think = time.time() … … 18 19 fr = 1. / 30 19 20 frames = 0 20 21 for a in xrange(100):22 game.level.add_blob((random.random() * 640, random.random() * 480), 1)23 21 24 22 while not game.video.window.has_exit: