예제 #1
1
        public Form1()
        {
            InitializeComponent();
            rand = new Random();
            dataGrid = new Grid("TileMap.csv");
            Controls.Add(dataGrid);
            sound = new System.Windows.Media.MediaPlayer();
            sound.Open(new Uri("pacmanDubHeavy.mp3", UriKind.Relative));
            sound.Play();

            gameEngine = new GameEngine(dataGrid, rand, timer1.Interval);

            //pacman font
            PrivateFontCollection fontCollection = new PrivateFontCollection();
            fontCollection.AddFontFile("crackman.ttf");

            FontFamily ff = fontCollection.Families[0];
            int fontsize = 12;
            Font pacmanFont = new Font(ff, fontsize, FontStyle.Bold);

            label2.Font = pacmanFont;
            label3.Font = pacmanFont;
            label4.Font = pacmanFont;

            lifeCounter = new PictureBox[3];
            lifeCounter[0] = pictureBox1;
            lifeCounter[1] = pictureBox2;
            lifeCounter[2] = pictureBox3;
        }
예제 #2
0
 public static void PlayAttackSound()
 {
     try
     {
         var attackBuffSound = new System.Windows.Media.MediaPlayer();
         attackBuffSound.Open(new Uri(Directory.GetParent(Directory.GetParent(Directory.GetCurrentDirectory()).ToString()) +
                             @"\Sound\SoundFiles\BattleAxeSwing.wav"));
         attackBuffSound.Play();
     }
     catch (FileNotFoundException)
     {
         throw new FileNotFoundException();
     }
     catch (DirectoryNotFoundException)
     {
         throw new DirectoryNotFoundException("The path to the file is incorrect!");
     }
     catch (IOException)
     {
         throw new IOException("Cannot read from file!");
     }
     catch (InvalidOperationException)
     {
         throw new InvalidOperationException();
     }
 }
        public AudioPlayer(string filename)
        {
            try
            {

                me = new System.Windows.Media.MediaPlayer();

                me.Open(new Uri(filename, UriKind.RelativeOrAbsolute));
                me.MediaEnded += new EventHandler(me_MediaEnded);
            }
            catch
            {
            }
        }
예제 #4
0
파일: Snake.cs 프로젝트: gornikp/projektKCK
        //public Key k2;
        public void snakeLoop()
        {
            player.SoundLocation = @"C:\content\2.wav";
            if (muzik == true)
            {
                player.PlayLooping();
            }

            //Zmienne :o

            licznik_karmienia_weza = Environment.TickCount;
            licznik_karmienia_weza2 = Environment.TickCount;




            dodawanie_scian(sciany);
            wyswietl.sciany(przeszkody);//klasa game viewer
            narodziny_weza();
            losuj_jedzenie();
            wyswietl.jedzenie(pokarm, 0);//klasa game viewer
            losuj_jedzenie_specjalne();
            wyswietl.jedzenie(pokarm_specjalny, temp);
            wyswietl.weza(wonsz);//klasa game viewer 
            while (true)//TODO: przerobic na kontrole w wpf
            { 
                double mnoznik_za_lvl = (1 / sleepTime) * 33 + (sciany + 1) * 2;


                //if (true)
                //  {
                //ConsoleKeyInfo kl = Console.ReadKey(false); // przerobić na switcha
                //Key k1 = wyswietl.klawisz_mi_daj();
                //return App.Current.Dispatcher.BeginInvoke(new Action(() => { Keyboard.IsKeyDown(Key.P); }));
                if (Keyboard.IsKeyToggled(Key.Left))
                    {
                    if (kierunek_poruszania != (int)kierunek.prawo) kierunek_poruszania = (int)kierunek.lewo;
                    }
                else if (Keyboard.IsKeyToggled(Key.Right))
                {
                    if (kierunek_poruszania != (int)kierunek.lewo) kierunek_poruszania = (int)kierunek.prawo;
                }
                if (Keyboard.IsKeyToggled(Key.Up))
                {
                    if (kierunek_poruszania != (int)kierunek.dol) kierunek_poruszania = (int)kierunek.gora;
                    
                }
                if (Keyboard.IsKeyToggled(Key.Down))
                {
                    if (kierunek_poruszania != (int)kierunek.gora) kierunek_poruszania = (int)kierunek.dol;
                }
                if (Keyboard.IsKeyDown(Key.P))
                { pause(); Thread.Sleep(500); }// bo mi sie kurwa 2 razy odpala pizda jebana;

                Koordynaty aktualnaGlowa = wonsz.Last();
                Koordynaty nowy_kierunek = tablica_skretow[kierunek_poruszania];

                Koordynaty nowaGlowa = new Koordynaty((int)aktualnaGlowa.row + (int)nowy_kierunek.row,
                    (int)aktualnaGlowa.col + (int)nowy_kierunek.col);

                if (nowaGlowa.col < 0) nowaGlowa.col = windowWidth - 1; ///
                if (nowaGlowa.row < 0) nowaGlowa.row = windowHeight - 1;/// Wanrunki przechodzenia przez sciany
                if (nowaGlowa.row >= windowHeight) nowaGlowa.row = 0;  //// zmiana na wymiary okna w nst projekcie
                if (nowaGlowa.col >= windowWidth) nowaGlowa.col = 0;   ////

                if (wonsz.Contains(nowaGlowa) || przeszkody.Contains(nowaGlowa)) // Warunek kończoncy grę !
                {
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    if (punkty < 0) punkty = 0;
                    punkty = Math.Max(punkty, 0);
                    wyswietl.muzik = this.muzik;
                    player.Stop();
                    //if (elo == true) {
                        App.Current.Dispatcher.BeginInvoke(new Action(() => { wyswietl.game_over(punkty, muzik); }));
                      //  elo = false;
                    //}

                    return;
                }
                

                wonsz.Enqueue(nowaGlowa);// doadnie nowej glowy do kolejki
                wyswietl.usun_stara_glowe(aktualnaGlowa);
                wyswietl.zmien_kierunek_glowy(nowaGlowa, kierunek_poruszania);


                if (nowaGlowa.col == pokarm_specjalny.col && nowaGlowa.row == pokarm_specjalny.row)
                {
                    var p2 = new System.Windows.Media.MediaPlayer();
                    p2.Open(new Uri(@"C:\content\3.wav"));
                    p2.Play();

                    if (temp == 1)
                    {
                        punkty_ujemne += punkty / 2;
                    }
                    if (temp == 2)
                    {
                        punkty_dodatkowe += 500;
                    }
                    if (temp == 3)
                    {
                        sleepTime += 10;
                        punkty_dodatkowe += 153;
                    }
                    if (temp == 4)
                    {
                        punkty_dodatkowe += 153;
                        sleepTime -= 10;
                    }
                    licznik_karmienia_weza2 = Environment.TickCount;
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    wyswietl.wyswietl_wynik(Math.Max(punkty, 0));
                    wyswietl.usun_pokarm_lub_ogon(pokarm_specjalny);
                    pokarm_specjalny = default(Koordynaty);

                }
                else if (nowaGlowa.col == pokarm.col && nowaGlowa.row == pokarm.row)
                {
                    //Metoda laternatywna
                    //new System.Threading.Thread(() =>
                    //{
                    //    var c = new System.Windows.Media.MediaPlayer();
                    //    c.Open(new System.Uri(@"E:\Users\The_BuBu\Documents\Visual Studio 2013\Projects\ConsoleApplication2\ConsoleApplication2\bin\Debug\3.wav"));
                    //    c.Play();
                    //}).Start();

                    var p2 = new System.Windows.Media.MediaPlayer();
                    p2.Open(new System.Uri(@"C:\content\3.wav"));
                    p2.Play();

                    // karmienie weza
                    losuj_jedzenie();
                    licznik_karmienia_weza = Environment.TickCount;
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    wyswietl.wyswietl_wynik(Math.Max(punkty, 0));
                    wyswietl.jedzenie(pokarm, 0);//klasa game viewer
                }
                else
                {
                    // prouszanie się węża - usunięcie ogona jesli nic nie zjadł
                    Koordynaty last = wonsz.Dequeue(); // uzyskiwanie "adresu" ogona 
                    wyswietl.usun_pokarm_lub_ogon(last);
                }

                if (Environment.TickCount - licznik_karmienia_weza2 >= 25000)
                {
                    wyswietl.usun_pokarm_lub_ogon(pokarm_specjalny);
                    pokarm_specjalny = default(Koordynaty);
                    // random do losowania koordynat nowych smakołyków
                    temp = generator.Next(1, 5);
                    if (temp == 1)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 1);
                    }
                    if (temp == 2)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 2);
                    }
                    if (temp == 3)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 3);
                    }
                    if (temp == 4)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 4);
                    }
                    licznik_karmienia_weza2 = Environment.TickCount;
                }
                if (Environment.TickCount - licznik_karmienia_weza >= czas_usuniecia_jedzenia) // usuwanie pokarmu po okreslonym czasie
                {
                    punkty_ujemne = punkty_ujemne + 50;
                    wyswietl.usun_pokarm_lub_ogon(pokarm);
                    losuj_jedzenie();
                    licznik_karmienia_weza = Environment.TickCount;
                }
                wyswietl.jedzenie(pokarm, 0);
                //sleepTime -= 0.001;
                Thread.Sleep((int)sleepTime);
            }           
        }     
예제 #5
0
파일: Game.cs 프로젝트: dennyo/Racegame
 public async void Sounds()
 {
     //Timing and playing of sounds and background music in the game.
     SoundPlayer fanfare = new SoundPlayer(Path.Combine(Environment.CurrentDirectory, "sounds/Race Fanfare.wav"));
     SoundPlayer countdown = new SoundPlayer(Path.Combine(Environment.CurrentDirectory, "sounds/Countdown.wav"));
     var introplayer = new System.Windows.Media.MediaPlayer();
     SoundPlayer soundtrackplayer = new SoundPlayer(Path.Combine(Environment.CurrentDirectory, Soundtrack));
     fanfare.Play();
     await WaitMethod5();
     countdown.Play();
     await WaitMethod7();
     introplayer.Open(new Uri(Path.Combine(Environment.CurrentDirectory, Intro)));
     introplayer.Play();
     await WaitMethod6();
     soundtrackplayer.PlayLooping();
 }
예제 #6
0
 private void Timer5_Tick(object sender, EventArgs e)
 {
     if (startshot == false)
     {
         System.Windows.Media.MediaPlayer backgroundMusic;
         backgroundMusic = new System.Windows.Media.MediaPlayer();
         backgroundMusic.Open(new Uri(Directory.GetCurrentDirectory() + "\\piu.wav"));
         backgroundMusic.Play();
         shot.position.X = player.position.X + 25;
         shot.position.Y = player.position.Y + 25;
         startshot       = true;
         popal           = false;
     }
     if (drone.position.X + 50 > shot.position.X && drone.position.X < shot.position.X &&
         drone.position.Y + 50 > shot.position.Y && drone.position.Y < shot.position.Y &&
         popal == false)
     {
         if (num == 0 && popal == false)
         {
             popal = true;
             System.Windows.Media.MediaPlayer backgroundMusic;
             backgroundMusic = new System.Windows.Media.MediaPlayer();
             backgroundMusic.Open(new Uri(Directory.GetCurrentDirectory() + "\\popal.wav"));
             backgroundMusic.Play();
             num++;
             shot.position.X = -30;
             startshot       = false;
             timer5.Enabled  = false;
         }
         if (num == 1 && popal == false)
         {
             popal = true;
             System.Windows.Media.MediaPlayer backgroundMusic;
             backgroundMusic = new System.Windows.Media.MediaPlayer();
             backgroundMusic.Open(new Uri(Directory.GetCurrentDirectory() + "\\guchiyea.wav"));
             backgroundMusic.Play();
             num++;
             shot.position.X = -30;
             startshot       = false;
             timer5.Enabled  = false;
         }
         if (num == 2 && popal == false)
         {
             popal = true;
             System.Windows.Media.MediaPlayer backgroundMusic;
             backgroundMusic = new System.Windows.Media.MediaPlayer();
             backgroundMusic.Open(new Uri(Directory.GetCurrentDirectory() + "\\guchiuron.wav"));
             backgroundMusic.Play();
             num++;
             shot.position.X = -30;
             startshot       = false;
             timer5.Enabled  = false;
         }
         if (num == 3 && popal == false)
         {
             popal = true;
             System.Windows.Media.MediaPlayer backgroundMusic;
             backgroundMusic = new System.Windows.Media.MediaPlayer();
             backgroundMusic.Open(new Uri(Directory.GetCurrentDirectory() + "\\theovernight.wav"));
             backgroundMusic.Play();
             num++;
             shot.position.X = -30;
             startshot       = false;
             timer5.Enabled  = false;
         }
         if (num == 4 && popal == false)
         {
             popal = true;
             System.Windows.Media.MediaPlayer backgroundMusic;
             backgroundMusic = new System.Windows.Media.MediaPlayer();
             backgroundMusic.Open(new Uri(Directory.GetCurrentDirectory() + "\\youlikechalanges.wav"));
             backgroundMusic.Play();
             num++;
             shot.position.X = -30;
             startshot       = false;
             timer5.Enabled  = false;
         }
         pictureBox2.Width -= 50;
     }
     gr.DrawImage(shot.pum, shot.position);
     time5 += timer5.Interval;
     if (time5 >= 10)
     {
         time5 = 0;
         if (shot.position.X < 1000 && popal == false)
         {
             shot.position.X += 10;
         }
         else
         {
             shot.position.X = -30;
             popal           = false;
             startshot       = false;
             timer5.Enabled  = false;
         }
     }
 }
예제 #7
0
파일: Snake.cs 프로젝트: gornikp/projektKCK
        public void Snake_Init()
        {
            player.SoundLocation = "2.wav";
            if (muzik == true)
            {

                player.Stop();
                //var p1 = new System.Windows.Media.MediaPlayer();
                //p1.Open(new System.Uri(@"E:\Users\The_BuBu\Documents\Visual Studio 2013\Projects\ConsoleApplication2\ConsoleApplication2\bin\Debug\2.wav"));
                //p1.Play();
                //new System.Threading.Thread(() =>
                //{
                //    var c = new System.Windows.Media.MediaPlayer();
                //    c.Open(new System.Uri(@"E:\Users\The_BuBu\Documents\Visual Studio 2013\Projects\ConsoleApplication2\ConsoleApplication2\bin\Debug\2.wav"));
                //    c.Play();
                //}).Start();
                player.PlayLooping();
            }
            double mnoznik_za_lvl = (1 / sleepTime) * 33 + (sciany+1)*2;
            Console.CursorSize = 12;
            Console.BufferHeight = 60;
            Console.BufferWidth = 201;
            Console.SetWindowSize(200, 60);
            //Zmienne :o
            int kierunek_poruszania = (int)kierunek.prawo; // początkowy kierunek (by np wonsz nie wpadl na skałę)
            int licznik_karmienia_weza = 0;// odlicza czas od odtatniego karmienia
            int licznik_karmienia_weza2 = 0;
            int czas_usuniecia_jedzenia = 30000; // jak dłygo jedzenie pozostaje na planszy
            int punkty_ujemne = 0; // punkty ujemne za niezjedzone jesdzenie
            licznik_karmienia_weza = Environment.TickCount;
            licznik_karmienia_weza2 = Environment.TickCount;
            int temp=2;

            Koordynaty[] tablica_skretow = new Koordynaty[]
            {
                new Koordynaty(0, 1), // right
                new Koordynaty(0, -1), // left
                new Koordynaty(1, 0), // down
                new Koordynaty(-1, 0), // up
            };
            dodawanie_scian(sciany);
            wyswietl.sciany(przeszkody);//klasa game viewer
            narodziny_weza();
            losuj_jedzenie();
            wyswietl.jedzenie(pokarm,0);//klasa game viewer
            losuj_jedzenie_specjalne();
            wyswietl.jedzenie(pokarm_specjalny, temp);
            wyswietl.weza(wonsz);//klasa game viewer
            while (true)
            {

                if (Console.KeyAvailable)
                {
                    ConsoleKeyInfo kl = Console.ReadKey(false); // przerobić na switcha
                    switch (kl.Key)
                    {
                        case ConsoleKey.LeftArrow:
                            if (kierunek_poruszania != (int)kierunek.prawo) kierunek_poruszania = (int)kierunek.lewo;
                            break;
                        case ConsoleKey.RightArrow:
                            if (kierunek_poruszania != (int)kierunek.lewo) kierunek_poruszania = (int)kierunek.prawo;
                            break;
                        case ConsoleKey.UpArrow:
                            if (kierunek_poruszania != (int)kierunek.dol) kierunek_poruszania = (int)kierunek.gora;
                            break;
                        case ConsoleKey.DownArrow:
                            if (kierunek_poruszania != (int)kierunek.gora) kierunek_poruszania = (int)kierunek.dol;
                            break;
                        case ConsoleKey.P:
                            pause();
                            break;
                    }

                }

                Koordynaty aktualnaGlowa = wonsz.Last();
                Koordynaty nowy_kierunek = tablica_skretow[kierunek_poruszania];

                Koordynaty nowaGlowa = new Koordynaty(aktualnaGlowa.row + nowy_kierunek.row,
                    aktualnaGlowa.col + nowy_kierunek.col);

                if (nowaGlowa.col < 0) nowaGlowa.col = Console.WindowWidth - 1; ///
                if (nowaGlowa.row < 6) nowaGlowa.row = Console.WindowHeight - 1;/// Wanrunki przechodzenia przez sciany
                if (nowaGlowa.row >= Console.WindowHeight) nowaGlowa.row = 6;  //// zmiana na wymiary okna w nst projekcie
                if (nowaGlowa.col >= Console.WindowWidth) nowaGlowa.col = 0;   ////

                if (wonsz.Contains(nowaGlowa) || przeszkody.Contains(nowaGlowa)) // Warunek kończoncy grę !
                {
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    if (punkty < 0) punkty = 0;
                    punkty = Math.Max(punkty, 0);
                    wyswietl.muzik = this.muzik;
                    wyswietl.game_over(punkty);
                    Thread.Sleep(2000);
                    Console.ReadKey(false);
                    return;
                }

                wonsz.Enqueue(nowaGlowa);// doadnie nowej glowy do kolejki
                wyswietl.usun_stara_glowe(aktualnaGlowa);
                wyswietl.zmien_kierunek_glowy(nowaGlowa, kierunek_poruszania);

                    if (nowaGlowa.col == pokarm_specjalny.col && nowaGlowa.row == pokarm_specjalny.row)
                    {
                        var p2 = new System.Windows.Media.MediaPlayer();
                    //string startupPath = Environment.CurrentDirectory;
                    //Uri uri = new Uri(startupPath + @"sounds\2wav");
                    //MessageBox.Show("You Lose! Your score is "+ uri.ToString(), "Game Over", MessageBoxButton.OK, MessageBoxImage.Hand);
                    p2.Open(new Uri(@"C:\content\3.wav"));
                        p2.Play();

                        if (temp==1)
                        {
                            punkty_ujemne += punkty / 2;
                        }
                        if (temp == 2)
                        {
                            punkty_dodatkowe += 500;
                        }
                        if (temp == 3)
                        {
                            sleepTime += 10;
                            punkty_dodatkowe += 153;
                        }
                        if (temp == 4)
                        {
                            punkty_dodatkowe += 153;
                            sleepTime -= 10;
                        }
                        licznik_karmienia_weza2 = Environment.TickCount;
                        punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                        wyswietl.wyswietl_wynik(Math.Max(punkty, 0));
                        wyswietl.usun_pokarm_lub_ogon(pokarm_specjalny);
                        ///pokarm_specjalny.Clear();
                        pokarm_specjalny = default(Koordynaty);

                }
                else if (nowaGlowa.col == pokarm.col && nowaGlowa.row == pokarm.row)
                {
                    //Metoda laternatywna
                    //new System.Threading.Thread(() =>
                    //{
                    //    var c = new System.Windows.Media.MediaPlayer();
                    //    c.Open(new System.Uri(@"E:\Users\The_BuBu\Documents\Visual Studio 2013\Projects\ConsoleApplication2\ConsoleApplication2\bin\Debug\3.wav"));
                    //    c.Play();
                    //}).Start();

                    var p2 = new System.Windows.Media.MediaPlayer();
                    p2.Open(new System.Uri(@"C:\content\3.wav"));
                    p2.Play();

                    // karmienie weza
                    losuj_jedzenie();
                    licznik_karmienia_weza = Environment.TickCount;
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    wyswietl.wyswietl_wynik(Math.Max(punkty, 0));
                    wyswietl.jedzenie(pokarm, 0);//klasa game viewer
                }
                else
                {
                    // prouszanie się węża - usunięcie ogona jesli nic nie zjadł
                    Koordynaty last = wonsz.Dequeue(); // uzyskiwanie "adresu" ogona
                    wyswietl.usun_pokarm_lub_ogon(last);
                }

                if (Environment.TickCount - licznik_karmienia_weza2 >= 25000)
                        {
                    if (!pokarm_specjalny.Equals(default(Koordynaty))) { wyswietl.usun_pokarm_lub_ogon(pokarm_specjalny); }
                    pokarm_specjalny = default(Koordynaty);
                             // random do losowania koordynat nowych smakołyków
                        temp = generator.Next(1,5);
                        if (temp==1)
                        {
                            losuj_jedzenie_specjalne();
                            wyswietl.jedzenie(pokarm_specjalny, 1);
                        }
                        if (temp == 2)
                        {
                            losuj_jedzenie_specjalne();
                            wyswietl.jedzenie(pokarm_specjalny, 2);
                        }
                        if (temp == 3)
                        {
                            losuj_jedzenie_specjalne();
                            wyswietl.jedzenie(pokarm_specjalny, 3);
                        }
                        if (temp == 4)
                        {
                            losuj_jedzenie_specjalne();
                            wyswietl.jedzenie(pokarm_specjalny, 4);
                        }
                        licznik_karmienia_weza2 = Environment.TickCount;
                    }

                if (Environment.TickCount - licznik_karmienia_weza >= czas_usuniecia_jedzenia) // usuwanie pokarmu po okreslonym czasie
                {
                    punkty_ujemne = punkty_ujemne + 50;
                    wyswietl.usun_pokarm_lub_ogon(pokarm);
                    losuj_jedzenie();
                    licznik_karmienia_weza = Environment.TickCount;
                }
                wyswietl.jedzenie(pokarm,0);
                //sleepTime -= 0.001;

                Thread.Sleep((int)sleepTime);
            }
        }
예제 #8
0
        public void BuyWeapons(CharacterClass character) // Done
        {
            string buyWep = "y";
            int    whatWeaponID;

            do
            {
                Console.Clear();
                Console.ForegroundColor = ConsoleColor.DarkYellow;

                Console.WriteLine("This is what i have for you..");
                Console.WriteLine("---------------------------------------------------------");
                Console.WriteLine("                 Weapons Inventory");
                Console.WriteLine("---------------------------------------------------------");
                for (int i = 0; i < StoreWeaponInventory.Count; i++)
                {
                    Console.WriteLine($"Id:{i + 1}. {StoreWeaponInventory[i].ItemQuality} {StoreWeaponInventory[i].TypeOfWeapon}".PadRight(25) +
                                      $"Dmg ({StoreWeaponInventory[i].DmgLowerBound} - {StoreWeaponInventory[i].DmgUpperBound})".PadRight(16) + $"Price: {StoreWeaponInventory[i].Price}");
                }
                Console.WriteLine("");
                Console.WriteLine("0. Not Interested");
                Console.WriteLine("---------------------------------------------------------");
                character.PrintInfoForShop();

                Weapon currentWeapon = character.UserInventory.OfType <Weapon>().FirstOrDefault(w => w.Equipped == true);


                if (currentWeapon != null)
                {
                    Console.WriteLine("Equipped Weapon");
                    Console.WriteLine($"{currentWeapon.ItemQuality} {currentWeapon.TypeOfWeapon} Dmg: ({currentWeapon.DmgLowerBound} - {currentWeapon.DmgUpperBound})");
                    Console.WriteLine("---------------------------------------------------------");
                }

                Console.WriteLine("What ID number would you like to purchase?");
                if (int.TryParse(Console.ReadLine(), out whatWeaponID))
                {
                    if (whatWeaponID <= StoreWeaponInventory.Count && whatWeaponID > 0)
                    {
                        if (character.Gold >= StoreWeaponInventory[whatWeaponID - 1].Price)
                        {
                            if (character.Charisma >= 10)
                            {
                                Console.WriteLine("(Vendor) -You know what I like you, i will give it to you for half price.. ");
                                Console.WriteLine("Dont tell anyone..");
                                character.Gold -= StoreWeaponInventory[whatWeaponID - 1].Price / 2;
                                Console.WriteLine($"{StoreWeaponInventory[whatWeaponID - 1].Price / 2} gold has been removed..");
                            }
                            else
                            {
                                character.Gold -= StoreWeaponInventory[whatWeaponID - 1].Price;
                                Console.WriteLine($"{StoreWeaponInventory[whatWeaponID - 1].Price} has been removed..");
                            }
                            var p1 = new System.Windows.Media.MediaPlayer();
                            p1.Open(new System.Uri(Environment.CurrentDirectory + @"\cash.wav"));
                            p1.Play();
                            Console.WriteLine("Congratulations you have bought a new Item");
                            character.AddWeaponToInventory(StoreWeaponInventory[whatWeaponID - 1]);
                            buyWep = "n";
                            StoreWeaponInventory.RemoveAt(whatWeaponID - 1);
                        }
                        else
                        {
                            Console.WriteLine("You cannot afford this.. Maybe start out with something smaller?");
                            Console.ReadKey();
                        }
                    }
                    else if (whatWeaponID == 0)
                    {
                        Console.WriteLine("Okeeeeey So what are you doing in here?????");
                        Console.ReadKey();
                        buyWep = "n";
                    }
                    else
                    {
                        Console.WriteLine($"Please try a number between 1-{StoreWeaponInventory.Count}, or 0 to exit..");
                        Console.ReadKey();
                    }
                }
                else
                {
                    Console.WriteLine($"I didnt understand that, Please try a number between 1-{StoreWeaponInventory.Count}, or 0 to exit..");
                    Console.ReadKey();
                }
            } while (buyWep != "n");
        }
