diff gamelib/scenes/map.py @ 854:3577c51029f1 default tip

Remove Suspended Sentence. pyntnclick is the library we extracted from it
author Stefano Rivera <stefano@rivera.za.net>
date Sat, 21 Jun 2014 22:15:54 +0200
parents f95830b58336
children
line wrap: on
line diff
--- a/gamelib/scenes/map.py	Sat Jun 21 22:04:35 2014 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,216 +0,0 @@
-"""Neurally implanted schematic for moving around on the ship.
-
-   It is illegal for prisoners in transit to activate such an
-   implant. Failure to comply carries a minimum sentence of
-   six months.
-
-   Many parts of the ship are derelict and inaccessible.
-   """
-
-from pyntnclick.i18n import _
-from pyntnclick.state import Scene, Thing, Result
-from pyntnclick.scenewidgets import (InteractRectUnion, InteractUnion,
-        InteractText, InteractNoImage)
-
-from gamelib.scenes.game_constants import PLAYER_ID
-from gamelib.scenes.game_widgets import make_jim_dialog, make_sentence_dialog
-
-
-class Map(Scene):
-
-    FOLDER = "map"
-    BACKGROUND = 'map.png'
-
-    INITIAL_DATA = {
-        'implant': True,
-    }
-
-    def setup(self):
-        self.add_thing(ToCryo())
-        self.add_thing(ToBridge())
-        self.add_thing(ToMess())
-        self.add_thing(ToEngine())
-        self.add_thing(ToMachine())
-        self.add_thing(ToCrew())
-        self.add_thing(InaccessibleArea())
-        self.add_thing(HydroponicsArea())
-
-    def enter(self):
-        if self.get_data('implant'):
-            self.set_data('implant', False)
-            ai1 = make_jim_dialog(
-                _("Under the terms of the emergency conscription "
-                  "act, I have downloaded the ship's schematics to your "
-                  "neural implant to help you navigate around the ship."),
-                self.game)
-            if ai1:
-                self.state.increase_sentence(3)
-                return ai1, make_jim_dialog(_("Prisoner %s, you are a "
-                "class 1 felon. Obtaining access to the ship's schematics "
-                "constitutes a level 2 offence and carries a minimal penalty "
-                "of an additional 3 years on your sentence.") % PLAYER_ID,
-                self.game), make_sentence_dialog(PLAYER_ID, self.game)
-
-
-class DoorThing(Thing):
-
-    # name of destination
-    DEST = None
-
-    def interact(self, _item):
-        """Go to destination."""
-        if self.DEST in self.game.scenes:
-            self.game.change_scene(self.DEST)
-
-
-class ToCryo(DoorThing):
-    "Way to cryo room."
-
-    NAME = "map.tocryo"
-    DEST = "cryo"
-
-    INTERACTS = {
-        'door': InteractUnion((
-            InteractNoImage(515, 158, 56, 68),
-            InteractText(361, 512, 245, 33, _("Prisoner cryo chambers"),
-                'white', 20, 'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'door'
-
-
-class ToBridge(DoorThing):
-    "Way to bridge room."
-
-    NAME = "map.tobridge"
-    DEST = "bridge"
-
-    INTERACTS = {
-        'door': InteractUnion((
-            InteractNoImage(36, 260, 60, 83),
-            InteractText(26, 170, 71, 33, _("Bridge"), 'white', 20,
-                'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'door'
-
-
-class ToMess(DoorThing):
-    "Way to cryo room."
-
-    NAME = "map.tomess"
-    DEST = "mess"
-
-    INTERACTS = {
-        'door': InteractUnion((
-            InteractNoImage(395, 262, 64, 80),
-            InteractText(341, 430, 110, 33, _("Mess hall"), 'white', 20,
-                'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'door'
-
-
-class ToEngine(DoorThing):
-    "Way to engine room."
-
-    NAME = "map.toengine"
-    DEST = "engine"
-
-    INTERACTS = {
-        'door': InteractUnion((
-            InteractNoImage(691, 279, 76, 54),
-            InteractText(662, 496, 128, 33, _("Engine room"), 'white', 20,
-                'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'door'
-
-    def interact(self, item):
-        if not self.game.is_in_inventory('helmet:'):
-            return Result(_('The airlock refuses to open. The automated'
-                    ' voice says: "Hull breach beyond this door. Personnel'
-                    ' must be equipped for vacuum before entry."'))
-        else:
-            return super(ToEngine, self).interact(item)
-
-
-class ToMachine(DoorThing):
-    "Way to machine room."
-
-    NAME = "map.tomachine"
-    DEST = "machine"
-
-    INTERACTS = {
-        'door': InteractUnion((
-            InteractNoImage(608, 156, 57, 72),
-            InteractText(578, 83, 140, 33, _("Machine room"), 'white', 20,
-                'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'door'
-
-
-class ToCrew(DoorThing):
-    "Way to crew quarters."
-
-    NAME = "map.tocrew_quarters"
-    DEST = "crew_quarters"
-
-    INTERACTS = {
-        'door': InteractUnion((
-            InteractNoImage(210, 321, 37, 64),
-            InteractText(69, 460, 160, 33, _("Crew quarters"), 'white', 20,
-                'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'door'
-
-
-class InaccessibleArea(Thing):
-    NAME = 'map.inaccessible'
-
-    INTERACTS = {
-        'areas': InteractRectUnion((
-            (207, 227, 39, 63),
-            (256, 225, 35, 64),
-            (259, 322, 34, 64),
-            (514, 380, 58, 66),
-            (607, 377, 60, 70),
-        ))
-    }
-
-    INITIAL = 'areas'
-
-    def interact(self, _item):
-        return Result(_("You look in the door, but just see empty space: "
-                        "that room appears to have been obliterated by "
-                        "meteors."))
-
-
-class HydroponicsArea(Thing):
-    NAME = 'map.hydroponics'
-
-    INTERACTS = {
-        'areas': InteractUnion((
-            InteractNoImage(314, 263, 73, 81),
-            InteractText(313, 132, 140, 33, _("Hydroponics"), 'white', 20,
-                'Monospace.ttf'),
-        ))
-    }
-
-    INITIAL = 'areas'
-
-    def interact(self, _item):
-        return Result(_("Peering in through the window, you see that the "
-                        "entire chamber is overgrown with giant broccoli. "
-                        "It would take you years to cut a path through that."))
-
-
-SCENES = [Map]