Beispiel #1
0
        //-------------------------------------------------------------------
        //Methods

        public void KerdDef()
        {
            var k = new Kerdes();

            counter = 1;

            while (counter <= 15)
            {
                bool valasz;

                Console.Clear();
                temp.Clear();

                Szur(counter);
                valasz = KerdVal(temp);

                if (valasz == true)
                {
                    Console.WriteLine("Jó válasz!");
                    counter++;
                }
                else
                {
                    Console.WriteLine("Nem jó válasz!");
                    Console.ReadKey();
                    break;
                }

                Console.ReadKey();
            }
        }
        /*
         * To-do List:
         * - kérdés-válasz *
         * - beugro *
         * - leaderboard kiirás fájlba*
         * - leaderboard beolv. és nyeremény kiirás -> req. enum?
         *  vagy pont eredmény <- *
         * - segítségek
         */
        static void Main(string[] args)
        {
            var sorKer = new SorKerd();
            var kerdes = new Kerdes();
            var lb     = new leadb();

            sorKer.Beolv();
            kerdes.Beolv();

            var s = new Beugro(sorKer.Sorkrds);     //beugro-ba
            var k = new Kerdesek(kerdes.Krds_temp); //krds-be

            int MenuChoice = 0;

            do
            {
                Console.Clear();
                try
                {
                    Console.WriteLine("\nLegyen ÖN is Milliomos! " +
                                      "\n\n\t1. Start" +
                                      "\n\n\t2. Eredménytábla" +
                                      "\n\n\t3. Kilépés");
                    Console.Write("\nVálasszon egy lehetőséget: ");
                    MenuChoice = Int32.Parse(Console.ReadLine());

                    switch (MenuChoice)
                    {
                    case 1:
                        if (s.BeugroKerd() == true)
                        {
                            k.KerdDef();
                        }
                        break;

                    case 2:
                        lb.PontKiir();
                        Console.ReadKey();
                        break;

                    case 3:
                        break;

                    default:
                        Console.Clear();
                        Console.WriteLine("Nincs ilyen lehetőség!");
                        Console.ReadKey();
                        break;
                    }
                }
                catch (System.FormatException)
                {
                    Console.Clear();
                    Console.WriteLine("Nincs ilyen lehetőség!");
                    Console.ReadKey();
                }
            } while (MenuChoice != 3);
        }
Beispiel #3
0
        private void Kijelzo(Kerdes k)
        {
            Console.Clear();
            Console.WriteLine("Név: " + nev);
            ColorWrite(ConsoleColor.Cyan, (kerdesszam == 0 ? "Belépő" : kerdesszam + ".") + " kérdés");

            Console.WriteLine(k.Kategoria);
            Console.WriteLine();
            ColorWrite(ConsoleColor.White, k.Kerd);

            if (segitseg.Length != 0) //Segítséget kért
            {
                if (segitseg == "f")  //Felezés
                {
                    string[] vlszk = k.Felezes();
                    for (int i = 0; i < vlszk.Length; i++)
                    {
                        char betu = Convert.ToChar((Convert.ToInt32('A') + i));
                        Console.WriteLine(vlszk[i]);
                    }
                }
                else if (segitseg == "k") // Közönség segítsége
                {
                    string[] vlszk = k.Kozonseg();
                    for (int i = 0; i < vlszk.Length; i++)
                    {
                        char betu = Convert.ToChar((Convert.ToInt32('A') + i));
                        Console.WriteLine(betu + "\t-\t" + vlszk[i]);
                    }
                }
                segitsegek = segitsegek.Replace(Convert.ToChar(segitseg), '-');
                //segitseg = "";
            }
            else
            {
                for (int i = 0; i < 4; i++)
                {
                    char betu = Convert.ToChar((Convert.ToInt32('A') + i));
                    Console.WriteLine(betu + "\t-\t" + k.Valaszok[i]);
                }
            }

            if (kerdesszam != 0)
            {
                Segits();
                Console.WriteLine("M\t-\tMegállok és elviszem a nyereményt");
                Console.WriteLine("J\t-\tJáték mentés, majd kilépés");
            }
            Console.WriteLine("Helyes válasz: " + k.Helyesvalasz);
            Console.Write("Add meg a helyes " + (kerdesszam == 0 ? "sorrendet: " : "választ: "));
        }
        static void Beolv()
        {
            StreamReader sr = new StreamReader("kerdes.txt");

            while (!sr.EndOfStream)
            {
                string[] temp = sr.ReadLine().Split(';');
                Kerdes   kerd = new Kerdes();
                kerd.Szint  = Convert.ToInt32(temp[0]);
                kerd.Krds   = temp[1];
                kerd.A      = temp[2];
                kerd.B      = temp[3];
                kerd.C      = temp[4];
                kerd.D      = temp[5];
                kerd.Helyes = temp[6];
                kerd.Tema   = temp[7];

                krds_temp.Add(kerd);
            }
            sr.Close();
        }