예제 #9
0
        public void BuyDefensive(CharacterClass character) // Done
        {
            string buyDef = "y";
            int    whatShieldID;

            do
            {
                Console.Clear();

                Console.WriteLine("This is what i have for you..");
                Console.WriteLine("--------------------------------------------------------------------");
                Console.WriteLine("                        Shield Inventory");
                Console.WriteLine("--------------------------------------------------------------------");
                for (int i = 0; i < StoreShieldInventory.Count; i++)
                {
                    Console.WriteLine($"Id:{i + 1}. {StoreShieldInventory[i].ItemQuality} {StoreShieldInventory[i].ShieldName}".PadRight(30) +
                                      $"Armour ({StoreShieldInventory[i].ArmourAmount})".PadRight(16) + $"Rating {StoreShieldInventory[i].BlockRating}  " + $"Price: {StoreShieldInventory[i].Price}");
                }
                Console.WriteLine("");
                Console.WriteLine("0. Not Interested");
                Console.WriteLine("--------------------------------------------------------------------");
                character.PrintInfoForShop();

                Shield currentShield = character.UserInventory.OfType <Shield>().FirstOrDefault(w => w.Equipped == true);

                if (currentShield != null)
                {
                    Console.WriteLine("Equipped Shield");
                    Console.WriteLine($"{currentShield.ItemQuality} {currentShield.ShieldName} Armour: {currentShield.ArmourAmount} Rating: {currentShield.BlockRating}");
                    Console.WriteLine("---------------------------------------------------------");
                }

                Console.WriteLine("What ID number would you like to purchase?");
                if (int.TryParse(Console.ReadLine(), out whatShieldID))
                {
                    if (whatShieldID <= StoreShieldInventory.Count && whatShieldID > 0)
                    {
                        if (character.Gold > StoreShieldInventory[whatShieldID - 1].Price)
                        {
                            var p1 = new System.Windows.Media.MediaPlayer();
                            p1.Open(new System.Uri(Environment.CurrentDirectory + @"\cash.wav"));
                            p1.Play();
                            Console.WriteLine("Congratulations you have bought a new Item");
                            Console.WriteLine($"{StoreShieldInventory[whatShieldID - 1].Price} gold has been removed..");
                            character.AddShieldToInventory(StoreShieldInventory[whatShieldID - 1]);
                            character.Gold -= StoreShieldInventory[whatShieldID - 1].Price;
                            buyDef          = "n";
                            StoreShieldInventory.RemoveAt(whatShieldID - 1);
                        }
                        else
                        {
                            Console.WriteLine("You cannot afford this.. Maybe start out with something smaller?");
                            Console.ReadKey();
                        }
                    }
                    else if (whatShieldID == 0)
                    {
                        Console.WriteLine("Im getting really tiered of this..");
                        buyDef = "n";
                        Console.ReadKey();
                    }
                    else
                    {
                        Console.WriteLine($"Please try a number between 1-{StoreWeaponInventory.Count} Or 0 to exit..");
                        Console.ReadKey();
                    }
                }
                else
                {
                    Console.WriteLine($"I didnt understand that, Please try a number between 1-{StoreWeaponInventory.Count} Or 0 to exit..");
                    Console.ReadKey();
                }
            } while (buyDef != "n");
        }
예제 #10
0
 public override void Load(Track track, MusicTab tab = null) => player.Open(new Uri(track.path));
예제 #11
0
        //public Key k2;
        public void snakeLoop()
        {
            player.SoundLocation = @"C:\content\2.wav";
            if (muzik == true)
            {
                player.PlayLooping();
            }

            //Zmienne :o

            licznik_karmienia_weza  = Environment.TickCount;
            licznik_karmienia_weza2 = Environment.TickCount;



            dodawanie_scian(sciany);
            wyswietl.sciany(przeszkody);//klasa game viewer
            narodziny_weza();
            losuj_jedzenie();
            wyswietl.jedzenie(pokarm, 0);//klasa game viewer
            losuj_jedzenie_specjalne();
            wyswietl.jedzenie(pokarm_specjalny, temp);
            wyswietl.weza(wonsz); //klasa game viewer
            while (true)          //TODO: przerobic na kontrole w wpf
            {
                double mnoznik_za_lvl = (1 / sleepTime) * 33 + (sciany + 1) * 2;


                //if (true)
                //  {
                //ConsoleKeyInfo kl = Console.ReadKey(false); // przerobić na switcha
                //Key k1 = wyswietl.klawisz_mi_daj();
                //return App.Current.Dispatcher.BeginInvoke(new Action(() => { Keyboard.IsKeyDown(Key.P); }));
                if (Keyboard.IsKeyToggled(Key.Left))
                {
                    if (kierunek_poruszania != (int)kierunek.prawo)
                    {
                        kierunek_poruszania = (int)kierunek.lewo;
                    }
                }
                else if (Keyboard.IsKeyToggled(Key.Right))
                {
                    if (kierunek_poruszania != (int)kierunek.lewo)
                    {
                        kierunek_poruszania = (int)kierunek.prawo;
                    }
                }
                if (Keyboard.IsKeyToggled(Key.Up))
                {
                    if (kierunek_poruszania != (int)kierunek.dol)
                    {
                        kierunek_poruszania = (int)kierunek.gora;
                    }
                }
                if (Keyboard.IsKeyToggled(Key.Down))
                {
                    if (kierunek_poruszania != (int)kierunek.gora)
                    {
                        kierunek_poruszania = (int)kierunek.dol;
                    }
                }
                if (Keyboard.IsKeyDown(Key.P))
                {
                    pause(); Thread.Sleep(500);
                }                              // bo mi sie kurwa 2 razy odpala pizda jebana;

                Koordynaty aktualnaGlowa = wonsz.Last();
                Koordynaty nowy_kierunek = tablica_skretow[kierunek_poruszania];

                Koordynaty nowaGlowa = new Koordynaty((int)aktualnaGlowa.row + (int)nowy_kierunek.row,
                                                      (int)aktualnaGlowa.col + (int)nowy_kierunek.col);

                if (nowaGlowa.col < 0)
                {
                    nowaGlowa.col = windowWidth - 1;                    ///
                }
                if (nowaGlowa.row < 0)
                {
                    nowaGlowa.row = windowHeight - 1;                   /// Wanrunki przechodzenia przez sciany
                }
                if (nowaGlowa.row >= windowHeight)
                {
                    nowaGlowa.row = 0;                                 //// zmiana na wymiary okna w nst projekcie
                }
                if (nowaGlowa.col >= windowWidth)
                {
                    nowaGlowa.col = 0;                                           ////
                }
                if (wonsz.Contains(nowaGlowa) || przeszkody.Contains(nowaGlowa)) // Warunek kończoncy grę !
                {
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    if (punkty < 0)
                    {
                        punkty = 0;
                    }
                    punkty         = Math.Max(punkty, 0);
                    wyswietl.muzik = this.muzik;
                    player.Stop();
                    //if (elo == true) {
                    App.Current.Dispatcher.BeginInvoke(new Action(() => { wyswietl.game_over(punkty, muzik); }));
                    //  elo = false;
                    //}

                    return;
                }


                wonsz.Enqueue(nowaGlowa);// doadnie nowej glowy do kolejki
                wyswietl.usun_stara_glowe(aktualnaGlowa);
                wyswietl.zmien_kierunek_glowy(nowaGlowa, kierunek_poruszania);


                if (nowaGlowa.col == pokarm_specjalny.col && nowaGlowa.row == pokarm_specjalny.row)
                {
                    var p2 = new System.Windows.Media.MediaPlayer();
                    p2.Open(new Uri(@"C:\content\3.wav"));
                    p2.Play();

                    if (temp == 1)
                    {
                        punkty_ujemne += punkty / 2;
                    }
                    if (temp == 2)
                    {
                        punkty_dodatkowe += 500;
                    }
                    if (temp == 3)
                    {
                        sleepTime        += 10;
                        punkty_dodatkowe += 153;
                    }
                    if (temp == 4)
                    {
                        punkty_dodatkowe += 153;
                        sleepTime        -= 10;
                    }
                    licznik_karmienia_weza2 = Environment.TickCount;
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    wyswietl.wyswietl_wynik(Math.Max(punkty, 0));
                    wyswietl.usun_pokarm_lub_ogon(pokarm_specjalny);
                    pokarm_specjalny = default(Koordynaty);
                }
                else if (nowaGlowa.col == pokarm.col && nowaGlowa.row == pokarm.row)
                {
                    //Metoda laternatywna
                    //new System.Threading.Thread(() =>
                    //{
                    //    var c = new System.Windows.Media.MediaPlayer();
                    //    c.Open(new System.Uri(@"E:\Users\The_BuBu\Documents\Visual Studio 2013\Projects\ConsoleApplication2\ConsoleApplication2\bin\Debug\3.wav"));
                    //    c.Play();
                    //}).Start();

                    var p2 = new System.Windows.Media.MediaPlayer();
                    p2.Open(new System.Uri(@"C:\content\3.wav"));
                    p2.Play();

                    // karmienie weza
                    losuj_jedzenie();
                    licznik_karmienia_weza = Environment.TickCount;
                    punkty = (wonsz.Count - 10) * mnoznik * (int)mnoznik_za_lvl - punkty_ujemne + punkty_dodatkowe;
                    wyswietl.wyswietl_wynik(Math.Max(punkty, 0));
                    wyswietl.jedzenie(pokarm, 0);//klasa game viewer
                }
                else
                {
                    // prouszanie się węża - usunięcie ogona jesli nic nie zjadł
                    Koordynaty last = wonsz.Dequeue(); // uzyskiwanie "adresu" ogona
                    wyswietl.usun_pokarm_lub_ogon(last);
                }

                if (Environment.TickCount - licznik_karmienia_weza2 >= 25000)
                {
                    wyswietl.usun_pokarm_lub_ogon(pokarm_specjalny);
                    pokarm_specjalny = default(Koordynaty);
                    // random do losowania koordynat nowych smakołyków
                    temp = generator.Next(1, 5);
                    if (temp == 1)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 1);
                    }
                    if (temp == 2)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 2);
                    }
                    if (temp == 3)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 3);
                    }
                    if (temp == 4)
                    {
                        losuj_jedzenie_specjalne();
                        wyswietl.jedzenie(pokarm_specjalny, 4);
                    }
                    licznik_karmienia_weza2 = Environment.TickCount;
                }
                if (Environment.TickCount - licznik_karmienia_weza >= czas_usuniecia_jedzenia) // usuwanie pokarmu po okreslonym czasie
                {
                    punkty_ujemne = punkty_ujemne + 50;
                    wyswietl.usun_pokarm_lub_ogon(pokarm);
                    losuj_jedzenie();
                    licznik_karmienia_weza = Environment.TickCount;
                }
                wyswietl.jedzenie(pokarm, 0);
                //sleepTime -= 0.001;
                Thread.Sleep((int)sleepTime);
            }
        }
예제 #12
0
        //game engine
        private void gameTimer_Tick(object sender, EventArgs e)
        {
            //decrease timer and check if it has reached zero
            time--;

            if (time == 0)
            {
                gameTimer.Enabled = false;
                gameState         = "over";

                theme.Stop();
                hey.Open(new Uri(Application.StartupPath + "/Resources/zoidberg hey.wav"));
                hey.Play();

                highScoreList.Add(score);
            }

            //move Zoidberg - incorporated check for if you have touched a box/entered the alternate universe
            if (leftDown == true && zoidbergX > 10 && zoidbergBoxNum % 2 == 0)
            {
                zoidbergX -= zoidbergSpeed;
                zoidbergBox.BackgroundImage = Properties.Resources.zoidberg_left;
            }
            else if (leftDown == true && zoidbergX > 10)
            {
                zoidbergX -= zoidbergSpeed;
                zoidbergBox.BackgroundImage = Properties.Resources.blue_zoidberg_left;
            }

            if (rightDown == true && zoidbergX < 700 && zoidbergBoxNum % 2 == 0)
            {
                zoidbergX += zoidbergSpeed;
                zoidbergBox.BackgroundImage = Properties.Resources.zoidberg_right;
            }
            else if (rightDown == true && zoidbergX > 10)
            {
                zoidbergX += zoidbergSpeed;
                zoidbergBox.BackgroundImage = Properties.Resources.blue_zoidberg_right;
            }

            //check if a new object will be created
            randVal = randGen.Next(0, 1001);

            if (randVal < 3) //0.3% chance of parallel box
            {
                objectXList.Add(randGen.Next(10, 750));
                objectYList.Add(0);
                objectSpeedList.Add(randGen.Next(10, 15));
                objectTypeList.Add("box");
            }
            else if (randVal >= 3 && randVal < 20) //1.7% chance of nibbler
            {
                objectXList.Add(randGen.Next(10, 750));
                objectYList.Add(0);
                objectSpeedList.Add(randGen.Next(7, 12));
                objectTypeList.Add("nibbler");
            }
            else if (randVal >= 20 && randVal < 60) //4% chance of fish
            {
                objectXList.Add(randGen.Next(10, 750));
                objectYList.Add(0);
                objectSpeedList.Add(randGen.Next(8, 15));
                objectTypeList.Add("fish");
            }
            else if (randVal >= 60 && randVal < 90)//3% chance of pizza
            {
                objectXList.Add(randGen.Next(10, 750));
                objectYList.Add(0);
                objectSpeedList.Add(randGen.Next(8, 15));
                objectTypeList.Add("pizza");
            }

            //move objects down screen
            for (int i = 0; i < objectXList.Count(); i++)
            {
                objectYList[i] += objectSpeedList[i];
            }

            //check if objects can be deleted once off screen
            for (int i = 0; i < objectXList.Count(); i++)
            {
                if (objectYList[i] > 500)
                {
                    objectXList.RemoveAt(i);
                    objectYList.RemoveAt(i);
                    objectSpeedList.RemoveAt(i);
                    objectTypeList.RemoveAt(i);
                    break;
                }
            }

            //check collision of zoidberg and the objects
            Rectangle zoidbergRect = new Rectangle(zoidbergX, zoidbergY, zoidbergBox.Width, zoidbergBox.Height);

            for (int i = 0; i < objectXList.Count(); i++)
            {
                Rectangle objectRect = new Rectangle(objectXList[i], objectYList[i], objectSize, objectSize - 15);


                if (zoidbergRect.IntersectsWith(objectRect))
                {
                    if (objectTypeList[i] == "fish")
                    {
                        score += 5;
                        eat.Open(new Uri(Application.StartupPath + "/Resources/zoidberg eat.wav"));
                        eat.Play();
                    }
                    else if (objectTypeList[i] == "pizza")
                    {
                        score += 10;
                        eat.Open(new Uri(Application.StartupPath + "/Resources/zoidberg eat.wav"));
                        eat.Play();
                    }
                    else if (objectTypeList[i] == "nibbler")
                    {
                        theme.Stop();
                        scream.Open(new Uri(Application.StartupPath + "/Resources/zoidberg scream.wav"));
                        scream.Play();
                        gameTimer.Enabled = false;
                        gameState         = "over";
                        for (int j = 0; j < highScoreList.Count; j++)
                        {
                            if (highScoreList[j] == score && score > 0)
                            {
                                highScoreList.RemoveAt(j);
                            }
                        }
                        highScoreList.Add(score);
                    }
                    else if (objectTypeList[i] == "box")
                    {
                        zoidbergBoxNum++;
                    }

                    objectXList.RemoveAt(i);
                    objectYList.RemoveAt(i);
                    objectSpeedList.RemoveAt(i);
                    objectTypeList.RemoveAt(i);
                    break;
                }
            }

            //check if zoidberg has travelled to the alternate universe (got the box) and change background
            if (zoidbergBoxNum % 2 == 0)
            {
                this.BackgroundImage = Properties.Resources.planet_express_building;
            }
            else
            {
                this.BackgroundImage = Properties.Resources.blue_planet_express;
            }

            this.Refresh();
        }
예제 #13
0
        public GameScreen()
        {
            InitializeComponent();
            cloudX = this.Width;

            //animations & music
            dimension   = new FrameDimension(gifImage.FrameDimensionsList[0]);
            gdimension  = new FrameDimension(gImage.FrameDimensionsList[0]);
            spdimension = new FrameDimension(spImage.FrameDimensionsList[0]);
            frameCount  = gifImage.GetFrameCount(dimension);
            death.Open(new Uri(Application.StartupPath + "/death.mp3"));
            death.Volume = 1;
            alert.Open(new Uri(Application.StartupPath + "/alert.mp3"));
            broken.Open(new Uri(Application.StartupPath + "/broken.mp3"));
            broken.Volume = 0.1d;
            music.Open(new Uri(Application.StartupPath + "/music.mp3"));
            music.Volume = 0.25;

            backgroundMoveSpd = 8;

            lasers.Clear();
            rockets.Clear(); //clears objects
            MTokens.Clear();

            coinChance = 30;

            if (!Form1.start) // adds to shop lists for xmlload, only onstart
            {
                mechs.Add("superJump", false);
                mechs.Add("teleporter", false);
                mechs.Add("gravity", false);
                upgrades.Add("jumpBoost", false);
                upgradesActv.Add("jumpBoost", false);                          //unimplemented
                upgrades.Add("ironBoi", false);
                upgradesActv.Add("ironBoi", false);                            //unimplemented
                upgrades.Add("xray", false);
                upgradesActv.Add("xray", false);                               //unimplemented
                upgrades.Add("jammer", false);
                upgradesActv.Add("jammer", false);                             //unimplemented
                Dictionary <string, bool> a = new Dictionary <string, bool>(); //unimplemented
                a.Add("magnet", false);                                        //unimplemented
                a.Add("golden", false);                                        //unimplemented
                Dictionary <string, bool> b = new Dictionary <string, bool>(); //unimplemented
                b.Add("magnet", false);                                        //unimplemented
                b.Add("golden", false);                                        //unimplemented
                Dictionary <string, bool> c = new Dictionary <string, bool>(); //unimplemented
                c.Add("magnet", false);                                        //unimplemented
                c.Add("golden", false);                                        //unimplemented
                mechUpgs.Add("teleporter", a);                                 //unimplemented
                mechUpgs.Add("superJump", b);                                  //unimplemented
                mechUpgs.Add("gravity", c);                                    //unimplemented

                Form1.start = true;
            }

            xmlLoad();

            Refresh();

            gameTimer.Enabled = false; //pauses until space is pressed
        }
예제 #14
0
파일: Form1.cs 프로젝트: pelad0/juego
        /// <summary>
        /// grafica una explosión en objetivo
        /// </summary>
        /// <param name="p"></param>
        private void Explosion(Point p)
        {
            if (sonido)
            {
                var ex = new System.Windows.Media.MediaPlayer();
                ex.Open(new System.Uri(@"C:\Users\Sebastian\Desktop\soundJuego\bomb.wav"));
                ex.Play();
            }

            for (int i = 0; i < 15; i++)
            {
                gBase.DrawImage(Resources.blanco, p.X, p.Y, 48, 48);
                gBase.DrawImage(explosion[i], p.X, p.Y, 48, 48);
                //Application.DoEvents();
                System.Threading.Thread.Sleep(50);
            }
            gBase.DrawImage(Resources.blanco, p.X, p.Y, 48, 48);
        }
예제 #15
0
파일: Form1.cs 프로젝트: pelad0/juego
 private void soundMinion()
 {
     var p3 = new System.Windows.Media.MediaPlayer();
     p3.Open(new System.Uri(@"C:\Users\Sebastian\Desktop\soundJuego\minions-hellow.wav"));
     p3.Play();
 }
예제 #16
0
파일: Form1.cs 프로젝트: pelad0/juego
 private void soundInicio()
 {
     var p3 = new System.Windows.Media.MediaPlayer();
     //p3.ReadLocalValue(Resources.minions_minion_toy); no funciono
     //p3.SetValue(Resources.minions_minion_toy);falta un parametro
     p3.Open(new System.Uri(@"C:\Users\Sebastian\Desktop\soundJuego\minions-minion-toy.wav"));
     p3.Play();
 }