Changeset 11068 for code/branches/cpp11_v3/src/modules/mini4dgame
- Timestamp:
- Jan 17, 2016, 6:41:22 PM (9 years ago)
- Location:
- code/branches/cpp11_v3
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/cpp11_v3
- Property svn:mergeinfo changed
/code/branches/cpp11_v2 merged: 10996-11008,11010
- Property svn:mergeinfo changed
-
code/branches/cpp11_v3/src/modules/mini4dgame/Mini4Dgame.h
r11054 r11068 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_v3/src/modules/mini4dgame/Mini4DgameAI.cc
r11058 r11068 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_v3/src/modules/mini4dgame/Mini4DgameAI.h
r11058 r11068 83 83 std::list<Vector4> getPossibleMoves(); 84 84 void copyBoard(); 85 mini4DgamePlayerColor::color board_[4][4][4][4];85 Mini4DgamePlayerColor board_[4][4][4][4]; 86 86 }; 87 87 } -
code/branches/cpp11_v3/src/modules/mini4dgame/Mini4DgameBoard.cc
r11057 r11068 61 61 for(int k=0;k<4;k++){ 62 62 for(int l=0;l<4;l++){ 63 this->board[i][j][k][l]= mini4DgamePlayerColor::none;63 this->board[i][j][k][l]=Mini4DgamePlayerColor::none; 64 64 this->blinkingBillboards[i][j][k][l] = nullptr; 65 65 } … … 79 79 return (move.x<4 && move.y<4 && move.z<4 && move.w<4 80 80 && move.x>=0 && move.y>=0 && move.z>=0 && move.w>=0 81 && this->board[move.x][move.y][move.z][move.w] == mini4DgamePlayerColor::none);81 && this->board[move.x][move.y][move.z][move.w] == Mini4DgamePlayerColor::none); 82 82 } 83 83 … … 86 86 const Mini4DgamePosition& move = moves.back(); 87 87 moves.pop_back(); 88 this->board[move.x][move.y][move.z][move.w] = mini4DgamePlayerColor::none;88 this->board[move.x][move.y][move.z][move.w] = Mini4DgamePlayerColor::none; 89 89 this->blinkingBillboards[move.x][move.y][move.z][move.w]->destroy(); 90 90 this->blinkingBillboards[move.x][move.y][move.z][move.w] = nullptr; … … 115 115 116 116 moves.push_back(move); 117 mini4DgamePlayerColor::color playerColor = mini4DgamePlayerColor::none;117 Mini4DgamePlayerColor playerColor = Mini4DgamePlayerColor::none; 118 118 if(player_toggle_){ 119 playerColor = mini4DgamePlayerColor::blue;119 playerColor = Mini4DgamePlayerColor::blue; 120 120 this->player_toggle_ = false; 121 121 }else{ 122 playerColor = mini4DgamePlayerColor::green;122 playerColor = Mini4DgamePlayerColor::green; 123 123 this->player_toggle_ = true; 124 124 } 125 125 126 this->board[move.x][move.y][move.z][move.w] = (mini4DgamePlayerColor::color)playerColor;126 this->board[move.x][move.y][move.z][move.w] = playerColor; 127 127 128 128 BlinkingBillboard* bb = new BlinkingBillboard(this->getContext()); … … 146 146 147 147 switch(playerColor){ 148 case mini4DgamePlayerColor::red:148 case Mini4DgamePlayerColor::red: 149 149 bb->setColour(ColourValue(1,0,0)); break; 150 case mini4DgamePlayerColor::green:150 case Mini4DgamePlayerColor::green: 151 151 bb->setColour(ColourValue(0,1,0)); break; 152 case mini4DgamePlayerColor::blue:152 case Mini4DgamePlayerColor::blue: 153 153 bb->setColour(ColourValue(0,0,1)); break; 154 154 default: break; … … 160 160 161 161 Mini4DgameWinner winner = this->getWinner(); 162 if(winner.color_ != mini4DgamePlayerColor::none)162 if(winner.color_ != Mini4DgamePlayerColor::none) 163 163 { 164 164 orxout(user_status) << "Mini4Dgame: win!!!!!!!" << endl; … … 188 188 { 189 189 Mini4DgameWinner winner; 190 winner.color_ = mini4DgamePlayerColor::none;190 winner.color_ = Mini4DgamePlayerColor::none; 191 191 192 192 //check diagonals rows-columns-height-numbers 193 193 for(int i=1; i<4; i++) 194 194 { 195 if(this->board[i][i][i][i]== mini4DgamePlayerColor::none || this->board[0][0][0][0] != this->board[i][i][i][i])195 if(this->board[i][i][i][i]==Mini4DgamePlayerColor::none || this->board[0][0][0][0] != this->board[i][i][i][i]) 196 196 break; 197 197 if(i==3) … … 209 209 for(int i=1; i<4; i++) 210 210 { 211 if(this->board[3-i][i][i][i]== mini4DgamePlayerColor::none || this->board[3][0][0][0] != this->board[3-i][i][i][i])211 if(this->board[3-i][i][i][i]==Mini4DgamePlayerColor::none || this->board[3][0][0][0] != this->board[3-i][i][i][i]) 212 212 break; 213 213 if(i==3) … … 225 225 for(int i=1; i<4; i++) 226 226 { 227 if(this->board[i][3-i][i][i]== mini4DgamePlayerColor::none || this->board[0][3][0][0] != this->board[i][3-i][i][i])227 if(this->board[i][3-i][i][i]==Mini4DgamePlayerColor::none || this->board[0][3][0][0] != this->board[i][3-i][i][i]) 228 228 break; 229 229 if(i==3) … … 241 241 for(int i=1; i<4; i++) 242 242 { 243 if(this->board[i][i][3-i][i]== mini4DgamePlayerColor::none || this->board[0][0][3][0] != this->board[i][i][3-i][i])243 if(this->board[i][i][3-i][i]==Mini4DgamePlayerColor::none || this->board[0][0][3][0] != this->board[i][i][3-i][i]) 244 244 break; 245 245 if(i==3) … … 257 257 for(int i=1; i<4; i++) 258 258 { 259 if(this->board[i][i][i][3-i]== mini4DgamePlayerColor::none || this->board[0][0][0][3] != this->board[i][i][i][3-i])259 if(this->board[i][i][i][3-i]==Mini4DgamePlayerColor::none || this->board[0][0][0][3] != this->board[i][i][i][3-i]) 260 260 break; 261 261 if(i==3) … … 273 273 for(int i=1; i<4; i++) 274 274 { 275 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])275 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]) 276 276 break; 277 277 if(i==3) … … 289 289 for(int i=1; i<4; i++) 290 290 { 291 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])291 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]) 292 292 break; 293 293 if(i==3) … … 305 305 for(int i=1; i<4; i++) 306 306 { 307 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])307 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]) 308 308 break; 309 309 if(i==3) … … 325 325 for(int i=1; i<4; i++) 326 326 { 327 if(this->board[i][i][i][l]== mini4DgamePlayerColor::none || this->board[0][0][0][l] != this->board[i][i][i][l])327 if(this->board[i][i][i][l]==Mini4DgamePlayerColor::none || this->board[0][0][0][l] != this->board[i][i][i][l]) 328 328 break; 329 329 if(i==3) … … 341 341 for(int i=1; i<4; i++) 342 342 { 343 if(this->board[3-i][i][i][l]== mini4DgamePlayerColor::none || this->board[3][0][0][l] != this->board[3-i][i][i][l])343 if(this->board[3-i][i][i][l]==Mini4DgamePlayerColor::none || this->board[3][0][0][l] != this->board[3-i][i][i][l]) 344 344 break; 345 345 if(i==3) … … 357 357 for(int i=1; i<4; i++) 358 358 { 359 if(this->board[i][3-i][i][l]== mini4DgamePlayerColor::none || this->board[0][3][0][l] != this->board[i][3-i][i][l])359 if(this->board[i][3-i][i][l]==Mini4DgamePlayerColor::none || this->board[0][3][0][l] != this->board[i][3-i][i][l]) 360 360 break; 361 361 if(i==3) … … 373 373 for(int i=1; i<4; i++) 374 374 { 375 if(this->board[i][i][3-i][l]== mini4DgamePlayerColor::none || this->board[0][0][3][l] != this->board[i][i][3-i][l])375 if(this->board[i][i][3-i][l]==Mini4DgamePlayerColor::none || this->board[0][0][3][l] != this->board[i][i][3-i][l]) 376 376 break; 377 377 if(i==3) … … 394 394 for(int i=1; i<4; i++) 395 395 { 396 if(this->board[i][i][l][i]== mini4DgamePlayerColor::none || this->board[0][0][l][0] != this->board[i][i][l][i])396 if(this->board[i][i][l][i]==Mini4DgamePlayerColor::none || this->board[0][0][l][0] != this->board[i][i][l][i]) 397 397 break; 398 398 if(i==3) … … 410 410 for(int i=1; i<4; i++) 411 411 { 412 if(this->board[3-i][i][l][i]== mini4DgamePlayerColor::none || this->board[3][0][l][0] != this->board[3-i][i][l][i])412 if(this->board[3-i][i][l][i]==Mini4DgamePlayerColor::none || this->board[3][0][l][0] != this->board[3-i][i][l][i]) 413 413 break; 414 414 if(i==3) … … 426 426 for(int i=1; i<4; i++) 427 427 { 428 if(this->board[i][3-i][l][i]== mini4DgamePlayerColor::none || this->board[0][3][l][0] != this->board[i][3-i][l][i])428 if(this->board[i][3-i][l][i]==Mini4DgamePlayerColor::none || this->board[0][3][l][0] != this->board[i][3-i][l][i]) 429 429 break; 430 430 if(i==3) … … 442 442 for(int i=1; i<4; i++) 443 443 { 444 if(this->board[i][i][l][3-i]== mini4DgamePlayerColor::none || this->board[0][0][l][3] != this->board[i][i][l][3-i])444 if(this->board[i][i][l][3-i]==Mini4DgamePlayerColor::none || this->board[0][0][l][3] != this->board[i][i][l][3-i]) 445 445 break; 446 446 if(i==3) … … 463 463 for(int i=1; i<4; i++) 464 464 { 465 if(this->board[i][l][i][i]== mini4DgamePlayerColor::none || this->board[0][l][0][0] != this->board[i][l][i][i])465 if(this->board[i][l][i][i]==Mini4DgamePlayerColor::none || this->board[0][l][0][0] != this->board[i][l][i][i]) 466 466 break; 467 467 if(i==3) … … 479 479 for(int i=1; i<4; i++) 480 480 { 481 if(this->board[3-i][l][i][i]== mini4DgamePlayerColor::none || this->board[3][l][0][0] != this->board[3-i][l][i][i])481 if(this->board[3-i][l][i][i]==Mini4DgamePlayerColor::none || this->board[3][l][0][0] != this->board[3-i][l][i][i]) 482 482 break; 483 483 if(i==3) … … 495 495 for(int i=1; i<4; i++) 496 496 { 497 if(this->board[i][l][3-i][i]== mini4DgamePlayerColor::none || this->board[0][l][3][0] != this->board[i][l][3-i][i])497 if(this->board[i][l][3-i][i]==Mini4DgamePlayerColor::none || this->board[0][l][3][0] != this->board[i][l][3-i][i]) 498 498 break; 499 499 if(i==3) … … 511 511 for(int i=1; i<4; i++) 512 512 { 513 if(this->board[i][l][i][3-i]== mini4DgamePlayerColor::none || this->board[0][l][0][3] != this->board[i][l][i][3-i])513 if(this->board[i][l][i][3-i]==Mini4DgamePlayerColor::none || this->board[0][l][0][3] != this->board[i][l][i][3-i]) 514 514 break; 515 515 if(i==3) … … 532 532 for(int i=1; i<4; i++) 533 533 { 534 if(this->board[l][i][i][i]== mini4DgamePlayerColor::none || this->board[l][0][0][0] != this->board[l][i][i][i])534 if(this->board[l][i][i][i]==Mini4DgamePlayerColor::none || this->board[l][0][0][0] != this->board[l][i][i][i]) 535 535 break; 536 536 if(i==3) … … 548 548 for(int i=1; i<4; i++) 549 549 { 550 if(this->board[l][3-i][i][i]== mini4DgamePlayerColor::none || this->board[l][3][0][0] != this->board[l][3-i][i][i])550 if(this->board[l][3-i][i][i]==Mini4DgamePlayerColor::none || this->board[l][3][0][0] != this->board[l][3-i][i][i]) 551 551 break; 552 552 if(i==3) … … 564 564 for(int i=1; i<4; i++) 565 565 { 566 if(this->board[l][i][3-i][i]== mini4DgamePlayerColor::none || this->board[l][0][3][0] != this->board[l][i][3-i][i])566 if(this->board[l][i][3-i][i]==Mini4DgamePlayerColor::none || this->board[l][0][3][0] != this->board[l][i][3-i][i]) 567 567 break; 568 568 if(i==3) … … 580 580 for(int i=1; i<4; i++) 581 581 { 582 if(this->board[l][i][i][3-i]== mini4DgamePlayerColor::none || this->board[l][0][0][3] != this->board[l][i][i][3-i])582 if(this->board[l][i][i][3-i]==Mini4DgamePlayerColor::none || this->board[l][0][0][3] != this->board[l][i][i][3-i]) 583 583 break; 584 584 if(i==3) … … 602 602 for(int i=1; i<4; i++) 603 603 { 604 if(this->board[i][i][k][l]== mini4DgamePlayerColor::none || this->board[0][0][k][l] != this->board[i][i][k][l])604 if(this->board[i][i][k][l]==Mini4DgamePlayerColor::none || this->board[0][0][k][l] != this->board[i][i][k][l]) 605 605 break; 606 606 if(i==3) … … 618 618 for(int i=1; i<4; i++) 619 619 { 620 if(this->board[3-i][i][k][l]== mini4DgamePlayerColor::none || this->board[3][0][k][l] != this->board[3-i][i][k][l])620 if(this->board[3-i][i][k][l]==Mini4DgamePlayerColor::none || this->board[3][0][k][l] != this->board[3-i][i][k][l]) 621 621 break; 622 622 if(i==3) … … 635 635 for(int i=1; i<4; i++) 636 636 { 637 if(this->board[i][k][i][l]== mini4DgamePlayerColor::none || this->board[0][k][0][l] != this->board[i][k][i][l])637 if(this->board[i][k][i][l]==Mini4DgamePlayerColor::none || this->board[0][k][0][l] != this->board[i][k][i][l]) 638 638 break; 639 639 if(i==3) … … 651 651 for(int i=1; i<4; i++) 652 652 { 653 if(this->board[3-i][k][i][l]== mini4DgamePlayerColor::none || this->board[3][k][0][l] != this->board[3-i][k][i][l])653 if(this->board[3-i][k][i][l]==Mini4DgamePlayerColor::none || this->board[3][k][0][l] != this->board[3-i][k][i][l]) 654 654 break; 655 655 if(i==3) … … 668 668 for(int i=1; i<4; i++) 669 669 { 670 if(this->board[i][k][l][i]== mini4DgamePlayerColor::none || this->board[0][k][l][0] != this->board[i][k][l][i])670 if(this->board[i][k][l][i]==Mini4DgamePlayerColor::none || this->board[0][k][l][0] != this->board[i][k][l][i]) 671 671 break; 672 672 if(i==3) … … 684 684 for(int i=1; i<4; i++) 685 685 { 686 if(this->board[3-i][k][l][i]== mini4DgamePlayerColor::none || this->board[3][k][l][0] != this->board[3-i][k][l][i])686 if(this->board[3-i][k][l][i]==Mini4DgamePlayerColor::none || this->board[3][k][l][0] != this->board[3-i][k][l][i]) 687 687 break; 688 688 if(i==3) … … 701 701 for(int i=1; i<4; i++) 702 702 { 703 if(this->board[k][i][i][l]== mini4DgamePlayerColor::none || this->board[k][0][0][l] != this->board[k][i][i][l])703 if(this->board[k][i][i][l]==Mini4DgamePlayerColor::none || this->board[k][0][0][l] != this->board[k][i][i][l]) 704 704 break; 705 705 if(i==3) … … 717 717 for(int i=1; i<4; i++) 718 718 { 719 if(this->board[k][3-i][i][l]== mini4DgamePlayerColor::none || this->board[k][3][0][l] != this->board[k][3-i][i][l])719 if(this->board[k][3-i][i][l]==Mini4DgamePlayerColor::none || this->board[k][3][0][l] != this->board[k][3-i][i][l]) 720 720 break; 721 721 if(i==3) … … 734 734 for(int i=1; i<4; i++) 735 735 { 736 if(this->board[k][i][l][i]== mini4DgamePlayerColor::none || this->board[k][0][l][0] != this->board[k][i][l][i])736 if(this->board[k][i][l][i]==Mini4DgamePlayerColor::none || this->board[k][0][l][0] != this->board[k][i][l][i]) 737 737 break; 738 738 if(i==3) … … 750 750 for(int i=1; i<4; i++) 751 751 { 752 if(this->board[k][3-i][l][i]== mini4DgamePlayerColor::none || this->board[k][3][l][0] != this->board[k][3-i][l][i])752 if(this->board[k][3-i][l][i]==Mini4DgamePlayerColor::none || this->board[k][3][l][0] != this->board[k][3-i][l][i]) 753 753 break; 754 754 if(i==3) … … 767 767 for(int i=1; i<4; i++) 768 768 { 769 if(this->board[k][l][i][i]== mini4DgamePlayerColor::none || this->board[k][l][0][0] != this->board[k][l][i][i])769 if(this->board[k][l][i][i]==Mini4DgamePlayerColor::none || this->board[k][l][0][0] != this->board[k][l][i][i]) 770 770 break; 771 771 if(i==3) … … 783 783 for(int i=1; i<4; i++) 784 784 { 785 if(this->board[k][l][3-i][i]== mini4DgamePlayerColor::none || this->board[k][l][3][0] != this->board[k][l][3-i][i])785 if(this->board[k][l][3-i][i]==Mini4DgamePlayerColor::none || this->board[k][l][3][0] != this->board[k][l][3-i][i]) 786 786 break; 787 787 if(i==3) … … 804 804 for(int k=0;k<4;k++){ 805 805 for(int l=0;l<4;l++){ 806 if(this->board[0][j][k][l]!= mini4DgamePlayerColor::none806 if(this->board[0][j][k][l]!= Mini4DgamePlayerColor::none 807 807 && this->board[0][j][k][l]==this->board[1][j][k][l] 808 808 && this->board[1][j][k][l]==this->board[2][j][k][l] … … 826 826 for(int k=0;k<4;k++){ 827 827 for(int l=0;l<4;l++){ 828 if(this->board[i][0][k][l]!= mini4DgamePlayerColor::none828 if(this->board[i][0][k][l]!= Mini4DgamePlayerColor::none 829 829 && this->board[i][0][k][l]==this->board[i][1][k][l] 830 830 && this->board[i][1][k][l]==this->board[i][2][k][l] … … 848 848 for(int j=0;j<4;j++){ 849 849 for(int l=0;l<4;l++){ 850 if(this->board[i][j][0][l]!= mini4DgamePlayerColor::none850 if(this->board[i][j][0][l]!= Mini4DgamePlayerColor::none 851 851 && this->board[i][j][0][l]==this->board[i][j][1][l] 852 852 && this->board[i][j][1][l]==this->board[i][j][2][l] … … 870 870 for(int j=0;j<4;j++){ 871 871 for(int k=0;k<4;k++){ 872 if(this->board[i][j][k][0]!= mini4DgamePlayerColor::none872 if(this->board[i][j][k][0]!= Mini4DgamePlayerColor::none 873 873 && this->board[i][j][k][0]==this->board[i][j][k][1] 874 874 && this->board[i][j][k][1]==this->board[i][j][k][2] -
code/branches/cpp11_v3/src/modules/mini4dgame/Mini4DgameBoard.h
r11057 r11068 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 … … 86 93 bool player_toggle_; 87 94 BlinkingBillboard* blinkingBillboards[4][4][4][4]; 88 intboard[4][4][4][4]; //!< The logical board where the game takes place. board[row][column][height][number]95 Mini4DgamePlayerColor board[4][4][4][4]; //!< The logical board where the game takes place. board[row][column][height][number] 89 96 }; 90 97 }
Note: See TracChangeset
for help on using the changeset viewer.