Beispiel #5
0
        public Jatek(bool load = false)
        {
            Console.Clear();
            Kerdes s         = new Kerdes(false, 1);
            bool   kovkerdes = true;

            kerdesszam = 0;

            if (!load)
            {
                do
                {
                    Console.Clear();
                    Console.Write("Kérlek add meg a neved: ");
                    nev = Console.ReadLine();
                }while (nev.Length == 0);
                start = DateTime.Now.TimeOfDay;
            }
            else
            {
                s = new Kerdes(false, true);
                string sor = File.ReadAllText("mentes.sav", Encoding.UTF8);

                string decryptedload = "";
                for (int i = 0; i < sor.Length; i++)
                {
                    decryptedload += Convert.ToChar(sor[i] + 1);
                }

                string[] sp = decryptedload.Split(';');
                start      = DateTime.Now.TimeOfDay - TimeSpan.Parse($"00:{Convert.ToInt32(sp[8])}:{Convert.ToInt32(sp[9])}");
                nev        = sp[10];
                kerdesszam = Convert.ToInt32(sp[11]);

                kovkerdes = false;
                //+ p + ";" + mp + ";" + nev + ";" + kerdesszam;
            }

            while (kerdesszam <= MAXKERDES && nyer == true)
            {
                if (kovkerdes)
                {
                    if (kerdesszam == 0)
                    {
                        s = new Kerdes(true);
                    }
                    else
                    {
                        s = new Kerdes(false, kerdesszam);
                    }
                    kovkerdes = false;
                }

                string valasz  = "";
                string alchars = "abcdkftmj";
                do
                {
                    Kijelzo(s);
                    valasz = Console.ReadLine();
                }while (valasz.Length == 0 || !alchars.Contains(valasz[0]));
                segitseg = "";
                if (valasz.ToLower() == s.Helyesvalasz.ToLower())
                {
                    ColorWrite(ConsoleColor.Yellow, "A válasz helyes.");
                    ColorWrite(ConsoleColor.Yellow, "Tovább ugorhatunk a következő kérdésre.");

                    double totalsec = (int)(DateTime.Now.TimeOfDay - start).TotalSeconds;
                    double p        = (int)TimeSpan.FromSeconds(totalsec).TotalMinutes;
                    double mp       = totalsec - p * 60;

                    Console.WriteLine(p + " perc " + mp + " másodperc alatt");

                    System.Threading.Thread.Sleep(2000);
                    kerdesszam++;
                    kovkerdes = true;
                }
                else if (valasz.ToLower() == "f" && kerdesszam != 0)
                {
                    if (segitsegek.Contains("f"))
                    {
                        segitseg = "f";
                    }
                }
                else if (valasz.ToLower() == "k" && kerdesszam != 0)
                {
                    if (segitsegek.Contains("k"))
                    {
                        segitseg = "k";
                    }
                }

                else if (valasz.ToLower() == "m" && kerdesszam != 0)
                {
                    Console.WriteLine("A megállást választottad.");

                    GameOver();

                    Console.WriteLine("Az enter megnyomásával visszaléphetsz a menübe.");
                    nyer = false;
                    Console.ReadLine();
                }

                else if (valasz.ToLower() == "j" && kerdesszam != 0)
                {
                    double totalsec = (int)(DateTime.Now.TimeOfDay - start).TotalSeconds;
                    double p        = (int)TimeSpan.FromSeconds(totalsec).TotalMinutes;
                    double mp       = totalsec - p * 60;
                    string ment     = s.ToString() + ";" + p + ";" + mp + ";" + nev + ";" + kerdesszam;

                    string encryptedment = "";

                    for (int i = 0; i < ment.Length; i++)
                    {
                        encryptedment += Convert.ToChar(ment[i] - 1);
                    }

                    File.WriteAllText("mentes.sav", encryptedment);

                    Console.WriteLine("Elmentetted az állást. Ha volt mentett állás, akkor azt felülírtad.");
                    Console.WriteLine("Nyomj entert a menübe való visszalépéshez.");
                    Console.ReadLine();
                    nyer = false;
                }

                else
                {
                    ColorWrite(ConsoleColor.Red, "A válasz helytelen.");
                    if (kerdesszam != 0)
                    {
                        Console.WriteLine("Eljutottál a(z) " + (kerdesszam - 1) + " kérdésig.");
                        GameOver();
                    }

                    Console.WriteLine("Az enter megnyomásával visszaléphetsz a menübe.");
                    Console.ReadLine();
                    nyer = false;
                }
            }
            if (!nyer)
            {
                Menu m = new Menu();
            }
            else
            {
                Console.Clear();
                GameOver();
                Console.WriteLine("Az enter megnyomásával visszaléphetsz a menübe.");
                Console.ReadLine();
                Console.WriteLine();
            }
        }