Пример #1
0
     's soon as you raise the cross the ghast darts away from its light.\n'
     'You continue reciting prayer as you advance at the ever shrinking cloud of evil.\n'
     'As you finish the prayer the cross lets out a blinding light,\n'
     'the ghast shrieks and vanishes into thin air.',
     choices=[
         choices.ChoiceInspectRoom(
             text=
             'Move towards the iron gate at the far end of the room',
             scene='iron_gate'),
         choices.ChoiceNavigate('Go back to Entrance Hall',
                                level='level_1',
                                room='entrance_hall'),
     ],
     events=[
         events.UnlockJournal(entry.destroy_ghast),
         events.SetRoomFlagTrue('ghast_dead')
     ]),
 'ghast_illusion':
 interactions.thing.Thing(
     name='Ghast Illusion',
     opening_text=
     'The ghast charges at you yet you stand firmly, staring into its glowing eyes.\n'
     'As it reaches you it disperses into thin air. Nothing but an illusion.',
     choices=[
         choices.ChoiceInspectRoom(
             text=
             'Move towards the iron gate at the far end of the room',
             scene='iron_gate'),
         choices.ChoiceNavigate('Go back to Entrance Hall',
                                level='level_1',
                                room='entrance_hall'),
Пример #2
0
             conditions=[
                 conditions.GameFlagTrue('clock_scribble'),
                 conditions.OnlyOnce(),
             ]),
         choices.ChoiceBackToRoom('Leave the clock'),
     ],
     events=[events.UnlockJournal(entry.examine_clock)]),
 'clock_changed':
 interactions.thing.Thing(
     name='Old Clock',
     opening_text='As the mechanism clicks into place,\n'
     'you hear a rumbling of stone echoing from the dining room.',
     future_text='The Clock shows 3:15, the mechanism in place',
     choices=[choices.ChoiceBackToRoom('Leave clock')],
     events=[
         events.SetRoomFlagTrue('clock_changed'),
         events.SetRoomFlagTrue('door_open', room='dining_room'),
         events.UnlockJournal(entry.clock_hands)
     ]),
 # gargoyle fight
 'gargoyle_fight':
 interactions.thing.Thing(
     name='Grande Hall',
     opening_text='You flee from the beast into the Grande Hall.\n'
     'The gargoyle gives chase, smashing his way through every passage to small to fit his size.',
     choices=[
         choices.ChoiceNavigate('Run to the Library',
                                level='level_2',
                                room='library',
                                scene='gargoyle_fight',
                                conditions=[conditions.OnlyOnce()]),
Пример #3
0
 ),
 'shoot': interactions.thing.Thing(
     name='Combat with Shadow',
     opening_text='You aim quickly and shoot a bolt at the menacing shadow.\n'
                  'The bolt goes through him and gets lodged in the treasure chest.\n'
                  'The shadow then flies right through you!\n'
                  'A cold pain hits your lungs as you turn to face the shadow once more.',
     choices=[
         choices.ChoiceInspectRoom('Banish him with the cross!', 'banished',
                                   conditions=[conditions.PlayerHasItem(item.holy_cross)]),
         choices.ChoiceInspectRoom('Holy Water!', 'water', conditions=[conditions.RoomFlagFalse('water')]),
         choices.ChoiceInspectRoom('FIRE!', 'fire', conditions=[conditions.PlayerHasItem(item.flammable_oil)]),
         choices.ChoiceInspectRoom('Nitroglycerin!', 'nitro', conditions=[conditions.PlayerHasItem(item.nitro)]),
     ],
     events=[
         events.SetRoomFlagTrue('shoot')
     ]
 ),
 'water': interactions.thing.Thing(
     name='Combat with Shadow',
     opening_text='You splash the water at the shadow only for it to pass through him and spread on the floor.\n'
                  'The shadow flies through you leaving an echoing ring in your ears. You grow dizzy.',
     choices=[
         choices.ChoiceInspectRoom('Banish him with the cross!', 'banished',
                                   conditions=[conditions.PlayerHasItem(item.holy_cross)]),
         choices.ChoiceInspectRoom('Shoot Him!', 'shoot', conditions=[conditions.RoomFlagFalse('shoot')]),
         choices.ChoiceInspectRoom('FIRE!', 'fire', conditions=[conditions.PlayerHasItem(item.flammable_oil)]),
         choices.ChoiceInspectRoom('Nitroglycerin!', 'nitro', conditions=[conditions.PlayerHasItem(item.nitro)]),
     ],
     events=[
         events.SetRoomFlagTrue('water'),
Пример #4
0
     opening_text=
     'You turn a couple of valves and the fluids flow faster, filling up the end vial.\n'
     'You recognise the smell. This is nitroglycerin. You pocket the vial.',
     choices=[
         choices.ChoiceInspectRoom(
             text='Little Lock Box',
             scene='lock_box',
             conditions=[conditions.RoomFlagFalse('lock_box_broken')]),
         choices.ChoiceNavigate('Leave room',
                                level='level_2',
                                room='grande_hall'),
     ],
     events=[
         events.UnlockJournal(entry.make_nitro),
         events.AddItem(item.nitro),
         events.SetRoomFlagTrue('made_nitro'),
     ]),
 'lock_box':
 interactions.thing.Thing(
     name='Small Lock Box',
     opening_text=
     'You notice a small lock box sitting on a table. You rattle it and hear something inside.\n'
     'You smash the box open using the stock of your crossbow.\n'
     'Inside is a beautifully cut ruby the size of your fist.',
     choices=[
         choices.ChoiceInspectRoom(
             text='Chemistry Apparatus',
             scene='apparatus',
             conditions=[conditions.RoomFlagFalse('made_nitro')]),
         choices.ChoiceNavigate('Leave room',
                                level='level_2',
Пример #5
0
         choices.ChoiceInspectRoom(
             'Iv encountered a zombie up in the kitchen',
             'speak_zombie',
             conditions=[conditions.RoomFlagFalse('speak_zombie')]),
         choices.ChoiceInspectRoom(
             'What do you hope to achieve?',
             'speak_mistress',
             conditions=[conditions.RoomFlagFalse('speak_mistress')]),
         choices.ChoiceInspectRoom(
             'Iv been told that this place is cursed',
             'speak_curse',
             conditions=[conditions.RoomFlagFalse('speak_curse')]),
         choices.ChoiceInspectRoom('Vanquish evil! Fight mistress',
                                   'fight'),
     ],
     events=[events.SetRoomFlagTrue('speak_robert')]),
 'speak_zombie':
 interactions.thing.Thing(
     name='Mistress',
     opening_text='Her smirk is replaced with disgust.\n'
     '"A good servant turned traitor! Nothing sickens me more...\n'
     'He tried to escape with my ring. I punished him for that.\n'
     'He hid it well though, I never managed to find it.\n'
     'Thus I am marooned in this eternal torment."',
     prompt='What do you wish to ask?',
     choices=[
         choices.ChoiceInspectRoom(
             'Tell about robert',
             'speak_robert',
             conditions=[conditions.RoomFlagFalse('speak_robert')]),
         choices.ChoiceInspectRoom(