diff options
Diffstat (limited to 'main.cpp')
| -rw-r--r-- | main.cpp | 33 |
1 files changed, 32 insertions, 1 deletions
@@ -355,16 +355,33 @@ void main_loop(void *arg) SDL_SetRenderDrawColor(ctx->ren, 0, 0, 0, 255); SDL_RenderClear(ctx->ren); + SDL_SetRenderDrawColor(ctx->ren, 0x99, 0x99, 0x99, 255); + + for(int j=1;j<12;j++) + { + SDL_Rect rect={0,(ctx->show_tiles_vertical_move-j)*ctx->show_tiles_size,ctx->show_tiles_size,ctx->show_tiles_size}; + rect.h=ctx->show_tiles_max_height; + rect.y+=ctx->show_tiles_size; + SDL_RenderDrawLine(ctx->ren,0,rect.y,ctx->win_width,rect.y); + } + // render visible area for(int i=ctx->world.player.x-ctx->show_tiles_back;i<ctx->world.player.x+ctx->show_tiles_front;i++) { int tile_col=i-ctx->world.player.x+ctx->show_tiles_back; if(i<0||i>=ctx->world.bricks.size())continue; + SDL_SetRenderDrawColor(ctx->ren, 0x99, 0x99, 0x99, 255); + SDL_RenderDrawLine(ctx->ren,(int)(tile_col*ctx->show_tiles_size-ctx->show_tiles_size*ctx->world.player.x2),ctx->win_height,(int)(tile_col*ctx->show_tiles_size-ctx->show_tiles_size*ctx->world.player.x2),0); + + + //coins SDL_Rect rect={(int)(tile_col*ctx->show_tiles_size-ctx->show_tiles_size*ctx->world.player.x2),(ctx->show_tiles_vertical_move-ctx->world.coins_pos[i])*ctx->show_tiles_size,ctx->show_tiles_size,ctx->show_tiles_size}; SDL_RenderCopy(ctx->ren,ctx->textures[2],NULL,&rect); + + for(int j=0;j<ctx->world.bricks[i].size();j++) { SDL_Rect rect={(int)(tile_col*ctx->show_tiles_size-ctx->show_tiles_size*ctx->world.player.x2),(ctx->show_tiles_vertical_move-ctx->world.bricks[i][j].altitude)*ctx->show_tiles_size,ctx->show_tiles_size,ctx->show_tiles_size}; @@ -410,9 +427,23 @@ void main_loop(void *arg) // HUD std::stringstream strbuffer; - strbuffer << "SCORE:" << ctx->world.coins << " | LVL:" << ctx->world.level << " | FPS:" << ctx->fps << " | RES:"<<ctx->win_width << "*" << ctx->win_height ; + strbuffer << "NEXT_STONE (see below)"<< " | SCORE:" << ctx->world.coins << " | LVL:" << ctx->world.level << " | FPS:" << ctx->fps << " | RES:"<<ctx->win_width << "*" << ctx->win_height ; sdl_put_str(ctx->ren, ctx->textures[3],10, 10, 10,strbuffer.str(),222,255,222,60,ctx->win_width,ctx->win_height,1,1); + rect={10,20,60,60}; + + switch(ctx->world.next_stone) + { + case 2: + SDL_RenderCopy(ctx->ren,ctx->textures[5],NULL,&rect); + break; + case 3: + SDL_RenderCopy(ctx->ren,ctx->textures[6],NULL,&rect); + break; + case 4: + SDL_RenderCopy(ctx->ren,ctx->textures[7],NULL,&rect); + break; + } if(ctx->world.player.dead) { sdl_put_str(ctx->ren, ctx->textures[3],300, -1, 10,"LUNATIC LEMMY DIED!",250,100,100,19,ctx->win_width,ctx->win_height,1,2); |
