void initializeDisplay( ) { SDL_Init( SDL_INIT_VIDEO ); SDL_WM_SetCaption( WINDOW_CAPTION, WINDOW_CAPTION ); gfxdata.screen = SDL_SetVideoMode( WINDOW_WIDTH, WINDOW_HEIGHT, 0, 0 ); SDL_Surface* tmp = SDL_LoadBMP( "data/tetris.bmp" ); gfxdata.bitmap = SDL_DisplayFormat( tmp ); tmp = SDL_LoadBMP( "data/bg.bmp" ); gfxdata.board = SDL_DisplayFormat( tmp ); SDL_FreeSurface( tmp ); SDL_BlitSurface( gfxdata.board, NULL, gfxdata.screen, NULL ); drawTetromino( gamedata.curTm ); }
void updateDisplay( ) { SDL_BlitSurface( gfxdata.board, NULL, gfxdata.screen, NULL ); drawTetromino( gamedata.curTm ); }
void debug(int INmode) { ClearScreen(); SDL_Flip(screen); selectGame(1); gameResetVars(); if (INmode==2) //ClearFullRows() { for (int i=0; i<AREA_HEIGHT+2; i++) { for (int j=0; j<AREA_WIDTH; j++) { area[j][i] = (rand()%15)-EMPTY_AREA; if (area[j][i]>EMPTY_AREA) area[j][i]=area[j][i]%3+1; } } drawBoard(); SDL_Delay(5000); clearFullRows(); SDL_Delay(250); drawBoard(); SDL_Delay(5000); } else if (INmode==3) //drawTetromino() { int tets,angl; for (tets=0; tets<7; tets++) { for (angl=0; angl<4; angl++) { ClearScreen(); drawTetromino(tets,(angl+2)%4,0,0,REAL_TET); SDL_Flip(screen); SDL_Delay(600); } } } else if (INmode==4) //peiceSetinto() { pieceCreate(COMING); tetUD=10; drawTetromino(currentPiece,currentRotate,tetLR,tetUD,REAL_TET); SDL_Delay(3000); drawBoard(); SDL_Delay(3000); pieceSetInto(currentPiece); drawBoard(); SDL_Delay(3000); debugInfo(0); } else if (INmode==5) //peiceCreate() { for (int i=0; i<10; i++) { pieceCreate(COMING); ClearScreen(); printf("c%d n%d n%d n%d\n",currentPiece,nextPiece[0],nextPiece[1],nextPiece[2]); SDL_Delay(100); } } else if (INmode==6) //gravity { pieceCreate(COMING); while(tetUD<AREA_HEIGHT) //off by 2? { ClearScreen(); //drawBoard(true); drawTetromino(currentPiece,currentRotate,tetLR,tetUD,REAL_TET); printf("y=%d",tetUD); SDL_Delay(1000); tetUD++; } } }