void DrawsWidget::SwitchCurrentDrawBlock() { Draw* draw = m_draws_controller->GetSelectedDraw(); if (draw == NULL) return; BlockDraw(draw->GetDrawNo(), !draw->GetBlocked()); }
void TitleScreenOutputFrame(void) { DrawBackground(&BG, 0); HighScoreDisplayDraw(&HSD); for (int i = 0; i < MAX_PLAYERS; i++) { Tex t = GetControlTex(i); SDL_Rect dest = { SCREEN_X((i + 1) * FIELD_WIDTH / (MAX_PLAYERS + 1)) - t.W / 2, (SCREEN_HEIGHT - t.H) / 2 - SCREEN_X(PLAYER_RADIUS), t.W, t.H }; RenderTex(t.T, NULL, &dest); } for (int i = 0; i < MAX_PLAYERS; i++) { PlayerDraw(&players[i], 0); } for (int i = 0; i < MAX_PLAYERS; i++) { BlockDraw(&blocks[i], 0); } DrawTitleImg(); // Draw player icons if winners if (!Start) { const int left = (SCREEN_WIDTH - PLAYER_SPRITESHEET_WIDTH * winners) / 2; for (int i = 0; i < winners; i++) { const int playerIndex = winnerIndices[i]; SDL_Rect src = { 0, 0, PLAYER_SPRITESHEET_WIDTH, PLAYER_SPRITESHEET_HEIGHT }; SDL_Rect dest = { left + i * PLAYER_SPRITESHEET_WIDTH, SCREEN_HEIGHT * 0.66f, src.w, src.h }; RenderTex(PlayerSpritesheets[playerIndex].T, &src, &dest); } } SDL_Color c = { 177, 177, 177, 255 }; TextRenderCentered( font, WelcomeMessage, (int)(SCREEN_HEIGHT * 0.75f), c); SDL_RenderPresent(Renderer); }
// 描画 void Stage::Draw(){ // 床 Rect(0 - offsetX, 500, MAP_SIZE, 300).draw(Palette::Green); // ブロック描画 BlockDraw(); }