Mercurial > boomslang
comparison gamelib/state.py @ 35:ebc76bc0c067
First item!
author | Simon Cross <hodgestar+bzr@gmail.com> |
---|---|
date | Sun, 22 Aug 2010 20:05:37 +0200 |
parents | e5c043aeed65 |
children | 088a101f5b94 |
comparison
equal
deleted
inserted
replaced
34:e5c043aeed65 | 35:ebc76bc0c067 |
---|---|
33 | 33 |
34 def add_scene(self, scene): | 34 def add_scene(self, scene): |
35 self.scenes[scene.name] = scene | 35 self.scenes[scene.name] = scene |
36 | 36 |
37 def add_item(self, item): | 37 def add_item(self, item): |
38 self.scenes[item.name] = item | 38 self.items[item.name] = item |
39 | 39 |
40 def load_scenes(self, modname): | 40 def load_scenes(self, modname): |
41 mod = __import__("gamelib.scenes.%s" % (modname,), fromlist=[modname]) | 41 mod = __import__("gamelib.scenes.%s" % (modname,), fromlist=[modname]) |
42 for scene_cls in mod.SCENES: | 42 for scene_cls in mod.SCENES: |
43 self.add_scene(scene_cls(self)) | 43 self.add_scene(scene_cls(self)) |
74 self.state = state | 74 self.state = state |
75 # map of thing names -> Thing objects | 75 # map of thing names -> Thing objects |
76 self.things = {} | 76 self.things = {} |
77 self._background = get_image(self.FOLDER, self.BACKGROUND) | 77 self._background = get_image(self.FOLDER, self.BACKGROUND) |
78 | 78 |
79 def add_item(self, item): | |
80 self.state.add_item(item) | |
81 | |
79 def draw_background(self, surface): | 82 def draw_background(self, surface): |
80 surface.blit(self._background, (0, 0), None, BLEND_ADD) | 83 surface.blit(self._background, (0, 0), None, BLEND_ADD) |
81 | 84 |
82 def draw_things(self, surface): | 85 def draw_things(self, surface): |
83 for thing in self.things.itervalues(): | 86 for thing in self.things.itervalues(): |
104 | 107 |
105 | 108 |
106 class Item(object): | 109 class Item(object): |
107 """Base class for inventory items.""" | 110 """Base class for inventory items.""" |
108 | 111 |
109 # name of item | 112 # image for inventory |
110 NAME = None | 113 INVENTORY_IMAGE = None |
111 | 114 |
112 def __init__(self): | 115 def __init__(self, name): |
113 self.name = self.NAME | 116 self.name = name |
114 | 117 self.inventory_image = get_image('items', self.INVENTORY_IMAGE) |
115 self.inventory_image = get_image('items', self.name) | |
116 # TODO: needs cursor | 118 # TODO: needs cursor |
117 | 119 |
118 def get_inventory_image(self): | 120 def get_inventory_image(self): |
119 return self.inventory_image | 121 return self.inventory_image |
120 | 122 |