Advertisement
PrincessFumi

Untitled

Jan 27th, 2015
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.29 KB | None | 0 0
  1. #include <SFML/Window.hpp>
  2. #include <SFML/Graphics.hpp>
  3. #include<stdio.h>
  4. #include "Domek.h"
  5. #include<stdlib.h>
  6. #include<iostream>
  7. #include "wspolrzedne.h"
  8. #include "Pionek.h"
  9. #include "klikniecie.h"
  10. #include "Kostka.h"
  11. #include "Plansza.h"
  12. #include "Gracz.h"
  13. #include "Gra.h"
  14.  
  15. using namespace std;
  16.  
  17. int main()
  18. {
  19. int i;
  20. int j=0;
  21. srand( time( NULL ) );
  22. int kostka;
  23. bool czy_losowac=true;
  24. Gracz* aktualny;
  25. bool czy_ruch;
  26. Pionek *obiekt;
  27. Gra* klikanie;
  28. // bool czy_poczatek_gry=true;
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35. sf::RenderWindow oknoAplikacji( sf::VideoMode( 600, 600, 32 ), "Chinczyk" );
  36.  
  37. sf::Texture plansza;
  38. plansza.loadFromFile( "chinczyk.png" );
  39. sf::Sprite obrazek;
  40. obrazek.setTexture( plansza );
  41. Kostka kosteczka(&oknoAplikacji);
  42.  
  43. //postawienie pionków;
  44.  
  45. Pionek* Pionki[liczbaPionkow];
  46.  
  47. Domek czerwony_domek(490,490, "czerwony.png", czerwony);
  48. czerwony_domek.dodaj_pionka(&Pionki[0]);
  49.  
  50. Domek niebieski_domek(0,490, "niebieski.png", niebieski);
  51. niebieski_domek.dodaj_pionka(&Pionki[4]);
  52.  
  53. Domek zielony_domek (490, 0, "zielony.png", zielony);
  54. zielony_domek.dodaj_pionka(&Pionki[8]);
  55.  
  56. Domek zolty_domek (0, 0, "zolty.png", zolty);
  57. zolty_domek.dodaj_pionka(&Pionki[12]);
  58.  
  59.  
  60. aktualny = klikanie->player;//ustawienie żółtych jako pierwszego gracza
  61.  
  62. while( oknoAplikacji.isOpen() )
  63. {
  64. sf::Event zdarzenie;
  65. while( oknoAplikacji.pollEvent( zdarzenie ) )
  66. {
  67. if( zdarzenie.type == sf::Event::Closed )
  68. oknoAplikacji.close();
  69.  
  70. if( zdarzenie.type == sf::Event::KeyPressed && zdarzenie.key.code == sf::Keyboard::Escape )
  71. oknoAplikacji.close();
  72.  
  73. if( zdarzenie.type == sf::Event::MouseButtonPressed && zdarzenie.mouseButton.button == sf::Mouse::Middle )
  74. oknoAplikacji.close();
  75.  
  76. if(zdarzenie.type == sf::Event::MouseButtonReleased && zdarzenie.mouseButton.button== sf::Mouse::Left)
  77. {
  78. Plansza *akcja;
  79. bool czy_poczatek_gry= obiekt->czy_w_domku(Pionki,aktualny->kolor);
  80. if(czy_poczatek_gry==true && kostka!=6 && j<= 3)
  81. {
  82.  
  83. czy_losowac=true;
  84. if(j==3)
  85. {
  86.  
  87. aktualny=klikanie->zwroc_kolor_nastepnego(aktualny->kolor);
  88. j=0;
  89. }
  90.  
  91. }
  92. else
  93. {
  94. Pionek *pionek = zwroc_kliknietego_pionka(sf::Mouse::getPosition(oknoAplikacji), Pionki);
  95. if(pionek != NULL && pionek->zwroc_kolor()==aktualny->kolor)
  96. {
  97.  
  98. czy_ruch= akcja->ruch_pionka(pionek,Pionki,kostka);
  99. if(czy_ruch==false)
  100. {
  101. }
  102. else
  103. {
  104. j=0;
  105. int szostki;
  106. czy_losowac=true;
  107. if(kostka==6 && czy_poczatek_gry==false)
  108. {
  109. szostki++;
  110. if(szostki==3)
  111. {
  112. aktualny=klikanie->zwroc_kolor_nastepnego(pionek->zwroc_kolor());
  113. szostki=0;
  114. }
  115. }
  116.  
  117.  
  118. else{
  119. aktualny=klikanie->zwroc_kolor_nastepnego(pionek->zwroc_kolor());
  120. }
  121. }
  122.  
  123. }
  124. }
  125. }
  126.  
  127.  
  128.  
  129. }
  130.  
  131. oknoAplikacji.clear( sf::Color::Black );
  132. oknoAplikacji.draw(obrazek);
  133. int i;
  134. for(i=0; i<liczbaPionkow; i++)
  135. {
  136. oknoAplikacji.draw(*(Pionki[i]->zwracanie_sprite()));
  137. }
  138.  
  139.  
  140. if(czy_losowac)
  141. {
  142. kostka = rzut_kostka();
  143. czy_losowac = false;
  144. j++;
  145.  
  146. }
  147.  
  148.  
  149. kosteczka.wyswietl_kostke(kostka,aktualny->kolor);
  150. oknoAplikacji.display();
  151. }
  152. for(i=0; i<liczbaPionkow; i++)
  153. {
  154. delete(Pionki[i]);
  155. }
  156. return 0;
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement