Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.IO;
- namespace ConsoleApplication
- {
- internal class Program
- {
- public static void Main(string[] args)
- {
- Console.SetWindowSize(100, 50);
- while (true)
- {
- Console.Clear();
- Console.Write("Willkommen im Casino Royale!\n\nBitte gib deinen Namen ein: ");
- string name = Console.ReadLine();
- if (!File.Exists("highscore.txt"))
- {
- File.Create("highscore.txt").Dispose();
- }
- string highscore = File.ReadAllText("highscore.txt");
- //MENÜ
- ConsoleKeyInfo key;
- string auswahl = " ";
- while (auswahl != "S")
- {
- Console.Clear();
- Console.WriteLine("CASINO ROYALE\n\n");
- Console.WriteLine("Spiel Starten (Drücke die Taste 's')");
- Console.WriteLine("Highscore (Drücke die Taste 'h')");
- Console.WriteLine("Du bist nicht " + name + "? (Drücke die Taste 'n')");
- Console.WriteLine("Spiel Beenden (Drücke die Taste 'b')");
- key = Console.ReadKey(true);
- auswahl = key.Key.ToString();
- while (auswahl != "B" && auswahl != "H" && auswahl != "S" && auswahl != "N")
- {
- Console.Clear();
- Console.WriteLine("CASINO ROYALE\n\n");
- Console.WriteLine("Spiel Starten (Drücke die Taste 's')");
- Console.WriteLine("Highscore (Drücke die Taste 'h')");
- Console.WriteLine("Spiel Beenden (Drücke die Taste 'b')");
- Console.WriteLine("\nUngültige Eingabe. Bitte wiederholen!");
- key = Console.ReadKey(true);
- auswahl = key.Key.ToString();
- }
- //HIGHSCORE
- if (auswahl == "H")
- {
- Console.Clear();
- Console.WriteLine("HIGHSCORE\n\n" + highscore + "\n\nDrücke eine beliebige Taste zum zurückkehren.");
- Console.ReadKey();
- }
- //FALSCHER NAME
- if (auswahl == "N")
- {
- Console.Clear();
- Console.WriteLine("Bitte gib deinen Namen ein: ");
- name = Console.ReadLine();
- }
- //BEENDEN
- if (auswahl == "B")
- {
- Environment.Exit(0);
- }
- }
- // SPIELSTART
- if (auswahl == "S")
- {
- Console.Clear();
- int guthaben = 100;
- Random gen = new Random();
- Console.WriteLine("Willkommen im Casino Royale!\nDu hast " + guthaben + " Guthaben!");
- Console.WriteLine(
- "Schätze eine Zahl zwischen 1 und 100. Wenn du genau triffst erhältst du 5 mal deinen Einsatz!");
- Console.WriteLine(
- "Wenn du um 5 daneben liegst, 3 mal deinen Einsatz. Und wenn du um 10 daneben liegst, den doppelten Einsatz!");
- Console.WriteLine("Bis 20 erhältst du deinen Einsatz zurück!");
- Console.WriteLine("Wenn du weiter als 20 entfernt bist verlierst du deinen Einsatz!");
- Console.WriteLine(
- "\nDu kannst das Spiel jederzeit beenden, um dein Guthaben in den Highscore aufzunehmen!");
- while (guthaben > 0)
- {
- int einsatz, angabe, gewinn;
- bool result;
- Console.Clear();
- Console.WriteLine("\nGuthaben: " + guthaben);
- Console.Write("Wie hoch ist dein Einsatz? ");
- while (!(result = (int.TryParse(Console.ReadLine(), out einsatz))) || (einsatz > guthaben || einsatz <= 0))
- {
- Console.WriteLine(!result
- ? "Falsche Eingabe! Bitte wiederholen!"
- : "Du hast nicht so viel Guthaben! Bitte Eingabe wiederholen!");
- }
- Console.Write("Was ist deine Schätzung? ");
- while (!(result = (int.TryParse(Console.ReadLine(), out angabe))) || (angabe < 1 || angabe > 100))
- {
- Console.WriteLine(!result
- ? "Falsche Eingabe! Bitte wiederholen!"
- : "Die Schätzung muss zwischen 1 und 100 liegen! Bitte Eingabe wiederholen!");
- }
- int wert = gen.Next(1, 101);
- Console.Clear();
- Console.WriteLine("Der Wert ist " + wert + " !");
- int diff = Math.Abs(angabe - wert);
- if (diff == 0)
- {
- Console.WriteLine("Volltreffer! Du bekommst den 5-fachen Einsatz als Guthaben!");
- guthaben += (gewinn = 5 * einsatz);
- }
- else if (diff <= 5)
- {
- Console.WriteLine("Du liegst nur um " + diff + " daneben! Du bekommst den 3-fachen Einsatz als Guthaben!");
- guthaben += (gewinn = 3 * einsatz);
- }
- else if (diff <= 10)
- {
- Console.WriteLine("Du liegst um " + diff + " daneben! Du bekommst den 2-fachen Einsatz als Guthaben!");
- guthaben += (gewinn = 2 * einsatz);
- }
- else if (diff <= 20)
- {
- Console.WriteLine("Du liegst um " + diff + " daneben! Du bekommst deinen Einsatz als Guthaben zurück!");
- gewinn = 0;
- }
- else
- {
- Console.WriteLine("Leider liegst du komplett daneben! Du verlierst deinen kompletten Einsatz!");
- guthaben -= (gewinn = einsatz);
- }
- Console.Write("\n\nDeine Schätzung: " + angabe + " | Zufallszahl: " + wert + " | ");
- Console.WriteLine(diff > 20 ? "Verlust: " + einsatz : "Gewinn: " + gewinn);
- if (guthaben <= 0)
- {
- Console.WriteLine("\n\nLeider hast du kein Guthaben mehr übrig.\nDrücke eine beliebige Taste zum fortfahren.");
- Console.ReadKey();
- break;
- }
- Console.WriteLine("\n\nMöchtest du fortfahren? (j) \n\nOder möchtest du beenden und dein Guthaben in den Highscore aufnehmen? (n)");
- key = Console.ReadKey(true);
- auswahl = key.Key.ToString();
- while (auswahl != "J" && auswahl != "N")
- {
- Console.WriteLine("Ungültige Eingabe bitte wiederholen");
- key = Console.ReadKey(true);
- auswahl = key.Key.ToString();
- }
- if (auswahl == "N")
- {
- File.AppendAllText("highscore.txt", name + " " + guthaben + Environment.NewLine);
- //HIGHSCORE SORTIEREN
- string[] score = File.ReadAllLines("highscore.txt");
- string zusammen = string.Join(" ", score);
- score = zusammen.Split(' ');
- string[] namen = new string[score.Length/2];
- int[] zahlen = new int[score.Length/2];
- for (int i = 0, j = 0; i < score.Length; i+=2)
- {
- namen[j] = score[i];
- j++;
- }
- for (int i = 1, j = 0; i < score.Length; i+=2)
- {
- zahlen[j] = int.Parse(score[i]);
- j++;
- }
- int ihilfe = 0;
- string shilfe = "";
- for (int i = 0; i < zahlen.Length; i++)
- {
- for (int k = i+1; k < zahlen.Length; k++)
- {
- if (zahlen[i] < zahlen[k])
- {
- ihilfe = zahlen[i];
- zahlen[i] = zahlen[k];
- zahlen[k] = ihilfe;
- shilfe = namen[i];
- namen[i] = namen[k];
- namen[k] = shilfe;
- }
- }
- }
- string fertig = "";
- for (int i = 0; i < score.Length/2; i++)
- {
- fertig += namen[i] + " " + zahlen[i] + Environment.NewLine;
- }
- File.WriteAllText("highscore.txt", fertig);
- break;
- }
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement