comparison gamelib/scenes/cryo.py @ 328:3cb48621759a

Add uncuttable cryo pipe interact
author Neil Muller <neil@dip.sun.ac.za>
date Sat, 28 Aug 2010 13:57:32 +0200
parents 5031b84fbb4c
children 0bb1ab329bee
comparison
equal deleted inserted replaced
327:67e8a547970b 328:3cb48621759a
49 "These pipes carry cooling fluid to the cryo units.", 49 "These pipes carry cooling fluid to the cryo units.",
50 ( 50 (
51 (552, 145, 129, 66), 51 (552, 145, 129, 66),
52 # (643, 199, 38, 233), 52 # (643, 199, 38, 233),
53 (636, 82, 165, 60), 53 (636, 82, 165, 60),
54 (756, 127, 52, 393),
55 (140, 135, 112, 73), 54 (140, 135, 112, 73),
56 # (125, 192, 27, 258), 55 # (125, 192, 27, 258),
57 (11, 63, 140, 67), 56 (11, 63, 140, 67),
58 (2, 130, 44, 394), 57 #(2, 130, 44, 394),
59 ))) 58 #(756, 127, 52, 393),
59 )))
60 self.add_thing(UncuttableCryoPipes())
60 61
61 # leaks 62 # leaks
62 self.add_thing(GenericDescThing('cryo.leaks', 2, 63 self.add_thing(GenericDescThing('cryo.leaks', 2,
63 "Fluid leaks disturbingly from the bulkheads", 64 "Fluid leaks disturbingly from the bulkheads",
64 ( 65 (
180 return Result("These pipes aren't attached to the wall very solidly.") 181 return Result("These pipes aren't attached to the wall very solidly.")
181 return None 182 return None
182 183
183 def get_description(self): 184 def get_description(self):
184 if self.get_data('fixed'): 185 if self.get_data('fixed'):
185 return "These pipes carry cooling fluid to the cryo units." 186 return "These pipes carry cooling fluid to empty cryo units."
186 return "There used to be a pipe carrying cooling fluid here" 187 return "There used to be a pipe carrying cooling fluid here"
188
189
190 class UncuttableCryoPipes(Thing):
191 "Base class for cryo pipes that can't be cut down."
192
193 NAME = "cryo.pipes.2"
194
195 INTERACTS = {
196 "fixed" : InteractRectUnion((
197 (2, 130, 44, 394),
198 (756, 127, 52, 393),))
199 }
200
201 INITIAL = "fixed"
202
203 def interact_with_machete(self, item):
204 return Result("These pipes carry fuild to the working cryo units."
205 " Chopping them down doesn't seem sensible.")
206
207 def is_interactive(self):
208 return True
209
210 def interact_without(self):
211 return Result("These pipes aren't attached to the wall very solidly.")
212
213 def get_description(self):
214 return "These pipes carry cooling fluid to the working cryo units."
187 215
188 216
189 class CryoPipe(CloneableItem): 217 class CryoPipe(CloneableItem):
190 "After emptying the full can." 218 "After emptying the full can."
191 219