Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2020
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.74 KB | None | 0 0
  1. class Program
  2. {
  3. static int coins;
  4. //Spacing for text
  5. static void Spacer()
  6. {
  7. Console.WriteLine();
  8. Console.WriteLine();
  9. Console.WriteLine();
  10. }
  11. // The main function of the code
  12. static void Main(string[] args)
  13. {
  14. ColorScheme();
  15. Console.Write("Enter username: ");
  16. string username = Console.ReadLine();
  17. Console.Write("Enter password: ");
  18. string password = Console.ReadLine();
  19. Login(username, password);
  20. welcomePage();
  21. Console.ReadKey();
  22. }
  23.  
  24. // Loads program and sets colour of background to yellow.
  25. public static void ColorScheme()
  26. {
  27. string loading = "Loading login details...";
  28. Console.SetCursorPosition((Console.WindowWidth - loading.Length) / 2, Console.CursorTop);
  29. Console.Write(loading);
  30. System.Threading.Thread.Sleep(3000);
  31. Console.Clear();
  32. Console.BackgroundColor = ConsoleColor.Cyan;
  33. Console.Clear();
  34. Console.ForegroundColor = ConsoleColor.Black;
  35. }
  36. // Login interface, 13 characters long (Username and password)
  37. public static void Login(string user, string pass)
  38. {
  39. string username, password;
  40.  
  41. if (user == "Lewis" && pass == "Password")
  42. {
  43. Console.Write("Successfully logged in, redirecting you now..");
  44. System.Threading.Thread.Sleep(3000);
  45. Console.Clear();
  46. }
  47. if (user != "Lewis" || pass != "Password")
  48. {
  49. Console.Write("Incorrect details, try again");
  50. System.Threading.Thread.Sleep(3000);
  51. Console.Clear();
  52. Console.Write("Enter username: ");
  53. username = Convert.ToString(Console.ReadLine());
  54. Console.Write("Enter password: ");
  55. password = Convert.ToString(Console.ReadLine());
  56. Login(username, password);
  57. }
  58. }
  59.  
  60. // Welcome page display
  61. public static void welcomePage()
  62. {
  63. string date = "14/12/2019";
  64. string name = "Lewis Dickinson";
  65. string narrative = "Zombie street, a platform shooter with the fun of obstacles.";
  66. Console.WriteLine();
  67. Console.SetCursorPosition((Console.WindowWidth - date.Length) / 2, Console.CursorTop);
  68. Console.WriteLine(date);
  69. Console.WriteLine();
  70. Console.SetCursorPosition((Console.WindowWidth - name.Length) / 2, Console.CursorTop);
  71. Console.WriteLine(name);
  72. Console.WriteLine();
  73. Console.SetCursorPosition((Console.WindowWidth - narrative.Length) / 2, Console.CursorTop);
  74. Console.WriteLine(narrative);
  75. System.Threading.Thread.Sleep(5000);
  76. Console.Clear();
  77. menu();
  78. }
  79. // Main Menu interface
  80. public static void menu()
  81. {
  82. int choice = 0;
  83. Console.WriteLine("Main Menu - Zombie Street");
  84. Console.WriteLine("==========================");
  85. Console.WriteLine("1. Zombie street game");
  86. Console.WriteLine("2. Help");
  87. Console.WriteLine("3. Exit");
  88. Console.WriteLine("==========================");
  89. Console.Write("Please enter 1, 2 or 3: ");
  90. choice = Convert.ToInt32(Console.ReadLine());
  91. switch (choice)
  92. {
  93. case 1:
  94. Console.Clear();
  95. string loading = "Loading level one..";
  96. Console.SetCursorPosition((Console.WindowWidth - loading.Length) / 2, Console.CursorTop);
  97. Console.WriteLine(loading);
  98. System.Threading.Thread.Sleep(3000);
  99. Console.Clear();
  100. LevelOne();
  101. break;
  102. case 2:
  103. help();
  104. break;
  105. case 3:
  106. exit();
  107. break;
  108. default:
  109. Console.Write("Invalid option, try again");
  110. System.Threading.Thread.Sleep(3000);
  111. menu();
  112. break;
  113. }
  114.  
  115. }
  116. // Help page and description.
  117. public static void help()
  118. {
  119. int choice = 0;
  120. string title = "Help Interface", n = "Use key 'N' to move north", s = "Use key 'S' to move south", e = "Use key 'E' to move south", w = "Use key 'W' to move south";
  121. Console.Clear();
  122. Console.SetCursorPosition((Console.WindowWidth - title.Length) / 2, Console.CursorTop);
  123. Console.WriteLine(title);
  124. Console.WriteLine();
  125. Console.SetCursorPosition((Console.WindowWidth - n.Length) / 2, Console.CursorTop);
  126. Console.WriteLine(n);
  127. Console.SetCursorPosition((Console.WindowWidth - s.Length) / 2, Console.CursorTop);
  128. Console.WriteLine(s);
  129. Console.SetCursorPosition((Console.WindowWidth - e.Length) / 2, Console.CursorTop);
  130. Console.WriteLine(e);
  131. Console.SetCursorPosition((Console.WindowWidth - w.Length) / 2, Console.CursorTop);
  132. Console.WriteLine(w);
  133. Console.Write("Type 1 to return: ");
  134. choice = Convert.ToInt32(Console.ReadLine());
  135. switch (choice)
  136. {
  137. case 1:
  138. Console.WriteLine("Returning to main menu..");
  139. System.Threading.Thread.Sleep(3000);
  140. Console.Clear();
  141. menu();
  142. break;
  143. default:
  144. Console.WriteLine("Invalid option, try again..");
  145. System.Threading.Thread.Sleep(3000);
  146. help();
  147. break;
  148. }
  149. }
  150. // Exit interface
  151. public static void exit()
  152. {
  153. string option = "Are you sure you want to quit?", optionTwo = "Yes / No", answer = "";
  154.  
  155. Console.Clear();
  156. Console.SetCursorPosition((Console.WindowWidth - option.Length) / 2, Console.CursorTop);
  157. Console.WriteLine(option);
  158. Console.SetCursorPosition((Console.WindowWidth - optionTwo.Length) / 2, Console.CursorTop);
  159. Console.WriteLine(optionTwo);
  160. Spacer();
  161. Console.SetCursorPosition((Console.WindowWidth - answer.Length) / 2, Console.CursorTop);
  162. Console.Write(answer);
  163. answer = Convert.ToString(Console.ReadLine());
  164. switch (answer)
  165. {
  166. case "Yes":
  167. Console.WriteLine("Closing application, thankyou for playing");
  168. System.Threading.Thread.Sleep(3000);
  169. Environment.Exit(0);
  170. break;
  171. case "No":
  172. Console.WriteLine("Returning to main menu");
  173. System.Threading.Thread.Sleep(3000);
  174. Console.Clear();
  175. menu();
  176. break;
  177. default:
  178. Console.WriteLine("Invalid option, try again..");
  179. System.Threading.Thread.Sleep(3000);
  180. exit();
  181. break;
  182. }
  183. }
  184. //start of level one
  185. static void LevelOne()
  186. {
  187. string Question = "You are lost, chose a direction you may believe to be the way home.", Answer = "Which direction would you like to go? ";
  188. Char Choice = 'A';
  189. Console.WriteLine();
  190. Console.SetCursorPosition((Console.WindowWidth - Question.Length) / 2, Console.CursorTop);
  191. Console.WriteLine(Question);
  192. Spacer();
  193. Console.ForegroundColor = ConsoleColor.Red;
  194. Console.WriteLine($"{".",-25} {"West",-20} {"North",-20} {"East",-20} {"South",-20}");
  195. Spacer();
  196. Console.ForegroundColor = ConsoleColor.Black;
  197. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  198. Console.Write(Answer);
  199. Choice = Convert.ToChar(Console.ReadLine());
  200. Spacer();
  201. switch (Choice)
  202. {
  203. case 'W':
  204. Console.WriteLine("You travel West..");
  205. System.Threading.Thread.Sleep(1500);
  206. Console.Clear();
  207. L1_W();
  208. break;
  209. case 'N':
  210. Console.WriteLine("You travel North..");
  211. System.Threading.Thread.Sleep(1500);
  212. Console.Clear();
  213. L1_N();
  214. break;
  215. case 'S':
  216. Console.WriteLine("You travel South..");
  217. System.Threading.Thread.Sleep(1500);
  218. Console.Clear();
  219. L1_S();
  220. break;
  221. case 'E':
  222. Console.WriteLine("You travel East..");
  223. System.Threading.Thread.Sleep(1500);
  224. Console.Clear();
  225. L1_E();
  226. break;
  227. default:
  228. Console.WriteLine("Invalid option, select option W/N/S/E");
  229. System.Threading.Thread.Sleep(2500);
  230. Console.Clear();
  231. LevelOne();
  232. break;
  233. }
  234. }
  235. //Direction north
  236. static void L1_N()
  237. {
  238. string score = "Coins: ";
  239. Console.WriteLine(score + coins);
  240. string Question = "You come across a locked gate, theres a pass code 237 and one digit missing.", QuestionTwo = "Theres a note that has a equation on it ”5x125”.";
  241. string Answer = "What is the last digit for the passcode? ";
  242. int number = 0;
  243. Console.WriteLine();
  244. Console.SetCursorPosition((Console.WindowWidth - Question.Length) / 2, Console.CursorTop);
  245. Console.WriteLine(Question);
  246. Console.SetCursorPosition((Console.WindowWidth - QuestionTwo.Length) / 2, Console.CursorTop);
  247. Console.WriteLine(QuestionTwo);
  248. Spacer();
  249. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  250. Console.Write(Answer);
  251. number = Convert.ToInt32(Console.ReadLine());
  252. Spacer();
  253. switch (number)
  254. {
  255. case 625:
  256. string right = "Correct, please choose a new direction";
  257. Console.ForegroundColor = ConsoleColor.DarkGreen;
  258. Console.SetCursorPosition((Console.WindowWidth - right.Length) / 2, Console.CursorTop);
  259. Console.WriteLine(right);
  260. System.Threading.Thread.Sleep(2500);
  261. coins += 3;
  262. Console.Clear();
  263. L1_NDirect();
  264. break;
  265. default:
  266. Console.ForegroundColor = ConsoleColor.Red;
  267. string wrong = "Wrong, please try again.";
  268. Console.SetCursorPosition((Console.WindowWidth - wrong.Length) / 2, Console.CursorTop);
  269. Console.WriteLine(wrong + "HINT: Try using a calculator");
  270. System.Threading.Thread.Sleep(2500);
  271. Console.Clear();
  272. coins--;
  273. Console.ForegroundColor = ConsoleColor.Black;
  274. L1_N();
  275. break;
  276. }
  277. }
  278. //Direction north, Correct
  279. static void L1_NDirect()
  280. {
  281. string score = "Coins: ";
  282. Console.WriteLine(score + coins);
  283. Char Choice = 'A';
  284. string Answer = "Which direction would you like to go ? ";
  285. Spacer();
  286. Console.ForegroundColor = ConsoleColor.Red;
  287. Console.WriteLine($"{".",-35} {"West",-20} {"East",-20} {"North",-20}");
  288. Spacer();
  289. Console.ForegroundColor = ConsoleColor.Black;
  290. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  291. Console.Write(Answer);
  292. Choice = Convert.ToChar(Console.ReadLine());
  293. Spacer();
  294. switch (Choice)
  295. {
  296. case 'W':
  297. Console.WriteLine("You travel West..");
  298. System.Threading.Thread.Sleep(1500);
  299. Console.Clear();
  300. break;
  301. case 'N':
  302. Console.WriteLine("You travel North..");
  303. System.Threading.Thread.Sleep(1500);
  304. Console.Clear();
  305. break;
  306. case 'E':
  307. Console.WriteLine("You travel East..");
  308. System.Threading.Thread.Sleep(1500);
  309. Console.Clear();
  310. break;
  311. default:
  312. Console.WriteLine("Invalid option, select option W/N/E");
  313. System.Threading.Thread.Sleep(2500);
  314. L1_NDirect();
  315. break;
  316. }
  317. }
  318. //Direction west
  319. static void L1_W()
  320. {
  321. string score = "Coins: ";
  322. Console.WriteLine(score + coins);
  323. string Question = "You come across a locked gate, theres a pass code 237 and one digit missing.", QuestionTwo = "Theres a note that has a equation on it ”5x125”.";
  324. string Answer = "What is the last digit for the passcode? ";
  325. int number = 0;
  326. Console.WriteLine();
  327. Console.SetCursorPosition((Console.WindowWidth - Question.Length) / 2, Console.CursorTop);
  328. Console.WriteLine(Question);
  329. Console.SetCursorPosition((Console.WindowWidth - QuestionTwo.Length) / 2, Console.CursorTop);
  330. Console.WriteLine(QuestionTwo);
  331. Spacer();
  332. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  333. Console.Write(Answer);
  334. number = Convert.ToInt32(Console.ReadLine());
  335. Spacer();
  336. switch (number)
  337. {
  338. case 625:
  339. string right = "Correct, please choose a new direction";
  340. Console.ForegroundColor = ConsoleColor.DarkGreen;
  341. Console.SetCursorPosition((Console.WindowWidth - right.Length) / 2, Console.CursorTop);
  342. Console.WriteLine(right);
  343. System.Threading.Thread.Sleep(2500);
  344. Console.Clear();
  345. coins += 3;
  346. L1_WDirect();
  347. break;
  348. default:
  349. Console.ForegroundColor = ConsoleColor.Red;
  350. string wrong = "Wrong, please try again.";
  351. Console.SetCursorPosition((Console.WindowWidth - wrong.Length) / 2, Console.CursorTop);
  352. Console.WriteLine(wrong + "HINT: Try using a calculator");
  353. System.Threading.Thread.Sleep(2500);
  354. Console.Clear();
  355. coins--;
  356. Console.ForegroundColor = ConsoleColor.Black;
  357. L1_W();
  358. break;
  359. }
  360. }
  361. //Direction west, correct
  362. static void L1_WDirect()
  363. {
  364. string score = "Coins: ";
  365. Console.WriteLine(score + coins);
  366. Char Choice = 'A';
  367. string Answer = "Which direction would you like to go ? ";
  368. Console.ForegroundColor = ConsoleColor.Red;
  369. Console.WriteLine($"{".",-35} {"North",-20} {"East",-20} {"South",-20}");
  370. Spacer();
  371. Console.ForegroundColor = ConsoleColor.Black;
  372. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  373. Console.Write(Answer);
  374. Choice = Convert.ToChar(Console.ReadLine());
  375. Spacer();
  376. switch (Choice)
  377. {
  378. case 'N':
  379. Console.WriteLine("You travel North..");
  380. System.Threading.Thread.Sleep(1500);
  381. Console.Clear();
  382. break;
  383. case 'S':
  384. Console.WriteLine("You travel South..");
  385. System.Threading.Thread.Sleep(1500);
  386. Console.Clear();
  387. break;
  388. case 'W':
  389. Console.WriteLine("You travel West..");
  390. System.Threading.Thread.Sleep(1500);
  391. Console.Clear();
  392. break;
  393. default:
  394. Console.WriteLine("Invalid option, select option N/S/W");
  395. System.Threading.Thread.Sleep(2500);
  396. L1_WDirect();
  397. break;
  398. }
  399. }
  400.  
  401. //Direction south
  402. static void L1_S()
  403. {
  404. string score = "Coins: ";
  405. Console.WriteLine(score + coins);
  406. string Question = "You come across a locked gate, theres a pass code 237 and one digit missing.", QuestionTwo = "Theres a note that has a equation on it ”5x125”.";
  407. string Answer = "What is the last digit for the passcode? ";
  408. int number = 0;
  409. Console.WriteLine();
  410. Console.SetCursorPosition((Console.WindowWidth - Question.Length) / 2, Console.CursorTop);
  411. Console.WriteLine(Question);
  412. Console.SetCursorPosition((Console.WindowWidth - QuestionTwo.Length) / 2, Console.CursorTop);
  413. Console.WriteLine(QuestionTwo);
  414. Spacer();
  415. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  416. Console.Write(Answer);
  417. number = Convert.ToInt32(Console.ReadLine());
  418. Spacer();
  419. switch (number)
  420. {
  421. case 625:
  422. string right = "Correct, please choose a new direction";
  423. Console.ForegroundColor = ConsoleColor.DarkGreen;
  424. Console.SetCursorPosition((Console.WindowWidth - right.Length) / 2, Console.CursorTop);
  425. Console.WriteLine(right);
  426. System.Threading.Thread.Sleep(2500);
  427. Console.Clear();
  428. coins += 3;
  429. L1_SDirect();
  430. break;
  431. default:
  432. Console.ForegroundColor = ConsoleColor.Red;
  433. string wrong = "Wrong, please try again.";
  434. Console.SetCursorPosition((Console.WindowWidth - wrong.Length) / 2, Console.CursorTop);
  435. Console.WriteLine(wrong + "HINT: Try using a calculator");
  436. System.Threading.Thread.Sleep(2500);
  437. Console.Clear();
  438. coins--;
  439. Console.ForegroundColor = ConsoleColor.Black;
  440. L1_S();
  441. break;
  442. }
  443. }
  444. //Direction south, correct
  445. static void L1_SDirect()
  446. {
  447. string score = "Coins: ";
  448. Console.WriteLine(score + coins);
  449. Char Choice = 'A';
  450. string Answer = "Which direction would you like to go ? ";
  451. Console.ForegroundColor = ConsoleColor.Red;
  452. Console.WriteLine($"{".",-35} {"West",-20} {"East",-20} {"North",-20}");
  453. Spacer();
  454. Console.ForegroundColor = ConsoleColor.Black;
  455. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  456. Console.Write(Answer);
  457. Choice = Convert.ToChar(Console.ReadLine());
  458. Spacer();
  459. switch (Choice)
  460. {
  461. case 'W':
  462. Console.WriteLine("You travel West..");
  463. System.Threading.Thread.Sleep(1500);
  464. Console.Clear();
  465. break;
  466. case 'S':
  467. Console.WriteLine("You travel South..");
  468. System.Threading.Thread.Sleep(1500);
  469. Console.Clear();
  470. break;
  471. case 'E':
  472. Console.WriteLine("You travel East..");
  473. System.Threading.Thread.Sleep(1500);
  474. Console.Clear();
  475. break;
  476. default:
  477. Console.WriteLine("Invalid option, select option W/S/E");
  478. System.Threading.Thread.Sleep(2500);
  479. L1_SDirect();
  480. break;
  481. }
  482. }
  483. //Direction east
  484. static void L1_E()
  485. {
  486. string score = "Coins: ";
  487. Console.WriteLine(score + coins);
  488. string Question = "You come across a locked gate, theres a pass code 237 and one digit missing.", QuestionTwo = "Theres a note that has a equation on it ”5x125”.";
  489. string Answer = "What is the last digit for the passcode? ";
  490. int number = 0;
  491. Console.WriteLine();
  492. Console.SetCursorPosition((Console.WindowWidth - Question.Length) / 2, Console.CursorTop);
  493. Console.WriteLine(Question);
  494. Console.SetCursorPosition((Console.WindowWidth - QuestionTwo.Length) / 2, Console.CursorTop);
  495. Console.WriteLine(QuestionTwo);
  496. Spacer();
  497. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  498. Console.Write(Answer);
  499. number = Convert.ToInt32(Console.ReadLine());
  500. Spacer();
  501. switch (number)
  502. {
  503. case 625:
  504. string right = "Correct, please choose a new direction";
  505. Console.ForegroundColor = ConsoleColor.DarkGreen;
  506. Console.SetCursorPosition((Console.WindowWidth - right.Length) / 2, Console.CursorTop);
  507. Console.WriteLine(right);
  508. System.Threading.Thread.Sleep(2500);
  509. Console.Clear();
  510. coins += 3;
  511. L1_EDirect();
  512. break;
  513. default:
  514. Console.ForegroundColor = ConsoleColor.Red;
  515. string wrong = "Wrong, please try again.";
  516. Console.SetCursorPosition((Console.WindowWidth - wrong.Length) / 2, Console.CursorTop);
  517. Console.WriteLine(wrong + "HINT: Try using a calculator");
  518. System.Threading.Thread.Sleep(2500);
  519. Console.Clear();
  520. coins--;
  521. Console.ForegroundColor = ConsoleColor.Black;
  522. L1_E();
  523. break;
  524. }
  525. }
  526. //Direction East, correct
  527. static void L1_EDirect()
  528. {
  529. string score = "Coins: ";
  530. Console.WriteLine(score + coins);
  531. Char Choice = 'A';
  532. string Answer = "Which direction would you like to go ? ";
  533. Console.ForegroundColor = ConsoleColor.Red;
  534. Console.WriteLine($"{".",-35} {"West",-20} {"East",-20} {"North",-20}");
  535. Spacer();
  536. Console.ForegroundColor = ConsoleColor.Black;
  537. Console.SetCursorPosition((Console.WindowWidth - Answer.Length) / 2, Console.CursorTop);
  538. Console.Write(Answer);
  539. Choice = Convert.ToChar(Console.ReadLine());
  540. Spacer();
  541. switch (Choice)
  542. {
  543. case 'E':
  544. Console.WriteLine("You travel East..");
  545. System.Threading.Thread.Sleep(1500);
  546. Console.Clear();
  547. break;
  548. case 'N':
  549. Console.WriteLine("You travel North..");
  550. System.Threading.Thread.Sleep(1500);
  551. Console.Clear();
  552. break;
  553. case 'S':
  554. Console.WriteLine("You travel South..");
  555. System.Threading.Thread.Sleep(1500);
  556. Console.Clear();
  557. break;
  558. default:
  559. Console.WriteLine("Invalid option, select option E/N/S");
  560. System.Threading.Thread.Sleep(2500);
  561. L1_EDirect();
  562. break;
  563. }
  564. }
  565.  
  566. }
  567. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement