Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Jan 17, 2016, 10:29:21 PM (8 years ago)
Author:
landauf
Message:

merged branch cpp11_v3 back to trunk

Location:
code/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • code/trunk

  • code/trunk/src/modules/mini4dgame/Mini4DgameBoard.cc

    r10624 r11071  
    4040#include "graphics/BlinkingBillboard.h"
    4141
    42 #include "core/XMLPort.h"
    43 
    4442#include "Mini4Dgame.h"
    4543
     
    6361                for(int k=0;k<4;k++){
    6462                    for(int l=0;l<4;l++){
    65                         this->board[i][j][k][l]=mini4DgamePlayerColor::none;
    66                         this->blinkingBillboards[i][j][k][l] = 0;
     63                        this->board[i][j][k][l]=Mini4DgamePlayerColor::none;
     64                        this->blinkingBillboards[i][j][k][l] = nullptr;
    6765                    }
    6866                }
     
    7169        this->player_toggle_ = false;
    7270        this->checkGametype();
    73     }
    74 
    75 
    76     //xml port for loading sounds
    77     void Mini4DgameBoard::XMLPort(Element& xmlelement, XMLPort::Mode mode)
    78     {
    79         SUPER(Mini4DgameBoard, XMLPort, xmlelement, mode);
    8071    }
    8172
     
    8879        return (move.x<4 && move.y<4 && move.z<4 && move.w<4
    8980                && 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);
     81                && this->board[move.x][move.y][move.z][move.w] == Mini4DgamePlayerColor::none);
    9182    }
    9283
     
    9586        const Mini4DgamePosition& move = moves.back();
    9687        moves.pop_back();
    97         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;
    9889        this->blinkingBillboards[move.x][move.y][move.z][move.w]->destroy();
    99         this->blinkingBillboards[move.x][move.y][move.z][move.w] = 0;
     90        this->blinkingBillboards[move.x][move.y][move.z][move.w] = nullptr;
    10091        if(player_toggle_){
    10192            this->player_toggle_ = false;
     
    124115
    125116            moves.push_back(move);
    126             mini4DgamePlayerColor::color playerColor = mini4DgamePlayerColor::none;
     117            Mini4DgamePlayerColor playerColor = Mini4DgamePlayerColor::none;
    127118            if(player_toggle_){
    128                 playerColor = mini4DgamePlayerColor::blue;
     119                playerColor = Mini4DgamePlayerColor::blue;
    129120                this->player_toggle_ = false;
    130121            }else{
    131                 playerColor = mini4DgamePlayerColor::green;
     122                playerColor = Mini4DgamePlayerColor::green;
    132123                this->player_toggle_ = true;
    133124            }
    134125
    135             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;
    136127
    137128            BlinkingBillboard* bb = new BlinkingBillboard(this->getContext());
     
    155146
    156147            switch(playerColor){
    157             case mini4DgamePlayerColor::red:
     148            case Mini4DgamePlayerColor::red:
    158149                bb->setColour(ColourValue(1,0,0)); break;
    159             case mini4DgamePlayerColor::green:
     150            case Mini4DgamePlayerColor::green:
    160151                bb->setColour(ColourValue(0,1,0)); break;
    161             case mini4DgamePlayerColor::blue:
     152            case Mini4DgamePlayerColor::blue:
    162153                bb->setColour(ColourValue(0,0,1)); break;
    163154            default: break;
     
    169160
    170161            Mini4DgameWinner winner = this->getWinner();
    171             if(winner.color_ != mini4DgamePlayerColor::none)
     162            if(winner.color_ != Mini4DgamePlayerColor::none)
    172163            {
    173164                orxout(user_status) << "Mini4Dgame: win!!!!!!!" << endl;
     
    197188    {
    198189        Mini4DgameWinner winner;
    199         winner.color_ = mini4DgamePlayerColor::none;
     190        winner.color_ = Mini4DgamePlayerColor::none;
    200191
    201192        //check diagonals rows-columns-height-numbers
    202193        for(int i=1; i<4; i++)
    203194        {
    204             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])
    205196                break;
    206197            if(i==3)
     
    218209        for(int i=1; i<4; i++)
    219210        {
    220             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])
    221212                break;
    222213            if(i==3)
     
    234225        for(int i=1; i<4; i++)
    235226        {
    236             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])
    237228                break;
    238229            if(i==3)
     
    250241        for(int i=1; i<4; i++)
    251242        {
    252             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])
    253244                break;
    254245            if(i==3)
     
    266257        for(int i=1; i<4; i++)
    267258        {
    268             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])
    269260                break;
    270261            if(i==3)
     
    282273        for(int i=1; i<4; i++)
    283274        {
    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])
     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])
    285276                break;
    286277            if(i==3)
     
    298289        for(int i=1; i<4; i++)
    299290        {
    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])
     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])
    301292                break;
    302293            if(i==3)
     
    314305        for(int i=1; i<4; i++)
    315306        {
    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])
     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])
    317308                break;
    318309            if(i==3)
     
    334325            for(int i=1; i<4; i++)
    335326            {
    336                 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])
    337328                    break;
    338329                if(i==3)
     
    350341            for(int i=1; i<4; i++)
    351342            {
    352                 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])
    353344                    break;
    354345                if(i==3)
     
    366357            for(int i=1; i<4; i++)
    367358            {
    368                 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])
    369360                    break;
    370361                if(i==3)
     
    382373            for(int i=1; i<4; i++)
    383374            {
    384                 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])
    385376                    break;
    386377                if(i==3)
     
    403394            for(int i=1; i<4; i++)
    404395            {
    405                 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])
    406397                    break;
    407398                if(i==3)
     
    419410            for(int i=1; i<4; i++)
    420411            {
    421                 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])
    422413                    break;
    423414                if(i==3)
     
    435426            for(int i=1; i<4; i++)
    436427            {
    437                 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])
    438429                    break;
    439430                if(i==3)
     
    451442            for(int i=1; i<4; i++)
    452443            {
    453                 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])
    454445                    break;
    455446                if(i==3)
     
    472463            for(int i=1; i<4; i++)
    473464            {
    474                 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])
    475466                    break;
    476467                if(i==3)
     
    488479            for(int i=1; i<4; i++)
    489480            {
    490                 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])
    491482                    break;
    492483                if(i==3)
     
    504495            for(int i=1; i<4; i++)
    505496            {
    506                 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])
    507498                    break;
    508499                if(i==3)
     
    520511            for(int i=1; i<4; i++)
    521512            {
    522                 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])
    523514                    break;
    524515                if(i==3)
     
    541532            for(int i=1; i<4; i++)
    542533            {
    543                 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])
    544535                    break;
    545536                if(i==3)
     
    557548            for(int i=1; i<4; i++)
    558549            {
    559                 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])
    560551                    break;
    561552                if(i==3)
     
    573564            for(int i=1; i<4; i++)
    574565            {
    575                 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])
    576567                    break;
    577568                if(i==3)
     
    589580            for(int i=1; i<4; i++)
    590581            {
    591                 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])
    592583                    break;
    593584                if(i==3)
     
    611602                for(int i=1; i<4; i++)
    612603                {
    613                     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])
    614605                        break;
    615606                    if(i==3)
     
    627618                for(int i=1; i<4; i++)
    628619                {
    629                     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])
    630621                        break;
    631622                    if(i==3)
     
    644635                for(int i=1; i<4; i++)
    645636                {
    646                     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])
    647638                        break;
    648639                    if(i==3)
     
    660651                for(int i=1; i<4; i++)
    661652                {
    662                     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])
    663654                        break;
    664655                    if(i==3)
     
    677668                for(int i=1; i<4; i++)
    678669                {
    679                     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])
    680671                        break;
    681672                    if(i==3)
     
    693684                for(int i=1; i<4; i++)
    694685                {
    695                     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])
    696687                        break;
    697688                    if(i==3)
     
    710701                for(int i=1; i<4; i++)
    711702                {
    712                     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])
    713704                        break;
    714705                    if(i==3)
     
    726717                for(int i=1; i<4; i++)
    727718                {
    728                     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])
    729720                        break;
    730721                    if(i==3)
     
    743734                for(int i=1; i<4; i++)
    744735                {
    745                     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])
    746737                        break;
    747738                    if(i==3)
     
    759750                for(int i=1; i<4; i++)
    760751                {
    761                     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])
    762753                        break;
    763754                    if(i==3)
     
    776767                for(int i=1; i<4; i++)
    777768                {
    778                     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])
    779770                        break;
    780771                    if(i==3)
     
    792783                for(int i=1; i<4; i++)
    793784                {
    794                     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])
    795786                        break;
    796787                    if(i==3)
     
    813804            for(int k=0;k<4;k++){
    814805                for(int l=0;l<4;l++){
    815                     if(this->board[0][j][k][l]!= mini4DgamePlayerColor::none
     806                    if(this->board[0][j][k][l]!= Mini4DgamePlayerColor::none
    816807                       && this->board[0][j][k][l]==this->board[1][j][k][l]
    817808                       && this->board[1][j][k][l]==this->board[2][j][k][l]
     
    835826            for(int k=0;k<4;k++){
    836827                for(int l=0;l<4;l++){
    837                     if(this->board[i][0][k][l]!= mini4DgamePlayerColor::none
     828                    if(this->board[i][0][k][l]!= Mini4DgamePlayerColor::none
    838829                               && this->board[i][0][k][l]==this->board[i][1][k][l]
    839830                               && this->board[i][1][k][l]==this->board[i][2][k][l]
     
    857848            for(int j=0;j<4;j++){
    858849                for(int l=0;l<4;l++){
    859                     if(this->board[i][j][0][l]!= mini4DgamePlayerColor::none
     850                    if(this->board[i][j][0][l]!= Mini4DgamePlayerColor::none
    860851                                       && this->board[i][j][0][l]==this->board[i][j][1][l]
    861852                                       && this->board[i][j][1][l]==this->board[i][j][2][l]
     
    879870            for(int j=0;j<4;j++){
    880871                for(int k=0;k<4;k++){
    881                     if(this->board[i][j][k][0]!= mini4DgamePlayerColor::none
     872                    if(this->board[i][j][k][0]!= Mini4DgamePlayerColor::none
    882873                                       && this->board[i][j][k][0]==this->board[i][j][k][1]
    883874                                       && this->board[i][j][k][1]==this->board[i][j][k][2]
     
    905896    void Mini4DgameBoard::checkGametype()
    906897    {
    907         if (this->getGametype() != NULL && this->getGametype()->isA(Class(Mini4Dgame)))
     898        if (this->getGametype() != nullptr && this->getGametype()->isA(Class(Mini4Dgame)))
    908899        {
    909900            Mini4Dgame* Mini4DgameGametype = orxonox_cast<Mini4Dgame*>(this->getGametype());
Note: See TracChangeset for help on using the changeset viewer.