Mercurial > boomslang
annotate gamelib/scenes/map.py @ 471:ee10f8300290
Final screenshot.
author | Simon Cross <hodgestar+bzr@gmail.com> |
---|---|
date | Sun, 29 Aug 2010 02:07:37 +0200 |
parents | af2a23b9787d |
children | a9925aaf5f61 821b322e903b |
rev | line source |
---|---|
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
1 """Neurally implanted schematic for moving around on the ship. |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
2 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
3 It is illegal for prisoners in transit to activate such an |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
4 implant. Failure to comply carries a minimum sentence of |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
5 six months. |
51 | 6 |
7 Many parts of the ship are derelict and inaccessible. | |
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 |
263
3b4a78422201
Shuffled a bunch of stuff into more appropriate places.
Jeremy Thurgood <firxen@gmail.com>
parents:
241
diff
changeset
|
10 from gamelib.state import Scene, Item, Thing, Result |
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:
241
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:
241
diff
changeset
|
13 InteractRectUnion, InteractImage, |
360
452230d78541
Use make_jim_dialog everywhere
Neil Muller <neil@dip.sun.ac.za>
parents:
355
diff
changeset
|
14 InteractAnimated, GenericDescThing, |
452230d78541
Use make_jim_dialog everywhere
Neil Muller <neil@dip.sun.ac.za>
parents:
355
diff
changeset
|
15 make_jim_dialog) |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
16 |
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 class Map(Scene): |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
19 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
20 FOLDER = "map" |
408 | 21 BACKGROUND = 'map.png' |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
22 |
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
23 INITIAL_DATA = { |
203 | 24 'implant': True, |
408 | 25 } |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
26 |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
27 def __init__(self, state): |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
28 super(Map, self).__init__(state) |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
29 self.add_thing(ToCryo()) |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
30 self.add_thing(ToBridge()) |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
31 self.add_thing(ToMess()) |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
32 self.add_thing(ToEngine()) |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
33 self.add_thing(ToMachine()) |
241
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
34 self.add_thing(ToCrew()) |
413
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
35 self.add_thing(InaccessibleArea()) |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
36 self.add_thing(HydroponicsArea()) |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
37 |
132
686bb74a52f8
Map shows accessible areas.
Jeremy Thurgood <firxen@gmail.com>
parents:
131
diff
changeset
|
38 def enter(self): |
203 | 39 if self.get_data('implant'): |
40 self.set_data('implant', False) | |
360
452230d78541
Use make_jim_dialog everywhere
Neil Muller <neil@dip.sun.ac.za>
parents:
355
diff
changeset
|
41 ai1 = make_jim_dialog( |
452230d78541
Use make_jim_dialog everywhere
Neil Muller <neil@dip.sun.ac.za>
parents:
355
diff
changeset
|
42 "Under the terms of the emergency conscription " |
224
8d8aef45db4e
fixed some typos
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
212
diff
changeset
|
43 "act, I have downloaded the ship's schematics to your " |
376
41ee3fc71404
Tweaks to text and JIM background.
Jeremy Thurgood <firxen@gmail.com>
parents:
360
diff
changeset
|
44 "neural implant to help you navigate around the ship.", |
41ee3fc71404
Tweaks to text and JIM background.
Jeremy Thurgood <firxen@gmail.com>
parents:
360
diff
changeset
|
45 self.state) |
360
452230d78541
Use make_jim_dialog everywhere
Neil Muller <neil@dip.sun.ac.za>
parents:
355
diff
changeset
|
46 if ai1: |
435 | 47 return ai1, make_jim_dialog("Prisoner %s, you are a " |
48 "class 1 felon. Obtaining access to the ship's schematics " | |
224
8d8aef45db4e
fixed some typos
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
212
diff
changeset
|
49 "constitutes a level 2 offence and carries a minimal penalty " |
435 | 50 "of an additional 3 years on your sentence." % PLAYER_ID, self.state) |
132
686bb74a52f8
Map shows accessible areas.
Jeremy Thurgood <firxen@gmail.com>
parents:
131
diff
changeset
|
51 |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
52 |
131 | 53 class DoorThing(Thing): |
54 | |
55 # name of destination | |
56 DEST = None | |
57 | |
466
af2a23b9787d
You can now use doors while wielding things.
Jeremy Thurgood <firxen@gmail.com>
parents:
444
diff
changeset
|
58 def interact(self, _item): |
131 | 59 """Go to destination.""" |
60 if self.DEST in self.state.scenes: | |
466
af2a23b9787d
You can now use doors while wielding things.
Jeremy Thurgood <firxen@gmail.com>
parents:
444
diff
changeset
|
61 self.state.set_current_scene(self.DEST) |
131 | 62 |
63 | |
64 class ToCryo(DoorThing): | |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
65 "Way to cryo room." |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
66 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
67 NAME = "map.tocryo" |
131 | 68 DEST = "cryo" |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
69 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
70 INTERACTS = { |
408 | 71 'door': InteractRectUnion(( |
72 (515, 158, 56, 68), | |
73 (361, 519, 245, 29), | |
74 )) | |
75 } | |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
76 |
408 | 77 INITIAL = 'door' |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
78 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
79 |
131 | 80 class ToBridge(DoorThing): |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
81 "Way to bridge room." |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
82 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
83 NAME = "map.tobridge" |
131 | 84 DEST = "bridge" |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
85 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
86 INTERACTS = { |
408 | 87 'door': InteractRectUnion(( |
88 (36, 260, 60, 83), | |
89 (26, 177, 71, 21), | |
90 )) | |
91 } | |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
92 |
408 | 93 INITIAL = 'door' |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
94 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
95 |
131 | 96 class ToMess(DoorThing): |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
97 "Way to cryo room." |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
98 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
99 NAME = "map.tomess" |
131 | 100 DEST = "mess" |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
101 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
102 INTERACTS = { |
408 | 103 'door': InteractRectUnion(( |
104 (395, 262, 64, 80), | |
105 (341, 434, 110, 27), | |
106 )) | |
107 } | |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
108 |
408 | 109 INITIAL = 'door' |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
110 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
111 |
132
686bb74a52f8
Map shows accessible areas.
Jeremy Thurgood <firxen@gmail.com>
parents:
131
diff
changeset
|
112 class ToEngine(DoorThing): |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
113 "Way to engine room." |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
114 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
115 NAME = "map.toengine" |
131 | 116 DEST = "engine" |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
117 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
118 INTERACTS = { |
408 | 119 'door': InteractRectUnion(( |
120 (691, 279, 76, 54), | |
121 (662, 500, 128, 23), | |
122 )) | |
123 } | |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
124 |
408 | 125 INITIAL = 'door' |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
126 |
466
af2a23b9787d
You can now use doors while wielding things.
Jeremy Thurgood <firxen@gmail.com>
parents:
444
diff
changeset
|
127 def interact(self, item): |
343
b3bc101171ea
Don't allow access to the engine room without helmet
Neil Muller <neil@dip.sun.ac.za>
parents:
263
diff
changeset
|
128 if not self.state.is_in_inventory('helmet'): |
345
782ff7e53928
Make airlock warning not JIM's
Neil Muller <neil@dip.sun.ac.za>
parents:
343
diff
changeset
|
129 return Result('The airlock refuses to open. The automated' |
417
aba8e7895324
map corrections
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
413
diff
changeset
|
130 ' voice says: "Hull breach beyond this door. Personnel' |
aba8e7895324
map corrections
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
413
diff
changeset
|
131 ' must be equipped for vacuum before entry."') |
343
b3bc101171ea
Don't allow access to the engine room without helmet
Neil Muller <neil@dip.sun.ac.za>
parents:
263
diff
changeset
|
132 else: |
466
af2a23b9787d
You can now use doors while wielding things.
Jeremy Thurgood <firxen@gmail.com>
parents:
444
diff
changeset
|
133 return super(ToEngine, self).interact(item) |
343
b3bc101171ea
Don't allow access to the engine room without helmet
Neil Muller <neil@dip.sun.ac.za>
parents:
263
diff
changeset
|
134 |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
135 |
131 | 136 class ToMachine(DoorThing): |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
137 "Way to machine room." |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
138 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
139 NAME = "map.tomachine" |
131 | 140 DEST = "machine" |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
141 |
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
142 INTERACTS = { |
408 | 143 'door': InteractRectUnion(( |
144 (608, 156, 57, 72), | |
145 (578, 91, 140, 23), | |
146 )) | |
147 } | |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
148 |
408 | 149 INITIAL = 'door' |
130
11afefc4aeaf
InteractText for mocking up scenes. Allow backgrounds to be None. Mock up map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
51
diff
changeset
|
150 |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
151 |
241
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
152 class ToCrew(DoorThing): |
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
153 "Way to crew quarters." |
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
154 |
355
bfb6c682b4fb
Updated walkthrough test as far as completed environmental puzzle.
Jeremy Thurgood <firxen@gmail.com>
parents:
345
diff
changeset
|
155 NAME = "map.tocrew_quarters" |
241
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
156 DEST = "crew_quarters" |
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
157 |
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
158 INTERACTS = { |
408 | 159 'door': InteractRectUnion(( |
160 (210, 321, 37, 64), | |
161 (69, 469, 148, 26), | |
162 )) | |
163 } | |
241
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
164 |
408 | 165 INITIAL = 'door' |
241
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
166 |
b1451b0b906f
Link crew quarters to map.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
224
diff
changeset
|
167 |
413
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
168 class InaccessibleArea(Thing): |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
169 NAME = 'map.inaccessible' |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
170 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
171 INTERACTS = { |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
172 'areas': InteractRectUnion(( |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
173 (207, 227, 39, 63), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
174 (256, 225, 35, 64), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
175 (259, 322, 34, 64), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
176 (514, 380, 58, 66), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
177 (607, 377, 60, 70), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
178 )) |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
179 } |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
180 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
181 INITIAL = 'areas' |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
182 |
466
af2a23b9787d
You can now use doors while wielding things.
Jeremy Thurgood <firxen@gmail.com>
parents:
444
diff
changeset
|
183 def interact(self, _item): |
417
aba8e7895324
map corrections
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
413
diff
changeset
|
184 return Result("You look in the door, but just see empty space: " |
444
b1e38ac3abb1
Obliterated by meteors.
Simon Cross <hodgestar+bzr@gmail.com>
parents:
435
diff
changeset
|
185 "that room appears to have been obliterated by meteors.") |
413
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
186 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
187 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
188 class HydroponicsArea(Thing): |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
189 NAME = 'map.hydroponics' |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
190 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
191 INTERACTS = { |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
192 'areas': InteractRectUnion(( |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
193 (314, 263, 73, 81), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
194 (313, 138, 125, 22), |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
195 )) |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
196 } |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
197 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
198 INITIAL = 'areas' |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
199 |
466
af2a23b9787d
You can now use doors while wielding things.
Jeremy Thurgood <firxen@gmail.com>
parents:
444
diff
changeset
|
200 def interact(self, _item): |
417
aba8e7895324
map corrections
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
413
diff
changeset
|
201 return Result("Peering in through the window, you see that the entire " |
aba8e7895324
map corrections
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
413
diff
changeset
|
202 "chamber is overgrown with giant broccoli. It would " |
aba8e7895324
map corrections
Adrianna Pińska <adrianna.pinska@gmail.com>
parents:
413
diff
changeset
|
203 "take you years to cut a path through that.") |
413
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
204 |
4ce318029cd1
Map: Inaccessible areas
Stefano Rivera <stefano@rivera.za.net>
parents:
408
diff
changeset
|
205 |
47
8f1fccb8cadf
Skeletons for scenes in plot outline.
Simon Cross <simon@simonx>
parents:
diff
changeset
|
206 SCENES = [Map] |