! Copyright (C) 2022 Jason Self ! ! This file is free software: you may copy, redistribute and/or ! modify it under the terms of the GNU Affero General Public License ! as published by the Free Software Foundation, either version 3 of ! the License, or (at your option) any later version. ! ! This file is distributed in the hope that it will be useful, but ! WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! Affero General Public License for more details. ! ! You should have received a copy of the GNU Affero General Public ! License along with this file. If not, see https://gnu.org/licenses/ ! ! SPDX-License-Identifier: AGPL-3.0-or-later Object lobby1 "Hotel Lobby" with description "The lobby is a large open space with marble flooring, dark wood paneled walls, a high vaulted ceiling and an impressive crystal chandelier. The room feels full of light and quiet elegance. A life-sized bronze statue of a man in his twenties stands at the far end of the room. In front of the statue is a plush red leather chair next to a low marble table. The front desk is to the north. The lobby continues to the west and east.", has light; Object bronzestatue "life-sized bronze statue" lobby1 with name 'life-sized' 'bronze' 'statue', with description [; print "The life-sized bronze statue appears to be that of a young man with a very serious and determined expression on his face"; if (bronzestatue has visited) { print ", and there's a small crack running diagonally through one of the cheeks"; } print_ret ". The statue sits on a small pedestal bearing a plaque."; ], before [; Take, Pull, Push, PushDir, Turn: if (bronzestatue hasnt visited) { give bronzestatue visited; print_ret "The statue falls off its pedestal and lands on the ground, cracking loudly as it hits the floor. Some hotel staff hurry over to shoo you away and place the statue back on the pedestal."; } else { print_ret "Haven't you damaged the statue enough already?"; } ], has scenery; Object pedestal "stone pedestal" lobby1 with name 'stone' 'pedestal', with description "It's made of a dull grey stone and is rectangular in shape. There's a bronze plaque near the top.", has scenery; Object plaque "bronze plaque" lobby1 with name 'bronze' 'plaque' 'sign' 'plate', with description "The bronze plaque is engraved with the words ~Frederick Brian Smith, Hotel Founder~.", has scenery; Object marblefloor "marble floor" lobby1 with name 'marble' 'floor' 'flooring', with description "The marble floor has been polished to a sheen, making it appear almost shiny underfoot.", has scenery; Object woodpanels "dark wood paneled walls" lobby1 with name 'dark' 'wood' 'panel' 'panels' 'paneling' 'wall' 'walls', with description "The walls have been painted a rich deep brown color which contrasts nicely with the rest of the room.", has scenery; Object chandelier "crystal chandelier" lobby1 with name 'crystal' 'chandelier' 'gold' 'silver' 'filigree', with description "The crystal chandelier is beautiful and ornate, with many branches extending from a central shaft. It seems to be made mostly of clear crystal, though some parts are decorated with gold and silver filigree. The crystal chandelier is suspended by thick iron chains as it hangs in the center of the room, high above the marble floor.", has scenery; Object ironchains "thick iron chains" lobby1 with name 'thick' 'iron' 'chain' 'chains' 'metal', with description "The thick iron chains dangle down from the ceiling and connect to a crystal chandelier. They're strong enough to hold a great deal of weight without breaking.", has scenery; Object leatherchair "plush red leather chair" lobby1 with name 'plush' 'red' 'leather' 'chair', with description "It looks like a comfortable, well-made seat, featuring a high back and padded seat covered in soft red leather. It's clearly designed for comfort.", before [; Enter: print "You sink into the deep cushions of the chair. It feels really nice, as if it was made just for you. You can feel your body relax immediately.^"; PlayerTo(leatherchair, 1); rtrue; ], has enterable supporter scenery; Object marbletable "low marble table" lobby1 with name 'low' 'marble' 'table' 'leg' 'legs' 'stylized' 'vine' 'vines', with description "The table is made from a slab of white marble, looking smooth and polished. It's large enough to hold several books or magazines comfortably. The marble legs are carved with stylized vines.", before [; Enter: print "You sit on the surface of the low marble table; it feels cold and hard.^"; PlayerTo(marbletable, 1); rtrue; ], has enterable supporter scenery; Object ceiling "high valuted ceiling" lobby1 with name 'high' 'vaulted' 'ceiling' 'roof', with description "The high vaulted ceiling adds an air of grandeur. It makes this lobby feel even larger than it already is. An impressive crystal chandelier hangs from it.", has scenery; Object hotelmanager "the hotel manager" lobby1 with name 'hotel' 'manager' 'brian', with description "The hotel manager is a tall, distinguished man with brown eyes and salt-and-pepper hair. He wears a blue suit and a red tie. He's been working at the hotel for several years.", initial [; if (lobby1 hasnt visited) { print "~I'm so glad to see you made it back,~ says the hotel manager, who looks exhausted. You rub your arms vigorously trying to warm up and shake off the cold.^"; } ], times_grue_asked_about 0, times_name_asked_about 0, life [; Tell, Ask: switch (second) { 'grue': self.times_grue_asked_about = self.times_grue_asked_about + 1; switch (self.times_grue_asked_about) { 1: print_ret "The hotel manager goes pale. ~There's a grue in the area? I hadn't heard.~"; 2: print_ret "~I'm sorry; I've been too busy running the hotel to keep up on the news.~"; 3: print_ret "~We probably shouldn't be discussing this so as to not cause a panic.~"; default: "~Perhaps it's best to get some rest and not talk about such things.~"; } 'name': self.times_name_asked_about = self.times_name_asked_about + 1; switch (self.times_name_asked_about) { 1: print_ret "~My name is Brian,~ he replies."; 2: print_ret "~Brian.~ He replies. ~My parents named me after my father.~"; 3: print_ret "~I'm Brian, the hotel manager.~"; default: print_ret "~I believe we've covered that topic. Is there anything else I can assist with?~"; } } "~Yeah, yeah.~"; ], has animate proper male transparent; Object bluesuit "blue suit" hotelmanager with name 'blue' 'suit', with description "A soft blue suit that has a subtle pattern of black pinstripes.", before [; Take, Pull, Push, PushDir, Turn: print_ret "The hotel manager would probably not like that."; ], has scenery; Object redtie "red tie" hotelmanager with name 'red' 'tie', with description "A classic red necktie with a thin, straight black line running across the middle.", before [; Take, Pull, Push, PushDir, Turn: print_ret "The hotel manager would probably not like that."; ], has scenery;