Advertisement
giganciprogramowania

c# offline kzg stacjo gotowy

Jan 20th, 2023 (edited)
344
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Drawing;
  3. using System.IO;
  4. using System.Windows.Forms;
  5.  
  6. namespace Dopasuj
  7. {
  8.    
  9.     public partial class Form1 : Form
  10.     {
  11.         //Starter
  12.         private bool czyZgodneObrazki()
  13.         {
  14.             string[] podzielonyNowy = ustawionyNowy.Split('\\');
  15.             string[] podzielonyRetro = ustawionyRetro.Split('\\');
  16.  
  17.             string nazwaRetro = podzielonyRetro[podzielonyRetro.Length - 1];
  18.             string nazwaNowy = podzielonyNowy[podzielonyNowy.Length - 1];
  19.  
  20.             if (nazwaNowy == nazwaRetro)
  21.             {
  22.                 return true;
  23.             }
  24.             else
  25.             {
  26.                 return false;
  27.             }
  28.  
  29.  
  30.         }
  31.         // Starter
  32.         Random generatrLiczbLosowych = new Random();  
  33.         string FolderObrazki = $@"{AppDomain.CurrentDomain.BaseDirectory}\Grafiki";
  34.         int licznikRetroObrazkow = 0;
  35.         string[] retroObrazki = null;
  36.         string[] noweObrazki = null;
  37.         string ustawionyRetro = null;
  38.         string ustawionyNowy = null;
  39.  
  40.         //Dodatek
  41.         int punkty = 0;
  42.  
  43.         public Form1()
  44.         {
  45.             InitializeComponent();
  46.             //starter
  47.             noweObrazki = Directory.GetFiles(FolderObrazki + @"\Nowe");
  48.             retroObrazki = Directory.GetFiles(FolderObrazki + @"\Retro");
  49.             //
  50.  
  51.             zaladujObrazekRetro();
  52.             zaladujLosowyNowyObrazek();
  53.  
  54.         }
  55.  
  56.         private void zaladujObrazekRetro()
  57.         {
  58.             if (licznikRetroObrazkow < retroObrazki.Length)
  59.             {
  60.                 ustawionyRetro = retroObrazki[licznikRetroObrazkow];
  61.                 pbRetro.Image = Image.FromFile(ustawionyRetro);
  62.                 licznikRetroObrazkow++;
  63.  
  64.                 //Dodatek
  65.                 lblPostep.Text = $"Postęp {licznikRetroObrazkow}/{retroObrazki.Length}";
  66.  
  67.             }
  68.             else
  69.             {
  70.                 //dodatek
  71.                 MessageBox.Show($"Koniec Gry. Zdobyłeś {punkty}/{retroObrazki.Length} punktów.");
  72.  
  73.  
  74.                 Application.Exit();
  75.             }
  76.         }
  77.  
  78.         private void zaladujLosowyNowyObrazek()
  79.         {
  80.             int iloscObrazkow = noweObrazki.Length;
  81.             int losowa = generatrLiczbLosowych.Next(iloscObrazkow);
  82.             ustawionyNowy = noweObrazki[losowa];
  83.             pbNowe.Image = Image.FromFile(ustawionyNowy);
  84.  
  85.         }
  86.  
  87.        
  88.  
  89.         private void btnLosuj_Click(object sender, EventArgs e)
  90.         {
  91.             zaladujLosowyNowyObrazek();
  92.         }
  93.  
  94.         private void btnTak_Click(object sender, EventArgs e)
  95.         {
  96.             if (czyZgodneObrazki())
  97.             {
  98.                 MessageBox.Show("Odpowiedź prawidłowa! Obrazki są zgodne!!");
  99.                 //dodatek
  100.                 punkty++;
  101.                 lblPunkty.Text = $"Punkty: {punkty}";
  102.                 zaladujObrazekRetro();
  103.                 zaladujLosowyNowyObrazek();
  104.  
  105.                
  106.                
  107.             }
  108.             else
  109.             {
  110.                 MessageBox.Show("Odpowiedź nieprawidłowa! Obrazki nie były zgodne!!");
  111.                 zaladujObrazekRetro();
  112.                 zaladujLosowyNowyObrazek();
  113.             }
  114.  
  115.         }
  116.     }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement