Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class Program
- {
- static void Main()
- {
- // Переменные для состояния игры
- bool hasKey = false;
- bool hasFlashlight = false;
- bool boxOpened = false;
- bool inDarkRoom = false;
- bool isMapFound = false;
- bool puzzleSolved = false;
- string currentRoom = "hallway"; // Игрок начинает в коридоре
- Console.WriteLine("Добро пожаловать в игру 'Побег из комнат'.");
- Console.WriteLine("Ваша задача — исследовать несколько комнат, решить загадки, найти ключи и выбраться.");
- // Бесконечный цикл игры
- while (true)
- {
- // Описание текущей комнаты
- if (currentRoom == "hallway")
- {
- Console.WriteLine("Вы находитесь в коридоре. Есть несколько дверей. Одна ведет в темную комнату, другая в кладовую.");
- }
- else if (currentRoom == "dark room")
- {
- if (inDarkRoom)
- {
- Console.WriteLine("Вы в темной комнате. Здесь слишком темно, чтобы видеть что-либо.");
- }
- else
- {
- Console.WriteLine("Вы включили фонарик. В комнате есть ящик.");
- }
- }
- else if (currentRoom == "storage")
- {
- Console.WriteLine("Вы в кладовой. Здесь много полок, и вы замечаете карту.");
- }
- else if (currentRoom == "locked room")
- {
- Console.WriteLine("Вы попали в запертую комнату. Для выхода нужен ключ.");
- }
- // Ввод игрока
- Console.WriteLine("Что вы хотите сделать?");
- Console.WriteLine("1. Осмотреть комнату");
- Console.WriteLine("2. Использовать предметы");
- Console.WriteLine("3. Перейти в другую комнату");
- Console.WriteLine("4. Решить головоломку");
- Console.WriteLine("5. Сдаться и выйти из игры");
- string input = Console.ReadLine();
- // Логика осмотра комнаты
- if (input == "1")
- {
- if (currentRoom == "hallway")
- {
- Console.WriteLine("Вы видите несколько дверей.");
- }
- else if (currentRoom == "dark room")
- {
- if (!hasFlashlight)
- {
- Console.WriteLine("Здесь слишком темно. Вам нужен фонарик.");
- }
- else if (!boxOpened)
- {
- Console.WriteLine("Вы осветили комнату и видите ящик.");
- }
- }
- else if (currentRoom == "storage")
- {
- if (!isMapFound)
- {
- Console.WriteLine("Вы нашли карту. Теперь вы знаете, как выбраться из здания.");
- isMapFound = true;
- }
- else
- {
- Console.WriteLine("В кладовой ничего больше нет.");
- }
- }
- }
- // Логика использования предметов
- else if (input == "2")
- {
- if (currentRoom == "dark room" && !boxOpened)
- {
- if (hasFlashlight)
- {
- Console.WriteLine("Вы использовали фонарик и открыли ящик. Внутри ключ.");
- hasKey = true;
- boxOpened = true;
- }
- else
- {
- Console.WriteLine("Здесь слишком темно для использования предметов.");
- }
- }
- else if (currentRoom == "locked room")
- {
- if (hasKey)
- {
- Console.WriteLine("Вы использовали ключ и открыли дверь. Вы выбрались! Игра окончена.");
- break; // Завершение игры
- }
- else
- {
- Console.WriteLine("У вас нет ключа.");
- }
- }
- else
- {
- Console.WriteLine("Здесь нечего использовать.");
- }
- }
- // Логика перемещения между комнатами
- else if (input == "3")
- {
- Console.WriteLine("Выберите комнату для перехода:");
- Console.WriteLine("1. Темная комната");
- Console.WriteLine("2. Кладовая");
- Console.WriteLine("3. Запертая комната");
- string choice = Console.ReadLine();
- if (choice == "1")
- {
- currentRoom = "dark room";
- inDarkRoom = true;
- Console.WriteLine("Вы вошли в темную комнату.");
- }
- else if (choice == "2")
- {
- currentRoom = "storage";
- Console.WriteLine("Вы вошли в кладовую.");
- }
- else if (choice == "3")
- {
- if (hasKey)
- {
- currentRoom = "locked room";
- Console.WriteLine("Вы открыли дверь и попали в запертую комнату.");
- }
- else
- {
- Console.WriteLine("Дверь заперта. Вам нужен ключ.");
- }
- }
- else
- {
- Console.WriteLine("Некорректный выбор.");
- }
- }
- // Логика решения головоломок
- else if (input == "4")
- {
- if (currentRoom == "hallway" && !puzzleSolved)
- {
- Console.WriteLine("Перед вами загадка: 'Что всегда идет, но никогда не приходит?'");
- string answer = Console.ReadLine();
- if (answer.ToLower() == "время" || answer.ToLower() == "time")
- {
- Console.WriteLine("Вы решили загадку! Путь вперед открыт.");
- puzzleSolved = true;
- }
- else
- {
- Console.WriteLine("Неправильный ответ. Попробуйте снова.");
- }
- }
- else if (puzzleSolved)
- {
- Console.WriteLine("Вы уже решили загадку.");
- }
- else
- {
- Console.WriteLine("Здесь нет головоломок для решения.");
- }
- }
- // Завершение игры
- else if (input == "5")
- {
- Console.WriteLine("Вы сдались. Игра окончена.");
- break; // Завершение игры
- }
- else
- {
- Console.WriteLine("Некорректная команда. Попробуйте снова.");
- }
- }
- Console.WriteLine("Спасибо за игру!");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement