Mercurial > pyntnclick
comparison gamelib/scenes/engine.py @ 327:67e8a547970b
More engine room descs
author | Stefano Rivera <stefano@rivera.za.net> |
---|---|
date | Sat, 28 Aug 2010 13:56:22 +0200 |
parents | 5031b84fbb4c |
children | b61dccc7fb42 |
comparison
equal
deleted
inserted
replaced
326:bd649aa51472 | 327:67e8a547970b |
---|---|
20 super(Engine, self).__init__(state) | 20 super(Engine, self).__init__(state) |
21 self.add_item(CanOpener('canopener')) | 21 self.add_item(CanOpener('canopener')) |
22 self.add_thing(CanOpenerThing()) | 22 self.add_thing(CanOpenerThing()) |
23 self.add_item(BrokenSuperconductor('superconductor_broken')) | 23 self.add_item(BrokenSuperconductor('superconductor_broken')) |
24 self.add_thing(SuperconductorSocket()) | 24 self.add_thing(SuperconductorSocket()) |
25 self.add_thing(PowerLines()) | |
26 self.add_thing(CryoContainers()) | |
27 self.add_thing(CryoContainerReceptacle()) | |
28 self.add_thing(CoolingPipes()) | |
25 self.add_thing(ToMap()) | 29 self.add_thing(ToMap()) |
26 self.add_thing(GenericDescThing('engine.body', 1, | 30 self.add_thing(GenericDescThing('engine.body', 1, |
27 "Dead. He must have suffocated in the vacuum.", | 31 "Dead. I think those cans were passed their sell-by date.", |
28 ( | 32 ( |
29 (594, 387, 45, 109), | 33 (594, 387, 45, 109), |
30 (549, 475, 60, 55), | 34 (549, 479, 60, 55), |
31 ) | 35 ) |
32 )) | 36 )) |
33 self.add_thing(GenericDescThing('engine.controlpanel', 1, | 37 self.add_thing(GenericDescThing('engine.controlpanel', 2, |
34 "A control panel. It seems dead.", | 38 "A control panel. It seems dead.", |
35 ( | 39 ( |
36 (513, 330, 58, 50), | 40 (513, 330, 58, 50), |
37 ) | 41 ) |
38 )) | 42 )) |
39 self.add_thing(GenericDescThing('engine.computer_console', 1, | 43 self.add_thing(GenericDescThing('engine.computer_console', 3, |
40 "A computer console. It seems dead", | 44 "A computer console. It seems dead", |
41 ( | 45 ( |
42 (293, 287, 39, 36), | 46 (293, 287, 39, 36), |
43 ) | 47 ) |
44 )) | 48 )) |
45 self.add_thing(GenericDescThing('engine.superconductors', 1, | 49 self.add_thing(GenericDescThing('engine.superconductors', 4, |
46 "Superconductors. The engines must be power hogs.", | 50 "Superconductors. The engines must be power hogs.", |
47 ( | 51 ( |
48 (679, 246, 50, 56), | 52 (679, 246, 50, 56), |
49 (473, 277, 28, 23), | 53 (473, 280, 28, 23), |
50 (381, 224, 26, 22), | 54 (381, 224, 25, 22), |
51 ) | 55 ) |
52 )) | 56 )) |
53 self.add_thing(GenericDescThing('engine.floor_hole', 1, | 57 self.add_thing(GenericDescThing('engine.floor_hole', 5, |
54 "A gaping hole in the floor of the room. I'm guessing that's why there's a vacuum in here.", | 58 "A gaping hole in the floor of the room. I'm guessing that's why there's a vacuum in here.", |
55 ( | 59 ( |
56 (257, 493, 141, 55), | 60 (257, 493, 141, 55), |
57 (301, 450, 95, 45), | 61 (301, 450, 95, 45), |
58 (377, 422, 19, 29), | 62 (377, 422, 19, 29), |
59 (239, 547, 123, 39), | 63 (239, 547, 123, 39), |
60 ) | 64 ) |
61 )) | 65 )) |
62 self.add_thing(GenericDescThing('engine.cryo_containers', 1, | 66 self.add_thing(GenericDescThing('engine.empty_cans', 7, |
63 "Those are cryo-fluid containers. They look empty", | 67 "Empty Chocolate-Covered-Bacon Cans? Poor guy, he must have found them unresistable.", |
64 ( | |
65 (129, 246, 135, 160), | |
66 ) | |
67 )) | |
68 self.add_thing(GenericDescThing('engine.empty_cans', 1, | |
69 "Empty Chocolate-Covered-Bacon Cans? He must have got in early", | |
70 ( | 68 ( |
71 (562, 422, 30, 31), | 69 (562, 422, 30, 31), |
72 ) | 70 ) |
73 )) | 71 )) |
74 self.add_thing(GenericDescThing('engine.engines', 1, | 72 self.add_thing(GenericDescThing('engine.engines', 8, |
75 "The engines. They don't look like they are working.", | 73 "The engines. They don't look like they are working.", |
76 ( | 74 ( |
77 (342, 261, 109, 81), | 75 (342, 261, 109, 81), |
78 ) | 76 ) |
79 )) | 77 )) |
80 self.add_thing(GenericDescThing('engine.laser_cutter', 1, | 78 self.add_thing(GenericDescThing('engine.laser_cutter', 9, |
81 "A burned out laser cutter. It may be responsible for the hole in the floor.", | 79 "A burned out laser cutter. It may be responsible for the hole in the floor.", |
82 ( | 80 ( |
83 (120, 466, 115, 67), | 81 (120, 466, 115, 67), |
84 ) | 82 ) |
85 )) | 83 )) |
86 self.add_thing(GenericDescThing('engine.spare_fuel_line', 1, | 84 self.add_thing(GenericDescThing('engine.fuel_lines', 10, |
85 "The main fuel line for the engines.", | |
86 ( | |
87 (220, 49, 59, 75), | |
88 (239, 84, 51, 66), | |
89 (271, 113, 28, 53), | |
90 (285, 132, 26, 50), | |
91 (299, 153, 22, 46), | |
92 (321, 172, 167, 25), | |
93 (308, 186, 36, 22), | |
94 (326, 217, 30, 13), | |
95 (336, 229, 28, 13), | |
96 (343, 239, 21, 14), | |
97 (446, 197, 33, 11), | |
98 (424, 240, 21, 20), | |
99 (418, 249, 19, 11), | |
100 (438, 217, 30, 11), | |
101 (435, 225, 18, 15), | |
102 ) | |
103 )) | |
104 self.add_thing(GenericDescThing('engine.spare_fuel_line', 11, | |
87 "The spare fuel line. If something went wrong with the main one, you would hook that one up.", | 105 "The spare fuel line. If something went wrong with the main one, you would hook that one up.", |
88 ( | 106 ( |
89 (512, 49, 68, 44), | 107 (512, 49, 68, 44), |
90 ) | 108 ) |
91 )) | 109 )) |
92 | 110 self.add_thing(GenericDescThing('engine.danger_area', 12, |
111 "The sign says DANGER. You would be wise to listen to it.", | |
112 ( | |
113 (293, 343, 211, 46), | |
114 ) | |
115 )) | |
116 self.add_thing(GenericDescThing('engine.exit_sign', 13, | |
117 "It's one of those glow-in-the-dark exit signs that you see everywhere", | |
118 ( | |
119 (681, 322, 80, 33), | |
120 ) | |
121 )) | |
93 | 122 |
94 def enter(self): | 123 def enter(self): |
95 return Result("You enter the engine room. Even if there wasn't a vacuum " | 124 return Result("You enter the engine room. Even if there wasn't a vacuum " |
96 "it would be errily quiet.") | 125 "it would be errily quiet.") |
97 | 126 |
172 return Result("The chair's superconductor looks over-specced for this job, but it should work") | 201 return Result("The chair's superconductor looks over-specced for this job, but it should work") |
173 else: | 202 else: |
174 return Result("It might help to remove the broken superconductor first") | 203 return Result("It might help to remove the broken superconductor first") |
175 | 204 |
176 | 205 |
206 class CryoContainers(Thing): | |
207 NAME = 'engine.cryo_containers' | |
208 | |
209 INTERACTS = { | |
210 'containers': InteractRectUnion(( | |
211 (140, 378, 40, 25), | |
212 (129, 278, 55, 100), | |
213 (130, 365, 17, 25), | |
214 (168, 288, 31, 104), | |
215 (192, 288, 27, 95), | |
216 (216, 291, 16, 87), | |
217 (226, 291, 38, 79), | |
218 )) | |
219 } | |
220 | |
221 INITIAL = 'containers' | |
222 | |
223 INITIAL_DATA = { | |
224 'filled': False, | |
225 } | |
226 | |
227 def get_description(self): | |
228 if not self.get_data('filled'): | |
229 return "Those are coolant reservoirs. They look empty." | |
230 return "The coolant reservoirs are full." | |
231 | |
232 def is_interactive(self): | |
233 return False | |
234 | |
235 | |
236 class CryoContainerReceptacle(Thing): | |
237 NAME = 'engine.cryo_container_receptacle' | |
238 | |
239 INTERACTS = { | |
240 'containers': InteractRectUnion(( | |
241 (132, 250, 56, 28), | |
242 (184, 258, 42, 30), | |
243 (219, 267, 42, 24), | |
244 )) | |
245 } | |
246 | |
247 INITIAL = 'containers' | |
248 | |
249 def get_description(self): | |
250 return "The receptacles for the coolant reservoirs." | |
251 | |
252 | |
253 class CoolingPipes(Thing): | |
254 NAME = 'engine.coolingpipes' | |
255 | |
256 INTERACTS = { | |
257 'pipes': InteractRectUnion(( | |
258 (262, 209, 315, 7), | |
259 (693, 155, 14, 90), | |
260 (673, 138, 32, 27), | |
261 (649, 155, 25, 21), | |
262 (608, 177, 23, 18), | |
263 (587, 186, 25, 18), | |
264 (570, 195, 27, 20), | |
265 (625, 167, 28, 18), | |
266 (57, 86, 16, 238), | |
267 (227, 188, 31, 49), | |
268 (71, 91, 39, 36), | |
269 (108, 117, 32, 69), | |
270 (140, 135, 31, 64), | |
271 (168, 156, 33, 57), | |
272 (200, 172, 27, 55), | |
273 (105, 159, 15, 289), | |
274 (0, 309, 128, 16), | |
275 (0, 411, 44, 27), | |
276 (41, 401, 39, 24), | |
277 (79, 390, 28, 22), | |
278 (257, 209, 27, 10), | |
279 (249, 225, 26, 20), | |
280 (272, 237, 25, 17), | |
281 (294, 247, 41, 24), | |
282 (333, 254, 35, 6), | |
283 (364, 235, 7, 25), | |
284 (365, 231, 15, 13), | |
285 (121, 403, 70, 38), | |
286 (180, 392, 33, 19), | |
287 (199, 383, 30, 18), | |
288 (219, 378, 20, 10), | |
289 (232, 370, 18, 11), | |
290 )), | |
291 } | |
292 INITIAL = 'pipes' | |
293 | |
294 def get_description(self): | |
295 if not self.state.current_scene.things['engine.cryo_containers'] \ | |
296 .get_data('filled'): | |
297 return "These pipes carry coolant to the superconductors. " \ | |
298 "They feel warm." | |
299 return "These pipes carry coolant to the superconductors. " \ | |
300 "They are very cold." | |
301 | |
302 def is_interactive(self): | |
303 return False | |
304 | |
305 | |
306 class PowerLines(Thing): | |
307 NAME = 'engine.powerlines' | |
308 | |
309 INTERACTS = { | |
310 'lines': InteractRectUnion(( | |
311 (592, 270, 87, 21), | |
312 (605, 259, 74, 14), | |
313 (502, 280, 63, 13), | |
314 (527, 272, 38, 11), | |
315 (454, 229, 38, 11), | |
316 (480, 232, 13, 45), | |
317 (407, 229, 27, 10), | |
318 )), | |
319 } | |
320 | |
321 INITIAL = 'lines' | |
322 | |
323 def get_description(self): | |
324 if self.state.current_scene.things['engine.superconductor'] \ | |
325 .get_data('fixed'): | |
326 return "Power lines. They are delivering power to the engines" | |
327 return "Power lines. It looks like they aren't working correctly" | |
328 | |
329 def is_interactive(self): | |
330 return False | |
331 | |
332 | |
177 class ToMap(Door): | 333 class ToMap(Door): |
178 | 334 |
179 SCENE = "engine" | 335 SCENE = "engine" |
180 | 336 |
181 INTERACTS = { | 337 INTERACTS = { |