Mercurial > boomslang
annotate gamelib/scenes/cryo.py @ 314:63e702d93e0e
Call detail enter and leave hooks
author | Neil Muller <neil@dip.sun.ac.za> |
---|---|
date | Sat, 28 Aug 2010 12:10:20 +0200 |
parents | 5031b84fbb4c |
children | 3cb48621759a |
rev | line source |
---|---|
39
088a101f5b94
Add an example Thing to cryo scene.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
35
diff
changeset
|
1 """Cryo room where the prisoner starts out.""" |
088a101f5b94
Add an example Thing to cryo scene.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
35
diff
changeset
|
2 |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
3 import random |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
4 from albow.music import change_playlist, get_music, PlayList |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
5 |
135 | 6 from gamelib import speech |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
7 from gamelib.sound import get_sound |
135 | 8 from gamelib.cursor import CursorSprite |
263
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
252
diff
changeset
|
9 from gamelib.state import Scene, Item, CloneableItem, Thing, Result |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
10 from gamelib.constants import DEBUG |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
11 from gamelib.scenes.game_constants import PLAYER_ID |
263
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
252
diff
changeset
|
12 from gamelib.scenes.scene_widgets import (Door, InteractText, InteractNoImage, |
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
252
diff
changeset
|
13 InteractRectUnion, InteractImage, |
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
252
diff
changeset
|
14 InteractAnimated, GenericDescThing) |
39
088a101f5b94
Add an example Thing to cryo scene.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
35
diff
changeset
|
15 |
28
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
16 |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
17 class Cryo(Scene): |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
18 |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
19 FOLDER = "cryo" |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
20 BACKGROUND = "cryo_room.png" |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
21 |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
22 INITIAL_DATA = { |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
23 'accessible': True, |
120 | 24 'greet' : True |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
25 } |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
26 |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
27 # sounds that will be played randomly as background noise |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
28 MUSIC = [ |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
29 'drip1.ogg', |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
30 'drip2.ogg', |
209
aeb96ca5f76c
Add more sounds to cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
202
diff
changeset
|
31 'drip3.ogg', |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
32 'creaking.ogg', |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
33 'silent.ogg', |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
34 'silent.ogg', |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
35 ] |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
36 |
28
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
37 def __init__(self, state): |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
38 super(Cryo, self).__init__(state) |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
39 self.add_item(TitaniumLeg("titanium_leg")) |
86
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
40 self.add_thing(CryoUnitAlpha()) |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
41 self.add_thing(CryoRoomDoor()) |
89
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
42 self.add_thing(CryoComputer()) |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
43 self.add_thing(CryoPipeLeft()) |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
44 self.add_thing(CryoPipeRight()) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
45 |
183
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
46 # Flavour items |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
47 # pipes |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
48 self.add_thing(GenericDescThing('cryo.pipes', 1, |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
49 "These pipes carry cooling fluid to the cryo units.", |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
50 ( |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
51 (552, 145, 129, 66), |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
52 # (643, 199, 38, 233), |
183
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
53 (636, 82, 165, 60), |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
54 (756, 127, 52, 393), |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
55 (140, 135, 112, 73), |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
56 # (125, 192, 27, 258), |
183
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
57 (11, 63, 140, 67), |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
58 (2, 130, 44, 394), |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
59 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
60 |
183
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
61 # leaks |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
62 self.add_thing(GenericDescThing('cryo.leaks', 2, |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
63 "Fluid leaks disturbingly from the bulkheads", |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
64 ( |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
65 (444, 216, 125, 67), |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
66 (44, 133, 74, 107), |
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
67 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
68 |
183
829551aad0f1
Add some flavour descriptions
Neil Muller <neil@dip.sun.ac.za>
parents:
182
diff
changeset
|
69 # cryo units |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
70 self.add_thing(GenericCryoUnit(2, |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
71 "An empty cryo chamber.", |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
72 "Prisoner 81E4-C8900480E635. Embezzlement. 20 years.", |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
73 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
74 (155, 430, 50, 35), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
75 (125, 450, 60, 35), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
76 (95, 470, 60, 35), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
77 (55, 490, 60, 55), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
78 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
79 |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
80 self.add_thing(GenericCryoUnit(3, |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
81 "A working cryo chamber. The frosted glass obscures the details of the occupant.", |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
82 "Prisoner 9334-CE1EB0243BAB. Murder. 40 years.", |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
83 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
84 (215, 430, 50, 35), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
85 (205, 450, 50, 35), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
86 (185, 470, 50, 35), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
87 (125, 505, 80, 40), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
88 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
89 |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
90 self.add_thing(GenericCryoUnit(4, |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
91 "A broken cryo chamber. The skeleton inside has been picked clean.", |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
92 "Prisoner BFBC-8BF4C6B7492B. Importing illegal alien biomatter. 15 years.", |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
93 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
94 (275, 430, 50, 70), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
95 (255, 460, 50, 70), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
96 (235, 490, 50, 60), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
97 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
98 |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
99 self.add_thing(GenericCryoUnit(5, |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
100 "A working cryo chamber. The frosted glass obscures the details of the occupant.", |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
101 "Prisoner B520-99495B8C41CE. Copyright infringment. 60 years.", |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
102 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
103 (340, 430, 50, 70), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
104 (330, 500, 60, 50), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
105 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
106 |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
107 self.add_thing(GenericCryoUnit(6, |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
108 "An empty cryo unit. Recently filled by you.", |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
109 "Prisoner %s. Safe cracker. 30 years." % PLAYER_ID, |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
110 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
111 (399, 426, 70, 56), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
112 (404, 455, 69, 120), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
113 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
114 |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
115 self.add_thing(GenericCryoUnit(7, |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
116 "An empty cryo unit.", |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
117 "Prisoner 83F1-CE32D3234749. Spammer. 5 years", |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
118 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
119 (472, 432, 58, 51), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
120 (488, 455, 41, 134), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
121 (517, 487, 42, 93), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
122 ))) |
213
20998c650ce1
Fixed rect_drawer tool and adjusted JIM message background.
Jeremy Thurgood <firxen@gmail.com>
parents:
212
diff
changeset
|
123 |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
124 self.add_thing(GenericCryoUnit(8, |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
125 "An empty cryo unit.", |
224
8d8aef45db4e
fixed some typos
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
219
diff
changeset
|
126 "Prisoner A455-9DF9F43C43E5. Medical malpractice. 10 years.", |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
127 ( |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
128 (596, 419, 69, 39), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
129 (616, 442, 82, 40), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
130 (648, 467, 84, 37), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
131 (681, 491, 97, 60), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
132 ))) |
35 | 133 |
120 | 134 def enter(self): |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
135 # Setup music |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
136 pieces = [get_music(x, prefix='sounds') for x in self.MUSIC] |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
137 background_playlist = PlayList(pieces, random=True, repeat=True) |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
138 change_playlist(background_playlist) |
120 | 139 if self.get_data('greet'): |
140 self.set_data('greet', False) | |
202 | 141 return Result( |
224
8d8aef45db4e
fixed some typos
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
219
diff
changeset
|
142 "You hear a voice: 'Greetings, Prisoner %s. " |
202 | 143 "This is the Judicial Incarceration Monitor. " |
144 "You have been woken early under the terms of the " | |
145 "emergency conscription act to help with repairs to " | |
146 "the ship. Your behaviour during this time will " | |
147 "be added to your record and will be relayed to " | |
148 "prison officials when we reach the destination. " | |
212
2b820b4ba3bf
Add constant for player id. Make IDs uppercase
Neil Muller <neil@dip.sun.ac.za>
parents:
210
diff
changeset
|
149 "Please report to the bridge.'" % PLAYER_ID, style="JIM") |
35 | 150 |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
151 def leave(self): |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
152 # Stop music |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
153 change_playlist(None) |
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
154 |
35 | 155 |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
156 class CryoPipeBase(Thing): |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
157 "Base class for cryo pipes that need to be stolen." |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
158 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
159 INITIAL = "fixed" |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
160 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
161 INITIAL_DATA = { |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
162 'fixed': True, |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
163 } |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
164 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
165 def interact_with_machete(self, item): |
247
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
166 if self.get_data('fixed'): |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
167 self.set_data('fixed', False) |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
168 pipe = CryoPipe('cryo_pipe') |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
169 self.state.add_item(pipe) |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
170 self.state.add_inventory_item(pipe.name) |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
171 self.set_interact("chopped") |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
172 return Result("It takes more effort than one would expect, but " |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
173 "eventually the pipe is separated from the wall.") |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
174 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
175 def is_interactive(self): |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
176 return self.get_data('fixed') |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
177 |
247
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
178 def interact_without(self): |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
179 if self.get_data('fixed'): |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
180 return Result("These pipes aren't attached to the wall very solidly.") |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
181 return None |
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
182 |
228
ce1e85768f7b
Flavour interactions for mess hall
Neil Muller <neil@dip.sun.ac.za>
parents:
227
diff
changeset
|
183 def get_description(self): |
ce1e85768f7b
Flavour interactions for mess hall
Neil Muller <neil@dip.sun.ac.za>
parents:
227
diff
changeset
|
184 if self.get_data('fixed'): |
ce1e85768f7b
Flavour interactions for mess hall
Neil Muller <neil@dip.sun.ac.za>
parents:
227
diff
changeset
|
185 return "These pipes carry cooling fluid to the cryo units." |
247
0bad554d0926
More tests, some cryo room fixes and docs in the build.
Jeremy Thurgood <firxen@gmail.com>
parents:
242
diff
changeset
|
186 return "There used to be a pipe carrying cooling fluid here" |
228
ce1e85768f7b
Flavour interactions for mess hall
Neil Muller <neil@dip.sun.ac.za>
parents:
227
diff
changeset
|
187 |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
188 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
189 class CryoPipe(CloneableItem): |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
190 "After emptying the full can." |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
191 |
227 | 192 INVENTORY_IMAGE = "cryo_pipe.png" |
302
6d93e04036c9
CursorSprite: Default pointer-position to the centre of the cursor
Stefano Rivera <stefano@rivera.za.net>
parents:
271
diff
changeset
|
193 CURSOR = CursorSprite('cryo_pipe_cursor.png') |
226 | 194 TOOL_NAME = "pipe" |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
195 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
196 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
197 class CryoPipeLeft(CryoPipeBase): |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
198 "Left cryo pipe." |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
199 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
200 NAME = "cryo.pipe.left" |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
201 INTERACTS = { |
271 | 202 "fixed": InteractImage(117, 226, "intact_cryo_pipe_left.png"), |
203 "chopped": InteractNoImage(125, 192, 27, 258), | |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
204 } |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
205 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
206 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
207 class CryoPipeRight(CryoPipeBase): |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
208 "Left cryo pipe." |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
209 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
210 NAME = "cryo.pipe.right" |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
211 INTERACTS = { |
271 | 212 "fixed": InteractImage(645, 211, "intact_cryo_pipe_right.png"), |
213 "chopped": InteractNoImage(643, 199, 38, 233), | |
219
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
214 } |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
215 |
326300c218a6
Choppable cryopipes and can refactoring.
Jeremy Thurgood <firxen@gmail.com>
parents:
218
diff
changeset
|
216 |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
217 class TitaniumLeg(Item): |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
218 "Titanium leg, found on a piratical corpse." |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
219 |
91
542ede2896bb
Link in femur inventory image.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
89
diff
changeset
|
220 INVENTORY_IMAGE = "titanium_femur.png" |
307
5031b84fbb4c
Hook up new machete, can_opener, and titanium_femur images
Stefano Rivera <stefano@rivera.za.net>
parents:
302
diff
changeset
|
221 CURSOR = CursorSprite('titanium_femur_cursor.png', 13, 5) |
28
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
222 |
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
223 |
39
088a101f5b94
Add an example Thing to cryo scene.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
35
diff
changeset
|
224 class CryoUnitAlpha(Thing): |
67
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
225 "Cryo unit containing titanium leg." |
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
226 |
86
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
227 NAME = "cryo.unit.1" |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
228 |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
229 INTERACTS = { |
133
0530547a131f
Better map handling, detail_view stuff in Result.
Jeremy Thurgood <firxen@gmail.com>
parents:
131
diff
changeset
|
230 "unit": InteractRectUnion(( |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
231 (531, 430, 64, 49), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
232 (560, 460, 57, 47), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
233 (583, 482, 65, 69), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
234 (600, 508, 71, 48), |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
235 )) |
86
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
236 } |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
237 |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
238 INITIAL = "unit" |
67
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
239 |
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
240 INITIAL_DATA = { |
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
241 'contains_titanium_leg': True, |
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
242 } |
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
243 |
6b0f7364f3bf
Inventory-related game state.
Jeremy Thurgood <firxen@gmail.com>
parents:
63
diff
changeset
|
244 def interact_without(self): |
134
faac82748f5a
Put the leg inside the cryo unit.
Jeremy Thurgood <firxen@gmail.com>
parents:
133
diff
changeset
|
245 return Result(detail_view='cryo_detail') |
39
088a101f5b94
Add an example Thing to cryo scene.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
35
diff
changeset
|
246 |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
247 def interact_with_titanium_leg(self, item): |
209
aeb96ca5f76c
Add more sounds to cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
202
diff
changeset
|
248 return Result("You hit the chamber that used to hold this very leg. Nothing happens as a result.", |
aeb96ca5f76c
Add more sounds to cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
202
diff
changeset
|
249 soundfile="clang2.ogg") |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
250 |
94
ce23fad8ecb3
More complex shaped interactables
Neil Muller <neil@dip.sun.ac.za>
parents:
91
diff
changeset
|
251 def get_description(self): |
ce23fad8ecb3
More complex shaped interactables
Neil Muller <neil@dip.sun.ac.za>
parents:
91
diff
changeset
|
252 if self.get_data('contains_titanium_leg'): |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
253 return "A broken cryo chamber, with a poor unfortunate corpse inside." |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
254 return "A broken cryo chamber. The corpse inside is missing a leg." |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
255 |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
256 |
182
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
180
diff
changeset
|
257 class GenericCryoUnit(GenericDescThing): |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
258 "Generic Cryo unit" |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
259 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
260 def __init__(self, number, description, detailed_description, areas): |
182
5cb3fbe61f75
Add genric thing with description helper class
Neil Muller <neil@dip.sun.ac.za>
parents:
180
diff
changeset
|
261 super(GenericCryoUnit, self).__init__('cryo.unit', number, description, areas) |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
262 self.detailed_description = detailed_description |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
263 |
270
d4f08abc58fb
Interactivity status tweaks
Neil Muller <neil@dip.sun.ac.za>
parents:
263
diff
changeset
|
264 def is_interactive(self): |
d4f08abc58fb
Interactivity status tweaks
Neil Muller <neil@dip.sun.ac.za>
parents:
263
diff
changeset
|
265 return True |
d4f08abc58fb
Interactivity status tweaks
Neil Muller <neil@dip.sun.ac.za>
parents:
263
diff
changeset
|
266 |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
267 def interact_without(self): |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
268 return Result(self.detailed_description) |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
269 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
270 def get_description(self): |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
271 return self.description |
94
ce23fad8ecb3
More complex shaped interactables
Neil Muller <neil@dip.sun.ac.za>
parents:
91
diff
changeset
|
272 |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
273 def interact_with_titanium_leg(self, item): |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
274 return Result(random.choice([ |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
275 "You bang on the chamber with the titanium femur. Nothing much happens", |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
276 "Hitting the cryo unit with the femur doesn't achieve anything", |
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
277 "You hit the chamber with the femur. Nothing happens.", |
209
aeb96ca5f76c
Add more sounds to cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
202
diff
changeset
|
278 ]), soundfile="clang2.ogg") |
180
6b3ccee6f3f9
Fill in more flavour for cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
167
diff
changeset
|
279 |
39
088a101f5b94
Add an example Thing to cryo scene.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
35
diff
changeset
|
280 |
242 | 281 class CryoRoomDoor(Door): |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
282 "Door to the cryo room." |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
283 |
252
dfc89bc64fdb
Start of walkthrough "unit test" and associated fixes and tweaks.
Jeremy Thurgood <firxen@gmail.com>
parents:
247
diff
changeset
|
284 SCENE = "cryo" |
86
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
285 |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
286 INTERACTS = { |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
287 "shut": InteractNoImage(290, 260, 99, 152), |
87
4c6fea1b242b
Fix interact positions.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
86
diff
changeset
|
288 "ajar": InteractImage(290, 260, "door_ajar.png"), |
4c6fea1b242b
Fix interact positions.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
86
diff
changeset
|
289 "open": InteractImage(290, 260, "door_open.png"), |
86
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
290 } |
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
291 |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
292 INITIAL = "shut" |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
293 |
55
2e2f6ff54780
Part of the cryo door puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
41
diff
changeset
|
294 INITIAL_DATA = { |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
295 'door': "shut", |
55
2e2f6ff54780
Part of the cryo door puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
41
diff
changeset
|
296 } |
2e2f6ff54780
Part of the cryo door puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
41
diff
changeset
|
297 |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
298 def interact_with_titanium_leg(self, item): |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
299 if self.get_data('door') == "ajar": |
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
300 self.open_door() |
209
aeb96ca5f76c
Add more sounds to cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
202
diff
changeset
|
301 return Result("You wedge the titanium femur into the chain and twist. With a satisfying *snap*, the chain breaks and the door opens.", soundfile='break.ogg') |
118
e548f4a13741
Add a transition, on general principles
Neil Muller <neil@dip.sun.ac.za>
parents:
109
diff
changeset
|
302 elif self.get_data('door') == "shut": |
109
66898d810247
Add hackish speech support (run regen-speech.py to generate files -- needs espeak and oggenc).
Simon Cross <simon@simonx>
parents:
105
diff
changeset
|
303 text = "You bang on the door with the titanium femur. It makes a clanging sound." |
66898d810247
Add hackish speech support (run regen-speech.py to generate files -- needs espeak and oggenc).
Simon Cross <simon@simonx>
parents:
105
diff
changeset
|
304 speech.say(self.name, text) |
141
4f18e68fd0dc
Add a few sounds to the cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
136
diff
changeset
|
305 return Result(text, soundfile='clang.ogg') |
118
e548f4a13741
Add a transition, on general principles
Neil Muller <neil@dip.sun.ac.za>
parents:
109
diff
changeset
|
306 else: |
e548f4a13741
Add a transition, on general principles
Neil Muller <neil@dip.sun.ac.za>
parents:
109
diff
changeset
|
307 return Result("You wave the femur in the doorway. Nothing happens.") |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
308 |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
309 def interact_without(self): |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
310 if self.get_data('door') == "shut": |
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
311 self.half_open_door() |
118
e548f4a13741
Add a transition, on general principles
Neil Muller <neil@dip.sun.ac.za>
parents:
109
diff
changeset
|
312 if self.get_data('door') != "open": |
209
aeb96ca5f76c
Add more sounds to cryo room
Neil Muller <neil@dip.sun.ac.za>
parents:
202
diff
changeset
|
313 return Result("It moves slightly and then stops. A chain on the other side is preventing it from opening completely.", soundfile='chain.ogg') |
118
e548f4a13741
Add a transition, on general principles
Neil Muller <neil@dip.sun.ac.za>
parents:
109
diff
changeset
|
314 else: |
131 | 315 self.state.set_current_scene('map') |
144
29ba5456e8b3
Removed a bunch of cruft.
Jeremy Thurgood <firxen@gmail.com>
parents:
141
diff
changeset
|
316 return None |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
317 |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
318 def interact_default(self, item): |
78 | 319 return Result(random.choice([ |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
320 "Sadly, this isn't that sort of game.", |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
321 "Your valiant efforts are foiled by the Evil Game Designer.", |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
322 "The door resists. Try something else, perhaps?", |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
323 ])) |
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
324 |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
325 def half_open_door(self): |
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
326 self.set_data('door', "ajar") |
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
327 self.set_interact("ajar") |
56
75bf3d3689e9
Refactor thing interactivity and add "fake" bridge scene.
Jeremy Thurgood <firxen@gmail.com>
parents:
55
diff
changeset
|
328 |
55
2e2f6ff54780
Part of the cryo door puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
41
diff
changeset
|
329 def open_door(self): |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
330 self.set_data('door', "open") |
86
593bddfacf18
Refactor Things a bit to render images.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
78
diff
changeset
|
331 self.set_interact("open") |
55
2e2f6ff54780
Part of the cryo door puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
41
diff
changeset
|
332 self.state.scenes['bridge'].set_data('accessible', True) |
147
a039d3b81b3d
Deselect tools and get to the Mess.
Jeremy Thurgood <firxen@gmail.com>
parents:
144
diff
changeset
|
333 self.state.scenes['mess'].set_data('accessible', True) |
55
2e2f6ff54780
Part of the cryo door puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
41
diff
changeset
|
334 |
63
3087be3463e0
Some framework support for better message handling
Neil Muller <neil@dip.sun.ac.za>
parents:
56
diff
changeset
|
335 def get_description(self): |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
336 if self.get_data('door') == "open": |
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
337 return 'An open doorway leads to the rest of the ship.' |
103 | 338 elif self.get_data('door') == "ajar": |
95
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
339 return "A rusty door. It can't open all the way because of a chain on the other side." |
7590586180f5
door goes from shut to ajar to open
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
94
diff
changeset
|
340 return 'A rusty door. It is currently closed.' |
63
3087be3463e0
Some framework support for better message handling
Neil Muller <neil@dip.sun.ac.za>
parents:
56
diff
changeset
|
341 |
41
ad6f56bfa8b7
Cryo door, titanium leg and some interaction prototypes.
Jeremy Thurgood <firxen@gmail.com>
parents:
39
diff
changeset
|
342 |
89
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
343 class CryoComputer(Thing): |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
344 "Computer in the cryo room." |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
345 |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
346 NAME = "cryo.computer" |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
347 |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
348 INTERACTS = { |
189
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
349 "info": InteractAnimated(416, 290, ["comp_info.png", "comp_info2.png"], |
105
65976205fc2d
Rough Stab at basic animation support
Neil Muller <neil@dip.sun.ac.za>
parents:
103
diff
changeset
|
350 10), |
89
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
351 "warn": InteractImage(416, 290, "comp_warn.png"), |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
352 "error": InteractImage(416, 290, "comp_error.png"), |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
353 } |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
354 |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
355 INITIAL = "info" |
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
356 |
189
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
357 def interact_without(self): |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
358 return Result(detail_view='cryo_comp_detail') |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
359 |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
360 def interact_with_titanium_leg(self, item): |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
361 return Result("Hitting it with the leg accomplishes nothing.") |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
362 |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
363 def get_description(self): |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
364 return "A computer terminal, with some text on it." |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
365 |
89
4625efe69c37
Hook up cryo computer.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
87
diff
changeset
|
366 |
125
d3ca34a664fd
Some detail view and data cleanup.
Jeremy Thurgood <firxen@gmail.com>
parents:
120
diff
changeset
|
367 class TitaniumLegThing(Thing): |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
368 "Triangle in the cryo room." |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
369 |
125
d3ca34a664fd
Some detail view and data cleanup.
Jeremy Thurgood <firxen@gmail.com>
parents:
120
diff
changeset
|
370 NAME = "cryo.titanium_leg" |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
371 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
372 INTERACTS = { |
232
ca490aecbe0e
Updated cryo unit to use new stuff. No more triangles! (Except for the ones that are still there.)
Jeremy Thurgood <firxen@gmail.com>
parents:
228
diff
changeset
|
373 "leg": InteractImage(180, 132, "leg.png"), |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
374 } |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
375 |
134
faac82748f5a
Put the leg inside the cryo unit.
Jeremy Thurgood <firxen@gmail.com>
parents:
133
diff
changeset
|
376 INITIAL = "leg" |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
377 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
378 def interact_without(self): |
134
faac82748f5a
Put the leg inside the cryo unit.
Jeremy Thurgood <firxen@gmail.com>
parents:
133
diff
changeset
|
379 self.state.add_inventory_item('titanium_leg') |
faac82748f5a
Put the leg inside the cryo unit.
Jeremy Thurgood <firxen@gmail.com>
parents:
133
diff
changeset
|
380 self.state.current_scene.things['cryo.unit.1'].set_data('contains_titanium_leg', False) |
faac82748f5a
Put the leg inside the cryo unit.
Jeremy Thurgood <firxen@gmail.com>
parents:
133
diff
changeset
|
381 self.scene.remove_thing(self) |
faac82748f5a
Put the leg inside the cryo unit.
Jeremy Thurgood <firxen@gmail.com>
parents:
133
diff
changeset
|
382 return Result("The skeletal occupant of this cryo unit has an artificial femur made of titanium. You take it.") |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
383 |
136
d264850806dc
Better description handling in detail windows. (Sort of.)
Jeremy Thurgood <firxen@gmail.com>
parents:
135
diff
changeset
|
384 def get_description(self): |
d264850806dc
Better description handling in detail windows. (Sort of.)
Jeremy Thurgood <firxen@gmail.com>
parents:
135
diff
changeset
|
385 return "This femur looks synthetic." |
d264850806dc
Better description handling in detail windows. (Sort of.)
Jeremy Thurgood <firxen@gmail.com>
parents:
135
diff
changeset
|
386 |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
387 class PlaqueThing(Thing): |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
388 "Plaque on the detailed cryo chamber" |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
389 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
390 NAME = "cryo.plaque" |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
391 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
392 INTERACTS = { |
232
ca490aecbe0e
Updated cryo unit to use new stuff. No more triangles! (Except for the ones that are still there.)
Jeremy Thurgood <firxen@gmail.com>
parents:
228
diff
changeset
|
393 "plaque": InteractNoImage(60, 40, 35, 24), |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
394 } |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
395 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
396 INITIAL = "plaque" |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
397 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
398 def interact_without(self): |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
399 return Result("The plaque is welded to the unit. You can't shift it") |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
400 |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
401 def get_description(self): |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
402 return "'Prisoner 98cc-764e646391ee. War crimes. 45 years." |
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
403 |
189
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
404 class CryoCompDetail(Scene): |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
405 |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
406 FOLDER = "cryo" |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
407 BACKGROUND = "comp_info_detail.png" |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
408 NAME = "cryo_comp_detail" |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
409 |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
410 SIZE = (640, 400) |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
411 |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
412 def __init__(self, state): |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
413 super(CryoCompDetail, self).__init__(state) |
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
414 |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
415 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
416 class CryoUnitWithCorpse(Scene): |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
417 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
418 FOLDER = "cryo" |
127
9646e7c8bb97
Size detail window based on the Scene background image.
Jeremy Thurgood <firxen@gmail.com>
parents:
125
diff
changeset
|
419 BACKGROUND = "cryo_unit_detail.png" |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
420 NAME = "cryo_detail" |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
421 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
422 SIZE = (300, 300) |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
423 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
424 def __init__(self, state): |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
425 super(CryoUnitWithCorpse, self).__init__(state) |
125
d3ca34a664fd
Some detail view and data cleanup.
Jeremy Thurgood <firxen@gmail.com>
parents:
120
diff
changeset
|
426 self.add_thing(TitaniumLegThing()) |
157
153dcb313057
Fill in more cryo room stuff
Neil Muller <neil@dip.sun.ac.za>
parents:
148
diff
changeset
|
427 self.add_thing(PlaqueThing()) |
119
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
428 |
d5f7cccfdb6c
Hook up "detail view" scenes.
Jeremy Thurgood <firxen@gmail.com>
parents:
118
diff
changeset
|
429 |
28
0f25f7b9b37a
Add loading of initial state.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
diff
changeset
|
430 SCENES = [Cryo] |
189
c18ef647ffe6
Add detail view for cryo screen. Tweak animation
Neil Muller <neil@dip.sun.ac.za>
parents:
183
diff
changeset
|
431 DETAIL_VIEWS = [CryoUnitWithCorpse, CryoCompDetail] |