Mercurial > pyntnclick
annotate gamelib/scenes/engine.py @ 353:b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
author | Stefano Rivera <stefano@rivera.za.net> |
---|---|
date | Sat, 28 Aug 2010 16:18:40 +0200 |
parents | 67e8a547970b |
children | e5f28bd6d4ce |
rev | line source |
---|---|
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
1 """Engine room where things need to be repaired.""" |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
2 |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
3 from gamelib.cursor import CursorSprite |
263
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
262
diff
changeset
|
4 from gamelib.state import Scene, Item, Thing, Result |
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
262
diff
changeset
|
5 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:
262
diff
changeset
|
6 InteractRectUnion, InteractImage, |
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
262
diff
changeset
|
7 InteractAnimated, GenericDescThing) |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
8 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
9 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
10 class Engine(Scene): |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
11 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
12 FOLDER = "engine" |
244
cc478e3a951e
Line-art engine room.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
242
diff
changeset
|
13 BACKGROUND = "engine_room.png" |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
14 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
15 INITIAL_DATA = { |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
16 'accessible': True, |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
17 } |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
18 |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
19 def __init__(self, state): |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
20 super(Engine, self).__init__(state) |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
21 self.add_item(CanOpener('canopener')) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
22 self.add_thing(CanOpenerThing()) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
23 self.add_item(BrokenSuperconductor('superconductor_broken')) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
24 self.add_thing(SuperconductorSocket()) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
25 self.add_thing(PowerLines()) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
26 self.add_thing(CryoContainers()) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
27 self.add_thing(CryoContainerReceptacle()) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
28 self.add_thing(CoolingPipes()) |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
29 self.add_thing(ToMap()) |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
30 self.add_thing(GenericDescThing('engine.body', 1, |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
31 "Dead. I think those cans were passed their sell-by date.", |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
32 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
33 (594, 387, 45, 109), |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
34 (549, 479, 60, 55), |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
35 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
36 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
37 self.add_thing(GenericDescThing('engine.controlpanel', 2, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
38 "A control panel. It seems dead.", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
39 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
40 (513, 330, 58, 50), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
41 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
42 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
43 self.add_thing(GenericDescThing('engine.computer_console', 3, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
44 "A computer console. It seems dead", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
45 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
46 (293, 287, 39, 36), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
47 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
48 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
49 self.add_thing(GenericDescThing('engine.superconductors', 4, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
50 "Superconductors. The engines must be power hogs.", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
51 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
52 (679, 246, 50, 56), |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
53 (473, 280, 28, 23), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
54 (381, 224, 25, 22), |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
55 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
56 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
57 self.add_thing(GenericDescThing('engine.floor_hole', 5, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
58 "A gaping hole in the floor of the room. I'm guessing that's why there's a vacuum in here.", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
59 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
60 (257, 493, 141, 55), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
61 (301, 450, 95, 45), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
62 (377, 422, 19, 29), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
63 (239, 547, 123, 39), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
64 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
65 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
66 self.add_thing(GenericDescThing('engine.empty_cans', 7, |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
67 "Empty Chocolate-Covered-Bacon Cans? Poor guy, he must have found them unresistable.", |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
68 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
69 (562, 422, 30, 31), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
70 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
71 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
72 self.add_thing(GenericDescThing('engine.engines', 8, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
73 "The engines. They don't look like they are working.", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
74 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
75 (342, 261, 109, 81), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
76 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
77 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
78 self.add_thing(GenericDescThing('engine.laser_cutter', 9, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
79 "A burned out laser cutter. It may be responsible for the hole in the floor.", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
80 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
81 (120, 466, 115, 67), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
82 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
83 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
84 self.add_thing(GenericDescThing('engine.fuel_lines', 10, |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
85 "The main fuel line for the engines.", |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
86 ( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
87 (220, 49, 59, 75), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
88 (239, 84, 51, 66), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
89 (271, 113, 28, 53), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
90 (285, 132, 26, 50), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
91 (299, 153, 22, 46), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
92 (321, 172, 167, 25), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
93 (308, 186, 36, 22), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
94 (326, 217, 30, 13), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
95 (336, 229, 28, 13), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
96 (343, 239, 21, 14), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
97 (446, 197, 33, 11), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
98 (424, 240, 21, 20), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
99 (418, 249, 19, 11), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
100 (438, 217, 30, 11), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
101 (435, 225, 18, 15), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
102 ) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
103 )) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
104 self.add_thing(GenericDescThing('engine.spare_fuel_line', 11, |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
105 "The spare fuel line. If something went wrong with the main one, you would hook that one up.", |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
106 ( |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
107 (512, 49, 68, 44), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
108 ) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
109 )) |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
110 self.add_thing(GenericDescThing('engine.danger_area', 12, |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
111 "The sign says DANGER. You would be wise to listen to it.", |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
112 ( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
113 (293, 343, 211, 46), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
114 ) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
115 )) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
116 self.add_thing(GenericDescThing('engine.exit_sign', 13, |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
117 "It's one of those glow-in-the-dark exit signs that you see everywhere", |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
118 ( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
119 (681, 322, 80, 33), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
120 ) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
121 )) |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
122 |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
123 def enter(self): |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
124 return Result("You enter the engine room. Even if there wasn't a vacuum " |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
125 "it would be errily quiet.") |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
126 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
127 class CanOpener(Item): |
307
5031b84fbb4c
Hook up new machete, can_opener, and titanium_femur images
Stefano Rivera <stefano@rivera.za.net>
parents:
302
diff
changeset
|
128 INVENTORY_IMAGE = 'can_opener.png' |
5031b84fbb4c
Hook up new machete, can_opener, and titanium_femur images
Stefano Rivera <stefano@rivera.za.net>
parents:
302
diff
changeset
|
129 CURSOR = CursorSprite('can_opener_cursor.png') |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
130 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
131 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
132 class CanOpenerThing(Thing): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
133 NAME = 'engine.canopener' |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
134 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
135 INTERACTS = { |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
136 'canopener': InteractImage(565, 456, 'can_opener.png'), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
137 } |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
138 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
139 INITIAL = 'canopener' |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
140 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
141 def get_description(self): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
142 return "A can opener. Looks like you won't be starving" |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
143 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
144 def interact_without(self): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
145 self.state.add_inventory_item('canopener') |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
146 self.scene.remove_thing(self) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
147 return Result("You pick up the can opener. It looks brand new, " |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
148 "the vacuum has kept it in perfect condition.") |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
149 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
150 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
151 class BrokenSuperconductor(Item): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
152 INVENTORY_IMAGE = 'superconductor_broken.png' |
302
6d93e04036c9
CursorSprite: Default pointer-position to the centre of the cursor
Stefano Rivera <stefano@rivera.za.net>
parents:
285
diff
changeset
|
153 CURSOR = CursorSprite('superconductor_broken_cursor.png') |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
154 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
155 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
156 class SuperconductorSocket(Thing): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
157 NAME = 'engine.superconductor' |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
158 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
159 INTERACTS = { |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
160 'broken': InteractImage(565, 263, 'superconductor_broken.png'), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
161 'removed': InteractNoImage(565, 263, 26, 39), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
162 'fixed': InteractImage(565, 263, 'superconductor_fixed.png'), |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
163 } |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
164 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
165 INITIAL = 'broken' |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
166 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
167 INITIAL_DATA = { |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
168 'present': True, |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
169 'working': False, |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
170 } |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
171 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
172 def get_description(self): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
173 if self.get_data('present') and not self.get_data('working'): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
174 return "That superconductor looks burned out. It's wedged in there pretty firmly" |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
175 elif not self.get_data('present'): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
176 return "An empty superconductor socket" |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
177 else: |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
178 return "A working superconductor." |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
179 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
180 def interact_without(self): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
181 if self.get_data('present') and not self.get_data('working'): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
182 return Result("It's wedged in there pretty firmly, it won't come out.") |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
183 elif self.get_data('working'): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
184 return Result("You decide that working engines are more important than having a shiny superconductor") |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
185 Thing.interact_without() |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
186 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
187 def interact_with_machete(self, item): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
188 if self.get_data('present') and not self.get_data('working'): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
189 self.set_interact('removed') |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
190 self.set_data('present', False) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
191 self.state.add_inventory_item('superconductor_broken') |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
192 return Result("With leverage, the burned-out superconductor snaps out.") |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
193 Thing.interact_without() |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
194 |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
195 def interact_with_superconductor(self, item): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
196 if not self.get_data('present'): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
197 self.set_interact('fixed') |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
198 self.set_data('present', True) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
199 self.set_data('working', True) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
200 self.state.remove_inventory_item(item.name) |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
201 return Result("The chair's superconductor looks over-specced for this job, but it should work") |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
202 else: |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
203 return Result("It might help to remove the broken superconductor first") |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
204 |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
205 |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
206 class CryoContainers(Thing): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
207 NAME = 'engine.cryo_containers' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
208 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
209 INTERACTS = { |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
210 'containers': InteractRectUnion(( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
211 (140, 378, 40, 25), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
212 (129, 278, 55, 100), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
213 (130, 365, 17, 25), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
214 (168, 288, 31, 104), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
215 (192, 288, 27, 95), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
216 (216, 291, 16, 87), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
217 (226, 291, 38, 79), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
218 )) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
219 } |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
220 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
221 INITIAL = 'containers' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
222 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
223 INITIAL_DATA = { |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
224 'filled': False, |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
225 } |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
226 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
227 def get_description(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
228 if not self.get_data('filled'): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
229 return "Those are coolant reservoirs. They look empty." |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
230 return "The coolant reservoirs are full." |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
231 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
232 def is_interactive(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
233 return False |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
234 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
235 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
236 class CryoContainerReceptacle(Thing): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
237 NAME = 'engine.cryo_container_receptacle' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
238 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
239 INTERACTS = { |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
240 'containers': InteractRectUnion(( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
241 (132, 250, 56, 28), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
242 (184, 258, 42, 30), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
243 (219, 267, 42, 24), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
244 )) |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
245 } |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
246 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
247 INITIAL = 'containers' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
248 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
249 def get_description(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
250 return "The receptacles for the coolant reservoirs." |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
251 |
353
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
252 def interact_without(self): |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
253 return Result("You stick your finger in the receptacle. " |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
254 "It almost gets stuck") |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
255 |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
256 def interact_with_full_detergent_bottle(self, item): |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
257 # TODO: Show full tank interact |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
258 self.state.remove_inventory_item(item.name) |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
259 self.state.current_scene.things['engine.cryo_containers'] \ |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
260 .set_data('filled', True) |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
261 return Result("You fill the reservoirs. " |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
262 "It seems the detergent bottle was just big enough") |
b61dccc7fb42
Detergent + cryo fluid puzzle (currently triangular)
Stefano Rivera <stefano@rivera.za.net>
parents:
327
diff
changeset
|
263 |
327
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
264 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
265 class CoolingPipes(Thing): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
266 NAME = 'engine.coolingpipes' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
267 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
268 INTERACTS = { |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
269 'pipes': InteractRectUnion(( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
270 (262, 209, 315, 7), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
271 (693, 155, 14, 90), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
272 (673, 138, 32, 27), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
273 (649, 155, 25, 21), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
274 (608, 177, 23, 18), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
275 (587, 186, 25, 18), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
276 (570, 195, 27, 20), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
277 (625, 167, 28, 18), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
278 (57, 86, 16, 238), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
279 (227, 188, 31, 49), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
280 (71, 91, 39, 36), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
281 (108, 117, 32, 69), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
282 (140, 135, 31, 64), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
283 (168, 156, 33, 57), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
284 (200, 172, 27, 55), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
285 (105, 159, 15, 289), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
286 (0, 309, 128, 16), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
287 (0, 411, 44, 27), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
288 (41, 401, 39, 24), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
289 (79, 390, 28, 22), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
290 (257, 209, 27, 10), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
291 (249, 225, 26, 20), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
292 (272, 237, 25, 17), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
293 (294, 247, 41, 24), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
294 (333, 254, 35, 6), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
295 (364, 235, 7, 25), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
296 (365, 231, 15, 13), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
297 (121, 403, 70, 38), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
298 (180, 392, 33, 19), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
299 (199, 383, 30, 18), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
300 (219, 378, 20, 10), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
301 (232, 370, 18, 11), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
302 )), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
303 } |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
304 INITIAL = 'pipes' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
305 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
306 def get_description(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
307 if not self.state.current_scene.things['engine.cryo_containers'] \ |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
308 .get_data('filled'): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
309 return "These pipes carry coolant to the superconductors. " \ |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
310 "They feel warm." |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
311 return "These pipes carry coolant to the superconductors. " \ |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
312 "They are very cold." |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
313 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
314 def is_interactive(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
315 return False |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
316 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
317 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
318 class PowerLines(Thing): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
319 NAME = 'engine.powerlines' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
320 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
321 INTERACTS = { |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
322 'lines': InteractRectUnion(( |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
323 (592, 270, 87, 21), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
324 (605, 259, 74, 14), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
325 (502, 280, 63, 13), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
326 (527, 272, 38, 11), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
327 (454, 229, 38, 11), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
328 (480, 232, 13, 45), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
329 (407, 229, 27, 10), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
330 )), |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
331 } |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
332 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
333 INITIAL = 'lines' |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
334 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
335 def get_description(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
336 if self.state.current_scene.things['engine.superconductor'] \ |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
337 .get_data('fixed'): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
338 return "Power lines. They are delivering power to the engines" |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
339 return "Power lines. It looks like they aren't working correctly" |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
340 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
341 def is_interactive(self): |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
342 return False |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
343 |
67e8a547970b
More engine room descs
Stefano Rivera <stefano@rivera.za.net>
parents:
307
diff
changeset
|
344 |
242 | 345 class ToMap(Door): |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
346 |
252
dfc89bc64fdb
Start of walkthrough "unit test" and associated fixes and tweaks.
Jeremy Thurgood <firxen@gmail.com>
parents:
244
diff
changeset
|
347 SCENE = "engine" |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
348 |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
349 INTERACTS = { |
262
5f58da9eeb52
Replace text interacts with doors.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
252
diff
changeset
|
350 "door": InteractNoImage(663, 360, 108, 193), |
151
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
351 } |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
352 |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
353 INITIAL = "door" |
d00aa26941c4
Add machine and engine rooms to map. Fix typo in name of mess hall doorway thing.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
55
diff
changeset
|
354 |
285
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
355 def get_description(self): |
2ec328aeeaf8
Engine room mostly hooked up
Stefano Rivera <stefano@rivera.za.net>
parents:
263
diff
changeset
|
356 return "The airlock leads back to the rest of the ship." |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
357 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
358 SCENES = [Engine] |