Changeset 10999 for code/branches/cpp11_v2/src/modules/mini4dgame
- Timestamp:
- Dec 30, 2015, 2:31:14 PM (9 years ago)
- Location:
- code/branches/cpp11_v2/src/modules/mini4dgame
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/cpp11_v2/src/modules/mini4dgame/Mini4Dgame.h
r10817 r10999 41 41 namespace orxonox 42 42 { 43 44 namespace mini4DgamePlayerColor45 {46 enum color47 {48 none,49 red,50 blue,51 green52 };53 }54 55 43 /** 56 44 @brief -
code/branches/cpp11_v2/src/modules/mini4dgame/Mini4DgameAI.cc
r10768 r10999 104 104 for(int k=0;k<4;k++){ 105 105 for(int l=0;l<4;l++){ 106 if (this->board_[i][j][k][l]== mini4DgamePlayerColor::none)106 if (this->board_[i][j][k][l]==Mini4DgamePlayerColor::none) 107 107 possibleMoves.push_back(Vector4(i,j,k,l)); 108 108 } -
code/branches/cpp11_v2/src/modules/mini4dgame/Mini4DgameAI.h
r10769 r10999 88 88 std::list<Vector4> getPossibleMoves(); 89 89 void copyBoard(); 90 mini4DgamePlayerColor::color board_[4][4][4][4];90 Mini4DgamePlayerColor board_[4][4][4][4]; 91 91 }; 92 92 } -
code/branches/cpp11_v2/src/modules/mini4dgame/Mini4DgameBoard.cc
r10768 r10999 63 63 for(int k=0;k<4;k++){ 64 64 for(int l=0;l<4;l++){ 65 this->board[i][j][k][l]= mini4DgamePlayerColor::none;65 this->board[i][j][k][l]=Mini4DgamePlayerColor::none; 66 66 this->blinkingBillboards[i][j][k][l] = nullptr; 67 67 } … … 88 88 return (move.x<4 && move.y<4 && move.z<4 && move.w<4 89 89 && move.x>=0 && move.y>=0 && move.z>=0 && move.w>=0 90 && this->board[move.x][move.y][move.z][move.w] == mini4DgamePlayerColor::none);90 && this->board[move.x][move.y][move.z][move.w] == Mini4DgamePlayerColor::none); 91 91 } 92 92 … … 95 95 const Mini4DgamePosition& move = moves.back(); 96 96 moves.pop_back(); 97 this->board[move.x][move.y][move.z][move.w] = mini4DgamePlayerColor::none;97 this->board[move.x][move.y][move.z][move.w] = Mini4DgamePlayerColor::none; 98 98 this->blinkingBillboards[move.x][move.y][move.z][move.w]->destroy(); 99 99 this->blinkingBillboards[move.x][move.y][move.z][move.w] = nullptr; … … 124 124 125 125 moves.push_back(move); 126 mini4DgamePlayerColor::color playerColor = mini4DgamePlayerColor::none;126 Mini4DgamePlayerColor playerColor = Mini4DgamePlayerColor::none; 127 127 if(player_toggle_){ 128 playerColor = mini4DgamePlayerColor::blue;128 playerColor = Mini4DgamePlayerColor::blue; 129 129 this->player_toggle_ = false; 130 130 }else{ 131 playerColor = mini4DgamePlayerColor::green;131 playerColor = Mini4DgamePlayerColor::green; 132 132 this->player_toggle_ = true; 133 133 } 134 134 135 this->board[move.x][move.y][move.z][move.w] = (mini4DgamePlayerColor::color)playerColor;135 this->board[move.x][move.y][move.z][move.w] = playerColor; 136 136 137 137 BlinkingBillboard* bb = new BlinkingBillboard(this->getContext()); … … 155 155 156 156 switch(playerColor){ 157 case mini4DgamePlayerColor::red:157 case Mini4DgamePlayerColor::red: 158 158 bb->setColour(ColourValue(1,0,0)); break; 159 case mini4DgamePlayerColor::green:159 case Mini4DgamePlayerColor::green: 160 160 bb->setColour(ColourValue(0,1,0)); break; 161 case mini4DgamePlayerColor::blue:161 case Mini4DgamePlayerColor::blue: 162 162 bb->setColour(ColourValue(0,0,1)); break; 163 163 default: break; … … 169 169 170 170 Mini4DgameWinner winner = this->getWinner(); 171 if(winner.color_ != mini4DgamePlayerColor::none)171 if(winner.color_ != Mini4DgamePlayerColor::none) 172 172 { 173 173 orxout(user_status) << "Mini4Dgame: win!!!!!!!" << endl; … … 197 197 { 198 198 Mini4DgameWinner winner; 199 winner.color_ = mini4DgamePlayerColor::none;199 winner.color_ = Mini4DgamePlayerColor::none; 200 200 201 201 //check diagonals rows-columns-height-numbers 202 202 for(int i=1; i<4; i++) 203 203 { 204 if(this->board[i][i][i][i]== mini4DgamePlayerColor::none || this->board[0][0][0][0] != this->board[i][i][i][i])204 if(this->board[i][i][i][i]==Mini4DgamePlayerColor::none || this->board[0][0][0][0] != this->board[i][i][i][i]) 205 205 break; 206 206 if(i==3) … … 218 218 for(int i=1; i<4; i++) 219 219 { 220 if(this->board[3-i][i][i][i]== mini4DgamePlayerColor::none || this->board[3][0][0][0] != this->board[3-i][i][i][i])220 if(this->board[3-i][i][i][i]==Mini4DgamePlayerColor::none || this->board[3][0][0][0] != this->board[3-i][i][i][i]) 221 221 break; 222 222 if(i==3) … … 234 234 for(int i=1; i<4; i++) 235 235 { 236 if(this->board[i][3-i][i][i]== mini4DgamePlayerColor::none || this->board[0][3][0][0] != this->board[i][3-i][i][i])236 if(this->board[i][3-i][i][i]==Mini4DgamePlayerColor::none || this->board[0][3][0][0] != this->board[i][3-i][i][i]) 237 237 break; 238 238 if(i==3) … … 250 250 for(int i=1; i<4; i++) 251 251 { 252 if(this->board[i][i][3-i][i]== mini4DgamePlayerColor::none || this->board[0][0][3][0] != this->board[i][i][3-i][i])252 if(this->board[i][i][3-i][i]==Mini4DgamePlayerColor::none || this->board[0][0][3][0] != this->board[i][i][3-i][i]) 253 253 break; 254 254 if(i==3) … … 266 266 for(int i=1; i<4; i++) 267 267 { 268 if(this->board[i][i][i][3-i]== mini4DgamePlayerColor::none || this->board[0][0][0][3] != this->board[i][i][i][3-i])268 if(this->board[i][i][i][3-i]==Mini4DgamePlayerColor::none || this->board[0][0][0][3] != this->board[i][i][i][3-i]) 269 269 break; 270 270 if(i==3) … … 282 282 for(int i=1; i<4; i++) 283 283 { 284 if(this->board[3-i][3-i][i][i]== mini4DgamePlayerColor::none || this->board[3][3][0][0] != this->board[3-i][3-i][i][i])284 if(this->board[3-i][3-i][i][i]==Mini4DgamePlayerColor::none || this->board[3][3][0][0] != this->board[3-i][3-i][i][i]) 285 285 break; 286 286 if(i==3) … … 298 298 for(int i=1; i<4; i++) 299 299 { 300 if(this->board[3-i][i][3-i][i]== mini4DgamePlayerColor::none || this->board[3][0][3][0] != this->board[3-i][i][3-i][i])300 if(this->board[3-i][i][3-i][i]==Mini4DgamePlayerColor::none || this->board[3][0][3][0] != this->board[3-i][i][3-i][i]) 301 301 break; 302 302 if(i==3) … … 314 314 for(int i=1; i<4; i++) 315 315 { 316 if(this->board[3-i][i][i][3-i]== mini4DgamePlayerColor::none || this->board[3][0][0][3] != this->board[3-i][i][i][3-i])316 if(this->board[3-i][i][i][3-i]==Mini4DgamePlayerColor::none || this->board[3][0][0][3] != this->board[3-i][i][i][3-i]) 317 317 break; 318 318 if(i==3) … … 334 334 for(int i=1; i<4; i++) 335 335 { 336 if(this->board[i][i][i][l]== mini4DgamePlayerColor::none || this->board[0][0][0][l] != this->board[i][i][i][l])336 if(this->board[i][i][i][l]==Mini4DgamePlayerColor::none || this->board[0][0][0][l] != this->board[i][i][i][l]) 337 337 break; 338 338 if(i==3) … … 350 350 for(int i=1; i<4; i++) 351 351 { 352 if(this->board[3-i][i][i][l]== mini4DgamePlayerColor::none || this->board[3][0][0][l] != this->board[3-i][i][i][l])352 if(this->board[3-i][i][i][l]==Mini4DgamePlayerColor::none || this->board[3][0][0][l] != this->board[3-i][i][i][l]) 353 353 break; 354 354 if(i==3) … … 366 366 for(int i=1; i<4; i++) 367 367 { 368 if(this->board[i][3-i][i][l]== mini4DgamePlayerColor::none || this->board[0][3][0][l] != this->board[i][3-i][i][l])368 if(this->board[i][3-i][i][l]==Mini4DgamePlayerColor::none || this->board[0][3][0][l] != this->board[i][3-i][i][l]) 369 369 break; 370 370 if(i==3) … … 382 382 for(int i=1; i<4; i++) 383 383 { 384 if(this->board[i][i][3-i][l]== mini4DgamePlayerColor::none || this->board[0][0][3][l] != this->board[i][i][3-i][l])384 if(this->board[i][i][3-i][l]==Mini4DgamePlayerColor::none || this->board[0][0][3][l] != this->board[i][i][3-i][l]) 385 385 break; 386 386 if(i==3) … … 403 403 for(int i=1; i<4; i++) 404 404 { 405 if(this->board[i][i][l][i]== mini4DgamePlayerColor::none || this->board[0][0][l][0] != this->board[i][i][l][i])405 if(this->board[i][i][l][i]==Mini4DgamePlayerColor::none || this->board[0][0][l][0] != this->board[i][i][l][i]) 406 406 break; 407 407 if(i==3) … … 419 419 for(int i=1; i<4; i++) 420 420 { 421 if(this->board[3-i][i][l][i]== mini4DgamePlayerColor::none || this->board[3][0][l][0] != this->board[3-i][i][l][i])421 if(this->board[3-i][i][l][i]==Mini4DgamePlayerColor::none || this->board[3][0][l][0] != this->board[3-i][i][l][i]) 422 422 break; 423 423 if(i==3) … … 435 435 for(int i=1; i<4; i++) 436 436 { 437 if(this->board[i][3-i][l][i]== mini4DgamePlayerColor::none || this->board[0][3][l][0] != this->board[i][3-i][l][i])437 if(this->board[i][3-i][l][i]==Mini4DgamePlayerColor::none || this->board[0][3][l][0] != this->board[i][3-i][l][i]) 438 438 break; 439 439 if(i==3) … … 451 451 for(int i=1; i<4; i++) 452 452 { 453 if(this->board[i][i][l][3-i]== mini4DgamePlayerColor::none || this->board[0][0][l][3] != this->board[i][i][l][3-i])453 if(this->board[i][i][l][3-i]==Mini4DgamePlayerColor::none || this->board[0][0][l][3] != this->board[i][i][l][3-i]) 454 454 break; 455 455 if(i==3) … … 472 472 for(int i=1; i<4; i++) 473 473 { 474 if(this->board[i][l][i][i]== mini4DgamePlayerColor::none || this->board[0][l][0][0] != this->board[i][l][i][i])474 if(this->board[i][l][i][i]==Mini4DgamePlayerColor::none || this->board[0][l][0][0] != this->board[i][l][i][i]) 475 475 break; 476 476 if(i==3) … … 488 488 for(int i=1; i<4; i++) 489 489 { 490 if(this->board[3-i][l][i][i]== mini4DgamePlayerColor::none || this->board[3][l][0][0] != this->board[3-i][l][i][i])490 if(this->board[3-i][l][i][i]==Mini4DgamePlayerColor::none || this->board[3][l][0][0] != this->board[3-i][l][i][i]) 491 491 break; 492 492 if(i==3) … … 504 504 for(int i=1; i<4; i++) 505 505 { 506 if(this->board[i][l][3-i][i]== mini4DgamePlayerColor::none || this->board[0][l][3][0] != this->board[i][l][3-i][i])506 if(this->board[i][l][3-i][i]==Mini4DgamePlayerColor::none || this->board[0][l][3][0] != this->board[i][l][3-i][i]) 507 507 break; 508 508 if(i==3) … … 520 520 for(int i=1; i<4; i++) 521 521 { 522 if(this->board[i][l][i][3-i]== mini4DgamePlayerColor::none || this->board[0][l][0][3] != this->board[i][l][i][3-i])522 if(this->board[i][l][i][3-i]==Mini4DgamePlayerColor::none || this->board[0][l][0][3] != this->board[i][l][i][3-i]) 523 523 break; 524 524 if(i==3) … … 541 541 for(int i=1; i<4; i++) 542 542 { 543 if(this->board[l][i][i][i]== mini4DgamePlayerColor::none || this->board[l][0][0][0] != this->board[l][i][i][i])543 if(this->board[l][i][i][i]==Mini4DgamePlayerColor::none || this->board[l][0][0][0] != this->board[l][i][i][i]) 544 544 break; 545 545 if(i==3) … … 557 557 for(int i=1; i<4; i++) 558 558 { 559 if(this->board[l][3-i][i][i]== mini4DgamePlayerColor::none || this->board[l][3][0][0] != this->board[l][3-i][i][i])559 if(this->board[l][3-i][i][i]==Mini4DgamePlayerColor::none || this->board[l][3][0][0] != this->board[l][3-i][i][i]) 560 560 break; 561 561 if(i==3) … … 573 573 for(int i=1; i<4; i++) 574 574 { 575 if(this->board[l][i][3-i][i]== mini4DgamePlayerColor::none || this->board[l][0][3][0] != this->board[l][i][3-i][i])575 if(this->board[l][i][3-i][i]==Mini4DgamePlayerColor::none || this->board[l][0][3][0] != this->board[l][i][3-i][i]) 576 576 break; 577 577 if(i==3) … … 589 589 for(int i=1; i<4; i++) 590 590 { 591 if(this->board[l][i][i][3-i]== mini4DgamePlayerColor::none || this->board[l][0][0][3] != this->board[l][i][i][3-i])591 if(this->board[l][i][i][3-i]==Mini4DgamePlayerColor::none || this->board[l][0][0][3] != this->board[l][i][i][3-i]) 592 592 break; 593 593 if(i==3) … … 611 611 for(int i=1; i<4; i++) 612 612 { 613 if(this->board[i][i][k][l]== mini4DgamePlayerColor::none || this->board[0][0][k][l] != this->board[i][i][k][l])613 if(this->board[i][i][k][l]==Mini4DgamePlayerColor::none || this->board[0][0][k][l] != this->board[i][i][k][l]) 614 614 break; 615 615 if(i==3) … … 627 627 for(int i=1; i<4; i++) 628 628 { 629 if(this->board[3-i][i][k][l]== mini4DgamePlayerColor::none || this->board[3][0][k][l] != this->board[3-i][i][k][l])629 if(this->board[3-i][i][k][l]==Mini4DgamePlayerColor::none || this->board[3][0][k][l] != this->board[3-i][i][k][l]) 630 630 break; 631 631 if(i==3) … … 644 644 for(int i=1; i<4; i++) 645 645 { 646 if(this->board[i][k][i][l]== mini4DgamePlayerColor::none || this->board[0][k][0][l] != this->board[i][k][i][l])646 if(this->board[i][k][i][l]==Mini4DgamePlayerColor::none || this->board[0][k][0][l] != this->board[i][k][i][l]) 647 647 break; 648 648 if(i==3) … … 660 660 for(int i=1; i<4; i++) 661 661 { 662 if(this->board[3-i][k][i][l]== mini4DgamePlayerColor::none || this->board[3][k][0][l] != this->board[3-i][k][i][l])662 if(this->board[3-i][k][i][l]==Mini4DgamePlayerColor::none || this->board[3][k][0][l] != this->board[3-i][k][i][l]) 663 663 break; 664 664 if(i==3) … … 677 677 for(int i=1; i<4; i++) 678 678 { 679 if(this->board[i][k][l][i]== mini4DgamePlayerColor::none || this->board[0][k][l][0] != this->board[i][k][l][i])679 if(this->board[i][k][l][i]==Mini4DgamePlayerColor::none || this->board[0][k][l][0] != this->board[i][k][l][i]) 680 680 break; 681 681 if(i==3) … … 693 693 for(int i=1; i<4; i++) 694 694 { 695 if(this->board[3-i][k][l][i]== mini4DgamePlayerColor::none || this->board[3][k][l][0] != this->board[3-i][k][l][i])695 if(this->board[3-i][k][l][i]==Mini4DgamePlayerColor::none || this->board[3][k][l][0] != this->board[3-i][k][l][i]) 696 696 break; 697 697 if(i==3) … … 710 710 for(int i=1; i<4; i++) 711 711 { 712 if(this->board[k][i][i][l]== mini4DgamePlayerColor::none || this->board[k][0][0][l] != this->board[k][i][i][l])712 if(this->board[k][i][i][l]==Mini4DgamePlayerColor::none || this->board[k][0][0][l] != this->board[k][i][i][l]) 713 713 break; 714 714 if(i==3) … … 726 726 for(int i=1; i<4; i++) 727 727 { 728 if(this->board[k][3-i][i][l]== mini4DgamePlayerColor::none || this->board[k][3][0][l] != this->board[k][3-i][i][l])728 if(this->board[k][3-i][i][l]==Mini4DgamePlayerColor::none || this->board[k][3][0][l] != this->board[k][3-i][i][l]) 729 729 break; 730 730 if(i==3) … … 743 743 for(int i=1; i<4; i++) 744 744 { 745 if(this->board[k][i][l][i]== mini4DgamePlayerColor::none || this->board[k][0][l][0] != this->board[k][i][l][i])745 if(this->board[k][i][l][i]==Mini4DgamePlayerColor::none || this->board[k][0][l][0] != this->board[k][i][l][i]) 746 746 break; 747 747 if(i==3) … … 759 759 for(int i=1; i<4; i++) 760 760 { 761 if(this->board[k][3-i][l][i]== mini4DgamePlayerColor::none || this->board[k][3][l][0] != this->board[k][3-i][l][i])761 if(this->board[k][3-i][l][i]==Mini4DgamePlayerColor::none || this->board[k][3][l][0] != this->board[k][3-i][l][i]) 762 762 break; 763 763 if(i==3) … … 776 776 for(int i=1; i<4; i++) 777 777 { 778 if(this->board[k][l][i][i]== mini4DgamePlayerColor::none || this->board[k][l][0][0] != this->board[k][l][i][i])778 if(this->board[k][l][i][i]==Mini4DgamePlayerColor::none || this->board[k][l][0][0] != this->board[k][l][i][i]) 779 779 break; 780 780 if(i==3) … … 792 792 for(int i=1; i<4; i++) 793 793 { 794 if(this->board[k][l][3-i][i]== mini4DgamePlayerColor::none || this->board[k][l][3][0] != this->board[k][l][3-i][i])794 if(this->board[k][l][3-i][i]==Mini4DgamePlayerColor::none || this->board[k][l][3][0] != this->board[k][l][3-i][i]) 795 795 break; 796 796 if(i==3) … … 813 813 for(int k=0;k<4;k++){ 814 814 for(int l=0;l<4;l++){ 815 if(this->board[0][j][k][l]!= mini4DgamePlayerColor::none815 if(this->board[0][j][k][l]!= Mini4DgamePlayerColor::none 816 816 && this->board[0][j][k][l]==this->board[1][j][k][l] 817 817 && this->board[1][j][k][l]==this->board[2][j][k][l] … … 835 835 for(int k=0;k<4;k++){ 836 836 for(int l=0;l<4;l++){ 837 if(this->board[i][0][k][l]!= mini4DgamePlayerColor::none837 if(this->board[i][0][k][l]!= Mini4DgamePlayerColor::none 838 838 && this->board[i][0][k][l]==this->board[i][1][k][l] 839 839 && this->board[i][1][k][l]==this->board[i][2][k][l] … … 857 857 for(int j=0;j<4;j++){ 858 858 for(int l=0;l<4;l++){ 859 if(this->board[i][j][0][l]!= mini4DgamePlayerColor::none859 if(this->board[i][j][0][l]!= Mini4DgamePlayerColor::none 860 860 && this->board[i][j][0][l]==this->board[i][j][1][l] 861 861 && this->board[i][j][1][l]==this->board[i][j][2][l] … … 879 879 for(int j=0;j<4;j++){ 880 880 for(int k=0;k<4;k++){ 881 if(this->board[i][j][k][0]!= mini4DgamePlayerColor::none881 if(this->board[i][j][k][0]!= Mini4DgamePlayerColor::none 882 882 && this->board[i][j][k][0]==this->board[i][j][k][1] 883 883 && this->board[i][j][k][1]==this->board[i][j][k][2] -
code/branches/cpp11_v2/src/modules/mini4dgame/Mini4DgameBoard.h
r10817 r10999 42 42 namespace orxonox 43 43 { 44 enum class Mini4DgamePlayerColor 45 { 46 none, 47 red, 48 blue, 49 green 50 }; 44 51 45 52 struct Mini4DgamePosition … … 58 65 int winningHeight[4]; 59 66 int winningNumber[4]; 60 intcolor_;67 Mini4DgamePlayerColor color_; 61 68 }; 62 69 … … 88 95 bool player_toggle_; 89 96 BlinkingBillboard* blinkingBillboards[4][4][4][4]; 90 intboard[4][4][4][4]; //!< The logical board where the game takes place. board[row][column][height][number]97 Mini4DgamePlayerColor board[4][4][4][4]; //!< The logical board where the game takes place. board[row][column][height][number] 91 98 }; 92 99 }
Note: See TracChangeset
for help on using the changeset viewer.