Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace Chinczyk
- {
- public partial class Form1 : Form
- {
- //tutaj ustaw swoja sciezke, tzn zmien "C:\Users\studi\source\repos\Chinczyk"
- Bitmap puste = new Bitmap(@"C:\Users\studi\source\repos\Chinczyk\Chinczyk\Resources\pole.png");
- Bitmap pionekA = new Bitmap(@"C:\Users\studi\source\repos\Chinczyk\Chinczyk\Resources\graczA.png");
- Bitmap pionekC = new Bitmap(@"C:\Users\studi\source\repos\Chinczyk\Chinczyk\Resources\graczC.png");
- bool KtoryGracz = false; // false = czerwony ; true = niebieski
- bool RedMaPionka = false, BlueMaPionka = false;
- bool RedDone = false, BlueDone = false;
- bool CzyNiebieskiBity()
- {
- if (BlueMaPionka && RedMaPionka && zmienne[oczkaBlue] == zmienne[oczkaRed]) return true;
- else return false;
- }
- bool CzyCzerwonyBity()
- {
- if (RedMaPionka && BlueMaPionka && zmienne[oczkaRed] == zmienne[oczkaBlue]) return true;
- else return false;
- }
- bool CzyWyrzucona6()
- {
- if (rzut == 6) return true;
- else return false;
- }
- int pionA1 = 17, pionA2;
- int pionB1 = 8 , pionB2;
- Pole[] zmienne = new Pole[28]; // 24-27 = wyjsciowe
- int oczkaRed = 17, oczkaBlue = 8, max = 18;
- int rzut;
- private void Graj() // funkcja odpowiedzialna za ruszanie pionkow
- {
- rzut = Rzuc();
- label.Text = Rzuc().ToString();
- if (KtoryGracz == false) LabelK.Text = "Odbył się ruch czerwonego";
- else if (KtoryGracz == true) LabelK.Text = "Odbył się ruch niebieskiego";
- if (KtoryGracz == false) // ruch gracza czerwonego
- {
- if(RedMaPionka == false && CzyWyrzucona6()) // pierwszy ruch
- {
- zmienne[oczkaRed].newImage = pionekA;
- RedMaPionka = true;
- }
- else if (RedMaPionka) //kolejne ruchy
- {
- zmienne[oczkaRed].newImage = puste;
- if (oczkaRed + rzut > max)
- {
- oczkaRed = Math.Abs(max - oczkaRed - rzut);
- zmienne[oczkaRed].newImage = pionekA;
- }
- else
- {
- oczkaRed += rzut;
- zmienne[oczkaRed].newImage = pionekA;
- }
- }
- if (CzyNiebieskiBity())
- {
- BlueMaPionka = false;
- oczkaBlue = 8;
- }
- KtoryGracz = true;
- }
- else if (KtoryGracz == true) // ruch gracza niebieskiego
- {
- if (BlueMaPionka == false && CzyWyrzucona6()) // pierwszy ruch
- {
- zmienne[oczkaBlue].newImage = pionekC;
- BlueMaPionka = true;
- }
- else if (BlueMaPionka)//kolejne ruchy
- {
- zmienne[oczkaBlue].newImage = puste;
- if (oczkaBlue + rzut > max)
- {
- oczkaBlue = Math.Abs(max - oczkaBlue - rzut);
- zmienne[oczkaBlue].newImage = pionekC;
- }
- else
- {
- oczkaBlue += rzut;
- zmienne[oczkaBlue].newImage = pionekC;
- }
- }
- if (CzyCzerwonyBity())
- {
- RedMaPionka = false;
- oczkaRed = 17;
- }
- KtoryGracz = false;
- }
- WczytajMape();
- }
- public Form1()
- {
- InitializeComponent();
- Stworz();
- WczytajMape();
- }
- private void wyjscieA1_Click(object sender, EventArgs e)
- {
- if (KtoryGracz == false && CzyWyrzucona6() && zmienne[24].newImage == pionekA)
- {
- zmienne[24].newImage = puste;
- zmienne[pionA1].newImage = pionekA; //wychodzi pierwszy pionek
- KtoryGracz = true;
- }
- }
- public int Rzuc() // rzut kostka do gry 1-6
- {
- Random random = new Random();
- int randomNumber = random.Next(1, 7);
- return randomNumber;
- }
- public void Stworz()
- {
- for (int i = 1; i < 23; i++) // stworzenie mapy
- {
- zmienne[i] = new Pole();
- zmienne[i].newImage = puste;
- }
- for (int i = 23; i < 25; i++) // pionki czerwonego
- {
- zmienne[i] = new Pole();
- zmienne[i].newImage = pionekA;
- }
- for (int i = 25; i < 27; i++) // pionki niebieskiego
- {
- zmienne[i] = new Pole();
- zmienne[i].newImage = pionekC;
- }
- }
- private void WczytajMape() // rysuje mape do chinczyka
- {
- pole1.Image = zmienne[1].newImage;
- pole2.Image = zmienne[2].newImage;
- pole3.Image = zmienne[3].newImage;
- pole4.Image = zmienne[4].newImage;
- pole5.Image = zmienne[5].newImage;
- pole6.Image = zmienne[6].newImage;
- pole7.Image = zmienne[7].newImage;
- pole8.Image = zmienne[8].newImage;
- pole9.Image = zmienne[9].newImage;
- pole10.Image = zmienne[10].newImage;
- pole11.Image = zmienne[11].newImage;
- pole12.Image = zmienne[12].newImage;
- pole13.Image = zmienne[13].newImage;
- pole14.Image = zmienne[14].newImage;
- pole15.Image = zmienne[15].newImage;
- pole16.Image = zmienne[16].newImage;
- pole17.Image = zmienne[17].newImage;
- pole18.Image = zmienne[18].newImage;
- poleA.Image = zmienne[19].newImage; //pole do wygranej czerwonego = gracza A
- poleA1.Image = zmienne[20].newImage;
- poleC.Image = zmienne[21].newImage; //pole do wygranej niebieskiego = gracza C
- poleC1.Image = zmienne[22].newImage;
- wyjscieA.Image = zmienne[23].newImage; //wyjsciowe czerwonego = gracza A
- wyjscieA1.Image = zmienne[24].newImage; //dol
- wyjscieC.Image = zmienne[25].newImage; //wyjscie niebieskiego = gracza C
- wyjscieC1.Image = zmienne[26].newImage;
- }
- private void button_Click(object sender, EventArgs e)
- {
- Graj();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement