Advertisement
fuccpuff

Untitled

Oct 1st, 2024
15
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.63 KB | None | 0 0
  1. using System;
  2.  
  3. class Program
  4. {
  5. static void Main()
  6. {
  7. // Переменные для состояния игры
  8. bool hasKey = false;
  9. bool hasFlashlight = false;
  10. bool boxOpened = false;
  11. bool inDarkRoom = false;
  12. bool isMapFound = false;
  13. bool puzzleSolved = false;
  14. string currentRoom = "hallway"; // Игрок начинает в коридоре
  15.  
  16. Console.WriteLine("Добро пожаловать в игру 'Побег из комнат'.");
  17. Console.WriteLine("Ваша задача — исследовать несколько комнат, решить загадки, найти ключи и выбраться.");
  18.  
  19. // Бесконечный цикл игры
  20. while (true)
  21. {
  22. // Описание текущей комнаты
  23. if (currentRoom == "hallway")
  24. {
  25. Console.WriteLine("Вы находитесь в коридоре. Есть несколько дверей. Одна ведет в темную комнату, другая в кладовую.");
  26. }
  27. else if (currentRoom == "dark room")
  28. {
  29. if (inDarkRoom)
  30. {
  31. Console.WriteLine("Вы в темной комнате. Здесь слишком темно, чтобы видеть что-либо.");
  32. }
  33. else
  34. {
  35. Console.WriteLine("Вы включили фонарик. В комнате есть ящик.");
  36. }
  37. }
  38. else if (currentRoom == "storage")
  39. {
  40. Console.WriteLine("Вы в кладовой. Здесь много полок, и вы замечаете карту.");
  41. }
  42. else if (currentRoom == "locked room")
  43. {
  44. Console.WriteLine("Вы попали в запертую комнату. Для выхода нужен ключ.");
  45. }
  46.  
  47. // Ввод игрока
  48. Console.WriteLine("Что вы хотите сделать?");
  49. Console.WriteLine("1. Осмотреть комнату");
  50. Console.WriteLine("2. Использовать предметы");
  51. Console.WriteLine("3. Перейти в другую комнату");
  52. Console.WriteLine("4. Решить головоломку");
  53. Console.WriteLine("5. Сдаться и выйти из игры");
  54.  
  55. string input = Console.ReadLine();
  56.  
  57. // Логика осмотра комнаты
  58. if (input == "1")
  59. {
  60. if (currentRoom == "hallway")
  61. {
  62. Console.WriteLine("Вы видите несколько дверей.");
  63. }
  64. else if (currentRoom == "dark room")
  65. {
  66. if (!hasFlashlight)
  67. {
  68. Console.WriteLine("Здесь слишком темно. Вам нужен фонарик.");
  69. }
  70. else if (!boxOpened)
  71. {
  72. Console.WriteLine("Вы осветили комнату и видите ящик.");
  73. }
  74. }
  75. else if (currentRoom == "storage")
  76. {
  77. if (!isMapFound)
  78. {
  79. Console.WriteLine("Вы нашли карту. Теперь вы знаете, как выбраться из здания.");
  80. isMapFound = true;
  81. }
  82. else
  83. {
  84. Console.WriteLine("В кладовой ничего больше нет.");
  85. }
  86. }
  87. }
  88. // Логика использования предметов
  89. else if (input == "2")
  90. {
  91. if (currentRoom == "dark room" && !boxOpened)
  92. {
  93. if (hasFlashlight)
  94. {
  95. Console.WriteLine("Вы использовали фонарик и открыли ящик. Внутри ключ.");
  96. hasKey = true;
  97. boxOpened = true;
  98. }
  99. else
  100. {
  101. Console.WriteLine("Здесь слишком темно для использования предметов.");
  102. }
  103. }
  104. else if (currentRoom == "locked room")
  105. {
  106. if (hasKey)
  107. {
  108. Console.WriteLine("Вы использовали ключ и открыли дверь. Вы выбрались! Игра окончена.");
  109. break; // Завершение игры
  110. }
  111. else
  112. {
  113. Console.WriteLine("У вас нет ключа.");
  114. }
  115. }
  116. else
  117. {
  118. Console.WriteLine("Здесь нечего использовать.");
  119. }
  120. }
  121. // Логика перемещения между комнатами
  122. else if (input == "3")
  123. {
  124. Console.WriteLine("Выберите комнату для перехода:");
  125. Console.WriteLine("1. Темная комната");
  126. Console.WriteLine("2. Кладовая");
  127. Console.WriteLine("3. Запертая комната");
  128.  
  129. string choice = Console.ReadLine();
  130.  
  131. if (choice == "1")
  132. {
  133. currentRoom = "dark room";
  134. inDarkRoom = true;
  135. Console.WriteLine("Вы вошли в темную комнату.");
  136. }
  137. else if (choice == "2")
  138. {
  139. currentRoom = "storage";
  140. Console.WriteLine("Вы вошли в кладовую.");
  141. }
  142. else if (choice == "3")
  143. {
  144. if (hasKey)
  145. {
  146. currentRoom = "locked room";
  147. Console.WriteLine("Вы открыли дверь и попали в запертую комнату.");
  148. }
  149. else
  150. {
  151. Console.WriteLine("Дверь заперта. Вам нужен ключ.");
  152. }
  153. }
  154. else
  155. {
  156. Console.WriteLine("Некорректный выбор.");
  157. }
  158. }
  159. // Логика решения головоломок
  160. else if (input == "4")
  161. {
  162. if (currentRoom == "hallway" && !puzzleSolved)
  163. {
  164. Console.WriteLine("Перед вами загадка: 'Что всегда идет, но никогда не приходит?'");
  165. string answer = Console.ReadLine();
  166. if (answer.ToLower() == "время" || answer.ToLower() == "time")
  167. {
  168. Console.WriteLine("Вы решили загадку! Путь вперед открыт.");
  169. puzzleSolved = true;
  170. }
  171. else
  172. {
  173. Console.WriteLine("Неправильный ответ. Попробуйте снова.");
  174. }
  175. }
  176. else if (puzzleSolved)
  177. {
  178. Console.WriteLine("Вы уже решили загадку.");
  179. }
  180. else
  181. {
  182. Console.WriteLine("Здесь нет головоломок для решения.");
  183. }
  184. }
  185. // Завершение игры
  186. else if (input == "5")
  187. {
  188. Console.WriteLine("Вы сдались. Игра окончена.");
  189. break; // Завершение игры
  190. }
  191. else
  192. {
  193. Console.WriteLine("Некорректная команда. Попробуйте снова.");
  194. }
  195. }
  196.  
  197. Console.WriteLine("Спасибо за игру!");
  198. }
  199. }
  200.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement