annotate gamelib/scenes/bridge.py @ 248:37f892b59c4b

Beeps on the bridge
author Neil Muller <neil@dip.sun.ac.za>
date Fri, 27 Aug 2010 13:40:10 +0200
parents 12c4f87ea424
children 602fe654bd37
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
1 """Bridge where the final showdown with the AI occurs."""
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
2
248
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
3 from albow.music import change_playlist, get_music, PlayList
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
4
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
5 from gamelib.cursor import CursorSprite
235
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
6 from gamelib.state import Scene, Item, Thing, Result, InteractText, \
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
7 InteractNoImage, InteractRectUnion
237
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
8 from gamelib.statehelpers import GenericDescThing
242
12c4f87ea424 Unify doors a bit
Neil Muller <neil@dip.sun.ac.za>
parents: 237
diff changeset
9 from gamelib.scenes.scene_widgets import Door
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
10
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
11 class Bridge(Scene):
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
12
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
13 FOLDER = "bridge"
235
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
14 BACKGROUND = 'bridge.png'
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
15
248
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
16 MUSIC = [
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
17 'beep330.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
18 'beep660.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
19 'beep880.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
20 'beep440.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
21 'silent.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
22 'creaking.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
23 'silent.ogg',
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
24 ]
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
25
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
26 INITIAL_DATA = {
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
27 'accessible': True,
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
28 }
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
29
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
30 def __init__(self, state):
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
31 super(Bridge, self).__init__(state)
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
32 self.add_item(Superconductor('superconductor'))
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
33 self.add_item(Stethoscope('stethoscope'))
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
34 self.add_thing(ToMap())
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
35 self.add_thing(MassageChair())
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
36 self.add_thing(StethoscopeThing())
237
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
37 self.add_thing(BridgeComputer())
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
38
120
48d24a48d0ce Enter and leave hooks
Neil Muller <neil@dip.sun.ac.za>
parents: 56
diff changeset
39 def enter(self):
248
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
40 pieces = [get_music(x, prefix='sounds') for x in self.MUSIC]
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
41 background_playlist = PlayList(pieces, random=True, repeat=True)
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
42 change_playlist(background_playlist)
120
48d24a48d0ce Enter and leave hooks
Neil Muller <neil@dip.sun.ac.za>
parents: 56
diff changeset
43 return Result("The bridge is in a sorry, shabby state")
48d24a48d0ce Enter and leave hooks
Neil Muller <neil@dip.sun.ac.za>
parents: 56
diff changeset
44
248
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
45 def leave(self):
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
46 change_playlist(None)
37f892b59c4b Beeps on the bridge
Neil Muller <neil@dip.sun.ac.za>
parents: 242
diff changeset
47
120
48d24a48d0ce Enter and leave hooks
Neil Muller <neil@dip.sun.ac.za>
parents: 56
diff changeset
48
242
12c4f87ea424 Unify doors a bit
Neil Muller <neil@dip.sun.ac.za>
parents: 237
diff changeset
49 class ToMap(Door):
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
50
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
51 NAME = "bridge.tomap"
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
52
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
53 INTERACTS = {
235
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
54 "door": InteractNoImage(707, 344, 84, 245),
150
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
55 }
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
56
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
57 INITIAL = "door"
5e5d71e40e54 Add bridge and mess to map and ways back.
Simon Cross <hodgestar+bzr@gmail.com>
parents: 120
diff changeset
58
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
59
237
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
60 class BridgeComputer(Thing):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
61 """The bridge computer. Gives status updates"""
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
62
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
63 NAME = "bridge.comp"
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
64
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
65 INTERACTS = {
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
66 'screen' : InteractNoImage(338, 296, 123, 74),
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
67 }
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
68
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
69 INITIAL = 'screen'
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
70
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
71 def interact_without(self):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
72 return Result(detail_view='bridge_comp_detail')
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
73
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
74 def interact_with_titanium_leg(self):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
75 return Result("You can't break the duraplastic screen.")
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
76
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
77 def interact_with_machete(self):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
78 return Result("Scratching the screen won't help you.")
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
79
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
80 def get_description(self):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
81 return "The main bridge computer screen."
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
82
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
83
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
84 class MassageChair(Thing):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
85 "The captain's massage chair, contains superconductor"
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
86
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
87 NAME = 'bridge.massagechair'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
88
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
89 INTERACTS = {
235
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
90 'chair': InteractRectUnion((
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
91 (76, 365, 72, 216),
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
92 (148, 486, 160, 97),
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
93 (148, 418, 77, 68),
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
94 )),
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
95 }
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
96
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
97 INITIAL = 'chair'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
98
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
99 INITIAL_DATA = {
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
100 'contains_superconductor': True,
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
101 }
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
102
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
103 def interact_without(self):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
104 return Result(detail_view='chair_detail')
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
105
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
106 def get_description(self):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
107 if self.get_data('contains_superconductor'):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
108 return "A top of the line Massage-o-Matic Captain's Executive Command Chair."
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
109 return "The chair won't work any more, it has no power."
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
110
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
111
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
112 class Stethoscope(Item):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
113 "Used for cracking safes. Found on the doctor on the chair"
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
114
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
115 INVENTORY_IMAGE = 'triangle.png'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
116 CURSOR = CursorSprite('triangle.png', 20, 30)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
117
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
118
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
119 class StethoscopeThing(Thing):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
120 "Stehoscope on the doctor"
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
121
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
122 NAME ='bridge.stethoscope'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
123
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
124 INTERACTS = {
235
b0add10f7556 Hook up bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 222
diff changeset
125 'stethoscope': InteractNoImage(643, 177, 57, 87),
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
126 }
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
127
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
128 INITIAL = 'stethoscope'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
129
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
130 def interact_without(self):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
131 self.state.add_inventory_item('stethoscope')
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
132 self.scene.remove_thing(self)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
133 return Result("You pick up the stethoscope and verify that the doctor's "
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
134 "heart has stoped. Probably a while ago.")
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
135
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
136
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
137 class Superconductor(Item):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
138 "Used for connecting high-powered parts of the ship up"
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
139
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
140 INVENTORY_IMAGE = 'triangle.png'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
141 CURSOR = CursorSprite('triangle.png', 20, 30)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
142
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
143
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
144 class SuperconductorThing(Thing):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
145 "Superconductor from the massage chair."
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
146
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
147 NAME ='bridge.superconductor'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
148
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
149 INTERACTS = {
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
150 'superconductor': InteractText(100, 200, 'Superconductor'),
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
151 }
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
152
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
153 INITIAL = 'superconductor'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
154
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
155 def interact_without(self):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
156 self.state.add_inventory_item('superconductor')
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
157 self.state.current_scene.things['bridge.massagechair'] \
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
158 .set_data('contains_superconductor', False)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
159 self.scene.remove_thing(self)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
160 return Result("You pick up the stethoscope and verify that the doctor's "
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
161 "heart has stoped. Probably a while ago.")
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
162
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
163 class ChairDetail(Scene):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
164
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
165 FOLDER = 'bridge'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
166 BACKGROUND = 'chair_detail.png'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
167 NAME = 'chair_detail'
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
168
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
169 SIZE = (300, 300)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
170
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
171 def __init__(self, state):
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
172 super(ChairDetail, self).__init__(state)
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
173 self.add_thing(SuperconductorThing())
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
174
237
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
175 class BridgeCompDetail(Scene):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
176
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
177 FOLDER = 'bridge'
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
178 BACKGROUND = 'comp_detail_1.png'
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
179 NAME = 'bridge_comp_detail'
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
180
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
181 SIZE = (300, 300)
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
182
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
183 def __init__(self, state):
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
184 super(BridgeCompDetail, self).__init__(state)
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
185
222
b03debaec72d Things and Items for bridge
Stefano Rivera <stefano@rivera.za.net>
parents: 150
diff changeset
186
47
8f1fccb8cadf Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff changeset
187 SCENES = [Bridge]
237
ae01c10497b3 Start work on bridge comp detail
Neil Muller <neil@dip.sun.ac.za>
parents: 235
diff changeset
188 DETAIL_VIEWS = [ChairDetail, BridgeCompDetail]