Mercurial > boomslang
annotate gamelib/statehelpers.py @ 259:b6e1c4e4e59d
Superconductor Thing now works.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Fri, 27 Aug 2010 19:01:00 +0200 |
parents | 5cb3fbe61f75 |
children |
rev | line source |
---|---|
182
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
1 """Set of utility classes for common state things""" |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
2 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
3 from pygame.color import Color |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
4 from pygame.colordict import THECOLORS |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
5 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
6 from gamelib.state import Thing, Result, \ |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
7 InteractImage, InteractNoImage, InteractRectUnion, \ |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
8 InteractAnimated |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
9 from gamelib.constants import DEBUG |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
10 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
11 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
12 class GenericDescThing(Thing): |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
13 "Thing with an InteractiveUnionRect and a description" |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
14 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
15 INITIAL = "description" |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
16 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
17 def __init__(self, prefix, number, description, areas): |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
18 super(GenericDescThing, self).__init__() |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
19 self.description = description |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
20 self.name = '%s.%s' % (prefix, number) |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
21 self.interacts = { |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
22 'description' : InteractRectUnion(areas) |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
23 } |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
24 if DEBUG: |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
25 # Individual colors to make debugging easier |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
26 self._interact_hilight_color = Color(THECOLORS.keys()[number]) |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
27 |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
28 def get_description(self): |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
29 return self.description |
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
diff
changeset
|
30 |