Advertisement
Guest User

Untitled

a guest
Oct 21st, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.88 KB | None | 0 0
  1. // mainwindow.h
  2. private:
  3. int gameData[4][4];
  4.  
  5. public:
  6. int getGameData(int x, int y);
  7. int setGameData(int x, int y, int val);
  8.  
  9. // mainwindow.cpp
  10. void MainWindow::moveLeft(){
  11.  
  12. bool move = false;
  13.  
  14. // Сдвиг в влево
  15. for(int x =0; x<4; x++){
  16. for(int y=0; y<4; y++){
  17. if(MainWindow::getGameData(x, y) == 0){
  18. for (int i = y; i < 4; i++){
  19. if(MainWindow::getGameData(x, i) != 0){
  20. MainWindow::setGameData(x, y, MainWindow::getGameData(x, i));
  21. MainWindow::setGameData(x, i, 0);
  22. move = true;
  23. break;
  24. }
  25. }
  26. }
  27. }
  28. }
  29.  
  30. for(int x = 0; x<4; x++){
  31. for(int y = 0; y<3; y++){
  32. if(MainWindow::getGameData(x, y) == MainWindow::getGameData(x, y+1)){
  33. MainWindow::setGameData(x, y, MainWindow::getGameData(x, y)*2);
  34. MainWindow::scoreValuePlus(MainWindow::getGameData(x, y));
  35. MainWindow::setGameData(x, y+1, 0);
  36. move = true;
  37. }
  38.  
  39. for(int x =0; x<4; x++){
  40. for(int y=0; y<4; y++){
  41. if(MainWindow::getGameData(x, y) == 0){
  42. for (int i = y; i < 4; i++){
  43. if(MainWindow::getGameData(x, i) != 0){
  44. MainWindow::setGameData(x, y, MainWindow::getGameData(x, i));
  45. MainWindow::setGameData(x, i, 0);
  46. break;
  47. }
  48. }
  49. }
  50. }
  51. }
  52.  
  53. if(MainWindow::getGameData(x, y) == 0){
  54. ui->gameGrid->item(x, y)->setData(Qt::DisplayRole, QVariant(""));;
  55. }
  56. else {
  57. ui->gameGrid->item(x, y)->setData(Qt::DisplayRole, QVariant(MainWindow::getGameData(x, y)));
  58. }
  59. }
  60. }
  61.  
  62. if(move == true){
  63. MainWindow::generateCell(true);
  64. MainWindow::moveValuePlus();
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement