void ReplayEntryKeySelectionView::Draw() const { if( m_CurMode == MODE_INVISIBLE ){ return; } int alpha = 0xFF; int alpha2 = 0xFF; if( m_CurMode == MODE_REPLAY_SELECTED ){ if( m_TransitionCounter <= 10 ){ alpha = ( m_TransitionCounter * 25 ); alpha2 = alpha; } } else if( m_CurMode == MODE_REPLAY_CANCELED ){ if( m_TransitionCounter <= 10 ){ alpha = ( ( 10 - m_TransitionCounter ) * 25 ); alpha2 = alpha; } } else if( m_CurMode == MODE_REPLAY_SAVED ){ if( m_TransitionCounter <= 10 ){ alpha = ( ( 10 - m_TransitionCounter ) * 25 ); alpha2 = alpha; } } else if( m_CurMode == MODE_NAME_INPUT ){ if( m_TransitionCounter <= 10 ){ } } else if( m_CurMode == MODE_NAME_KEY_CHANGED ){ if( m_TransitionCounter <= 10 ){ } } int color1 = alpha2 << 24 | 0xAAFFAA; int selColor = alpha << 24 | 0xFFFFFF; float startY = 110.0f; float titleFont = 0.4f; float itemFont = 0.38f; float baseX = 300.0f; float baseY = 400.0f; float fontScale = 0.55f; for( int i = 0; i < NAME_CHARS_Y; ++i ){ for( int j = 0; j < NAME_CHARS_X; ++j ){ std::string s; s = NAME_CHARS[ i ][ j ]; if( i == m_SelectedCharY && j == m_SelectedCharX ){ DrawFontString( m_ResourceMap, baseX + j * 25.0f, baseY + i * 25.0f, fontScale, selColor, s.c_str() ); } else{ DrawFontString( m_ResourceMap, baseX + j * 25.0f, baseY + i * 25.0f, fontScale, color1, s.c_str() ); } } } }
void Config::Impl::DrawOnInputMode() const { int alpha1 = 0; if( m_Counter >= 20 && m_Counter < 60 ){ alpha1 = ( ( m_Counter - 20 ) * 6 + 10 ) & 0xFF; } else if( m_Counter >= 60 ){ alpha1 = 0xFF; } int color1 = alpha1 << 24 | 0xAAAAAA; int selColor = alpha1 << 24 | 0xFFFFFF; if( m_Mode == CONFIG_MODE_INPUT_KEY ){ selColor = alpha1 << 24 | 0xFFFF00; } float fontScale = 1.0f; float startX = 120.0f; float startY = 100.0f; char* pStr[ 9 ] = { "up", "down", "right", "left", "shot", "bomb", "green", "blue", "red" }; for( int i = 0; i < GENERAL_BUTTON_TOTAL; ++i ){ int c = color1; if( i == m_SelectedInputItem ){ c = selColor; } DrawFontString( m_ResourceMap, startX, startY + 30.0f * i, fontScale, c, pStr[ i ] ); DrawFontString( m_ResourceMap, startX + 150.0f, startY + 30.0f * i, fontScale, c, GetStringFromButton( m_ConfigData.m_KeyboardCaps[ i ] ) ); } }
void ReplayEntryNameView::Draw() const { if( m_CurMode == MODE_INVISIBLE ){ return; } float fontScale = 0.7f; int alpha = 0xFF; if( m_CurMode == MODE_REPLAY_SELECTED ){ if( m_TransitionCounter <= 10 ){ alpha = ( m_TransitionCounter * 25 ); } } else if( m_CurMode == MODE_REPLAY_CANCELED ){ if( m_TransitionCounter <= 10 ){ alpha = ( ( 10 - m_TransitionCounter ) * 25 ); } } else if( m_CurMode == MODE_REPLAY_SAVED ){ if( m_TransitionCounter <= 10 ){ alpha = ( ( 10 - m_TransitionCounter ) * 25 ); } } else if( m_CurMode == MODE_NAME_INPUT ){ } else if( m_CurMode == MODE_NAME_DELETED ){ } int selColor = alpha << 24 | 0xFFFFFF; DrawFontString( m_ResourceMap, 60.0f, 420.0f, fontScale, selColor, m_Name.c_str() ); }
void FontManager::DrawFontString(FontSet font, float x, float y, char *string, float width, int color) { int pX, pY, pWidth; // 画面ピクセルを測定 DXLibMath::ConvertPixcel(static_cast<double>(x), static_cast<double>(y), &pX, &pY); DXLibMath::ConvertPixcelX(static_cast<double>(width), &pWidth); DrawFontString(font, pX, pY, string, pWidth, color ); }
void Config::Impl::DrawOnMenuMode() const { int alpha1 = 0; if( m_Counter >= 20 && m_Counter < 60 ){ alpha1 = ( ( m_Counter - 20 ) * 6 + 10 ) & 0xFF; } else if( m_Counter >= 60 ){ alpha1 = 0xFF; } int color1 = alpha1 << 24 | 0xAAAAAA; int selColor = alpha1 << 24 | 0xFFFFFF; float fontScale = 1.0f; float startX = 120.0f; float startY[ CONFIG_ITEM_TOTAL ]; startY[ CONFIG_ITEM_BGM ] = 100.0f; startY[ CONFIG_ITEM_SE ] = startY[ CONFIG_ITEM_BGM ] + 50.0f; startY[ CONFIG_ITEM_PLAY_SPEED ] = startY[ CONFIG_ITEM_SE ] + 50.0f; startY[ CONFIG_ITEM_INPUT ] = startY[ CONFIG_ITEM_PLAY_SPEED ] + 50.0f; startY[ CONFIG_ITEM_EXIT ] = startY[ CONFIG_ITEM_PLAY_SPEED ] + 150.0f; int c[ CONFIG_ITEM_TOTAL ]; float offsetX = 0.0f; float offsetY = 0.0f; for( int i = 0; i < CONFIG_ITEM_TOTAL; ++i ){ if( i == m_SelectedItem ){ if( m_SelectCounter > 0 ){ offsetX = -2.0f * sin( MAPIL::DegToRad( m_SelectCounter * 45.0 ) ); } else{ offsetX = -2.0f; } offsetY = 0.0f; c[ i ] = selColor; } else{ c[ i ] = color1; } } DrawFontString( m_ResourceMap, startX, startY[ CONFIG_ITEM_BGM ], fontScale, c[ CONFIG_ITEM_BGM ], "BGM : %d", m_ConfigData.m_BGMVolume ); DrawFontString( m_ResourceMap, startX, startY[ CONFIG_ITEM_SE ], fontScale, c[ CONFIG_ITEM_SE ], "SE : %d", m_ConfigData.m_SEVolume ); DrawFontString( m_ResourceMap, startX, startY[ CONFIG_ITEM_PLAY_SPEED ], fontScale, c[ CONFIG_ITEM_PLAY_SPEED ], "Play Speed : %d", m_ConfigData.m_PlaySpeed ); DrawFontString( m_ResourceMap, startX, startY[ CONFIG_ITEM_INPUT ], fontScale, c[ CONFIG_ITEM_INPUT ], "Configure Input" ); DrawFontString( m_ResourceMap, startX, startY[ CONFIG_ITEM_EXIT ], fontScale, c[ CONFIG_ITEM_EXIT ], "Exit" ); }
int Statbar::Draw(){ dx->DrawGraph(STATBAR_START_X,STATBAR_START_Y,IMG_STATBAR_WIDTH,IMG_STATBAR_HEIGHT,0,0,IMG_STATBAR_WIDTH,IMG_STATBAR_HEIGHT,img_statbar); char mes[256]; sprintf(mes,"Stage %d",stage); DrawFontString(mes,530,10,0.3f); sprintf(mes,"Score"); DrawFontString(mes,530,100,0.3f); sprintf(mes,"%5d",(*score)); DrawFontString(mes,540,140,0.3f); sprintf(mes,"Co in"); DrawFontString(mes,530,200,0.3f); sprintf(mes,"%5d",(*coin)); DrawFontString(mes,540,240,0.3f); sprintf(mes,"Shot"); DrawFontString(mes,530,300,0.3f); sprintf(mes,"%5d",(*shot)); DrawFontString(mes,540,340,0.3f); sprintf(mes,"Rest"); DrawFontString(mes,530,400,0.3f); sprintf(mes,"%5d",(*rest)-(*shot)); DrawFontString(mes,540,440,0.3f); return 0; }
void ReplayEntryInfoView::Draw() const { if( m_CurMode == MODE_INVISIBLE ){ return; } int alpha = 0xFF; int alpha2 = 0xFF; if( m_CurMode == MODE_INITIALIZE ){ if( m_TransitionCounter < 20 ){ alpha = 0x00; alpha2 = alpha; } else if( m_TransitionCounter >= 20 && m_TransitionCounter < 60 ){ alpha = ( ( m_Counter - 20 ) * 6 + 10 ) & 0xFF; alpha2 = alpha; } } else if( m_CurMode == MODE_FINALIZE ){ if( m_TransitionCounter <= 20 ){ alpha = ( 0xFF * ( 20 - m_TransitionCounter ) ) / 20; alpha2 = alpha; } else{ alpha = 0x00; alpha2 = alpha; } } else if( m_CurMode == MODE_REPLAY_SELECTED ){ if( m_TransitionCounter <= 10 ){ alpha = ( ( 10 - m_TransitionCounter ) * 25 ); alpha2 = alpha; } } else if( m_CurMode == MODE_REPLAY_CANCELED ){ if( m_TransitionCounter <= 10 ){ alpha = ( m_TransitionCounter * 25 ); alpha2 = alpha; } } else if( m_CurMode == MODE_REPLAY_CHANGED ){ if( m_TransitionCounter <= 10 ){ alpha = ( m_TransitionCounter * 25 ); } } else if( m_CurMode == MODE_REPLAY_SAVED ){ if( m_TransitionCounter <= 10 ){ alpha = ( m_TransitionCounter * 25 ); alpha2 = alpha; } } int color1 = alpha2 << 24 | 0xAAFFAA; int selColor = alpha << 24 | 0xFFFFFF; float startY = 110.0f; float titleFont = 0.4f; float itemFont = 0.38f; DrawFontString( m_ResourceMap, 30.0f, startY + 300.0f, titleFont, color1, "killed" ); DrawFontString( m_ResourceMap, 30.0f, startY + 320.0f, titleFont, color1, "crystal" ); DrawFontString( m_ResourceMap, 160.0f, startY + 300.0f, itemFont, selColor, "%d", m_pDispReplayInfo->m_Entries[ m_ReplayNo ].m_Killed ); DrawFontString( m_ResourceMap, 160.0f, startY + 320.0f, itemFont, selColor, "%d", m_pDispReplayInfo->m_Entries[ m_ReplayNo ].m_Crystal ); }