mirror of
https://github.com/ddnet/ddnet.git
synced 2024-09-20 01:24:18 +00:00
Improved demo player another bit.
* Replaced the reset button by more common stop button * Made the demo player automatically reset after demo ended
This commit is contained in:
parent
538d968349
commit
4123f28bba
Binary file not shown.
Before Width: | Height: | Size: 599 B After Width: | Height: | Size: 616 B |
|
@ -368,7 +368,7 @@ container.sprites.Add(Sprite("browse_unpure", set_browseicons, 3,0,1,1))
|
||||||
|
|
||||||
container.sprites.Add(Sprite("demobutton_play", set_demobuttons, 0,0,1,1))
|
container.sprites.Add(Sprite("demobutton_play", set_demobuttons, 0,0,1,1))
|
||||||
container.sprites.Add(Sprite("demobutton_pause", set_demobuttons, 1,0,1,1))
|
container.sprites.Add(Sprite("demobutton_pause", set_demobuttons, 1,0,1,1))
|
||||||
container.sprites.Add(Sprite("demobutton_reset", set_demobuttons, 2,0,1,1))
|
container.sprites.Add(Sprite("demobutton_stop", set_demobuttons, 2,0,1,1))
|
||||||
container.sprites.Add(Sprite("demobutton_slower", set_demobuttons, 3,0,1,1))
|
container.sprites.Add(Sprite("demobutton_slower", set_demobuttons, 3,0,1,1))
|
||||||
container.sprites.Add(Sprite("demobutton_faster", set_demobuttons, 4,0,1,1))
|
container.sprites.Add(Sprite("demobutton_faster", set_demobuttons, 4,0,1,1))
|
||||||
|
|
||||||
|
|
|
@ -59,6 +59,9 @@ void CMenus::RenderDemoPlayer(CUIRect MainView)
|
||||||
|
|
||||||
CUIRect SeekBar, ButtonBar;
|
CUIRect SeekBar, ButtonBar;
|
||||||
|
|
||||||
|
int CurrentTick = pInfo->m_CurrentTick - pInfo->m_FirstTick;
|
||||||
|
int TotalTicks = pInfo->m_LastTick - pInfo->m_FirstTick;
|
||||||
|
|
||||||
if(m_MenuActive)
|
if(m_MenuActive)
|
||||||
{
|
{
|
||||||
MainView.HSplitTop(SeekBarHeight, &SeekBar, &ButtonBar);
|
MainView.HSplitTop(SeekBarHeight, &SeekBar, &ButtonBar);
|
||||||
|
@ -75,9 +78,6 @@ void CMenus::RenderDemoPlayer(CUIRect MainView)
|
||||||
|
|
||||||
RenderTools()->DrawUIRect(&SeekBar, vec4(0,0,0,0.5f), CUI::CORNER_ALL, 5.0f);
|
RenderTools()->DrawUIRect(&SeekBar, vec4(0,0,0,0.5f), CUI::CORNER_ALL, 5.0f);
|
||||||
|
|
||||||
int CurrentTick = pInfo->m_CurrentTick - pInfo->m_FirstTick;
|
|
||||||
int TotalTicks = pInfo->m_LastTick - pInfo->m_FirstTick;
|
|
||||||
|
|
||||||
float Amount = CurrentTick/(float)TotalTicks;
|
float Amount = CurrentTick/(float)TotalTicks;
|
||||||
|
|
||||||
CUIRect FilledBar = SeekBar;
|
CUIRect FilledBar = SeekBar;
|
||||||
|
@ -120,7 +120,12 @@ void CMenus::RenderDemoPlayer(CUIRect MainView)
|
||||||
if(Inside)
|
if(Inside)
|
||||||
UI()->SetHotItem(id);
|
UI()->SetHotItem(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(CurrentTick == TotalTicks)
|
||||||
|
{
|
||||||
|
DemoPlayer()->Pause();
|
||||||
|
DemoPlayer()->SetPos(0);
|
||||||
|
}
|
||||||
|
|
||||||
if(m_MenuActive)
|
if(m_MenuActive)
|
||||||
{
|
{
|
||||||
|
@ -141,11 +146,14 @@ void CMenus::RenderDemoPlayer(CUIRect MainView)
|
||||||
DemoPlayer()->Unpause();
|
DemoPlayer()->Unpause();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// stop button
|
||||||
|
|
||||||
ButtonBar.VSplitLeft(Margins, 0, &ButtonBar);
|
ButtonBar.VSplitLeft(Margins, 0, &ButtonBar);
|
||||||
ButtonBar.VSplitLeft(ButtonbarHeight, &Button, &ButtonBar);
|
ButtonBar.VSplitLeft(ButtonbarHeight, &Button, &ButtonBar);
|
||||||
static int s_ResetButton = 0;
|
static int s_ResetButton = 0;
|
||||||
if(DoButton_DemoPlayer_Sprite(&s_ResetButton, SPRITE_DEMOBUTTON_RESET, false, &Button))
|
if(DoButton_DemoPlayer_Sprite(&s_ResetButton, SPRITE_DEMOBUTTON_STOP, false, &Button))
|
||||||
{
|
{
|
||||||
|
DemoPlayer()->Pause();
|
||||||
DemoPlayer()->SetPos(0);
|
DemoPlayer()->SetPos(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue