comparison gamelib/scenes/cryo.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 c193cbff785d
children 452230d78541
comparison
equal deleted inserted replaced
352:88c1a59b0544 353:b61dccc7fb42
41 self.add_thing(CryoRoomDoor()) 41 self.add_thing(CryoRoomDoor())
42 self.add_thing(CryoComputer()) 42 self.add_thing(CryoComputer())
43 self.add_thing(CryoPipeLeft()) 43 self.add_thing(CryoPipeLeft())
44 self.add_thing(CryoPipeRightTop()) 44 self.add_thing(CryoPipeRightTop())
45 self.add_thing(CryoPipeRightBottom()) 45 self.add_thing(CryoPipeRightBottom())
46 self.add_thing(CryoPools())
46 47
47 # Flavour items 48 # Flavour items
48 # pipes 49 # pipes
49 self.add_thing(GenericDescThing('cryo.pipes', 1, 50 self.add_thing(GenericDescThing('cryo.pipes', 1,
50 "These pipes carry cooling fluid to the cryo units.", 51 "These pipes carry cooling fluid to the cryo units.",
57 (11, 63, 140, 67), 58 (11, 63, 140, 67),
58 #(2, 130, 44, 394), 59 #(2, 130, 44, 394),
59 #(756, 127, 52, 393), 60 #(756, 127, 52, 393),
60 ))) 61 )))
61 self.add_thing(UncuttableCryoPipes()) 62 self.add_thing(UncuttableCryoPipes())
62
63 # leaks
64 self.add_thing(GenericDescThing('cryo.leaks', 2,
65 "Fluid leaks disturbingly from the bulkheads",
66 (
67 (444, 216, 125, 67),
68 (44, 133, 74, 107),
69 )))
70 63
71 # cryo units 64 # cryo units
72 self.add_thing(GenericCryoUnit(2, 65 self.add_thing(GenericCryoUnit(2,
73 "An empty cryo chamber.", 66 "An empty cryo chamber.",
74 "Prisoner 81E4-C8900480E635. Embezzlement. 20 years.", 67 "Prisoner 81E4-C8900480E635. Embezzlement. 20 years.",
421 return Result("The skeletal occupant of this cryo unit has an artificial femur made of titanium. You take it.") 414 return Result("The skeletal occupant of this cryo unit has an artificial femur made of titanium. You take it.")
422 415
423 def get_description(self): 416 def get_description(self):
424 return "This femur looks synthetic." 417 return "This femur looks synthetic."
425 418
419
426 class PlaqueThing(Thing): 420 class PlaqueThing(Thing):
427 "Plaque on the detailed cryo chamber" 421 "Plaque on the detailed cryo chamber"
428 422
429 NAME = "cryo.plaque" 423 NAME = "cryo.plaque"
430 424
437 def interact_without(self): 431 def interact_without(self):
438 return Result("The plaque is welded to the unit. You can't shift it") 432 return Result("The plaque is welded to the unit. You can't shift it")
439 433
440 def get_description(self): 434 def get_description(self):
441 return "'Prisoner 98cc-764e646391ee. War crimes. 45 years." 435 return "'Prisoner 98cc-764e646391ee. War crimes. 45 years."
436
437
438 class FullBottle(Item):
439 INVENTORY_IMAGE = 'triangle.png'
440 CURSOR = CursorSprite('triangle.png')
441
442
443 class CryoPools(Thing):
444 "Handy for cooling engines"
445
446 NAME = 'cryo.pool'
447
448 INTERACTS = {
449 'pools': InteractRectUnion((
450 (444, 216, 125, 67),
451 (44, 133, 74, 107),
452 (485, 396, 97, 34),
453 )),
454 }
455
456 INITIAL = 'pools'
457
458 def get_description(self):
459 return "Coolant leaks disturbingly from the bulkheads"
460
461 def interact_without(self):
462 return Result("It's gooey")
463
464 def interact_with_detergent_bottle(self, item):
465 full = FullBottle('full_detergent_bottle')
466 self.state.add_item(full)
467 self.state.replace_inventory_item(item.name, full.name)
468 return Result("You scoop up some coolant and fill the bottle")
469
442 470
443 class CryoCompDetail(Scene): 471 class CryoCompDetail(Scene):
444 472
445 FOLDER = "cryo" 473 FOLDER = "cryo"
446 BACKGROUND = "comp_info_detail.png" 474 BACKGROUND = "comp_info_detail.png"