mirror of
https://github.com/vcmi/vcmi.git
synced 2025-03-27 21:49:10 +02:00
Merge pull request #3114 from Laserlicht/fix-highscore
fix high scores screen
This commit is contained in:
commit
4a24da3804
@ -252,7 +252,7 @@ int CHighScoreInputScreen::addEntry(std::string text) {
|
||||
auto sortFunctor = [](const JsonNode & left, const JsonNode & right)
|
||||
{
|
||||
if(left["points"].Integer() == right["points"].Integer())
|
||||
return left["posFlag"].Integer() > right["posFlag"].Integer();
|
||||
return left["posFlag"].Bool() > right["posFlag"].Bool();
|
||||
return left["points"].Integer() > right["points"].Integer();
|
||||
};
|
||||
|
||||
@ -325,7 +325,6 @@ void CHighScoreInputScreen::deactivate()
|
||||
{
|
||||
CCS->videoh->close();
|
||||
CCS->soundh->stopSound(videoSoundHandle);
|
||||
CIntObject::deactivate();
|
||||
}
|
||||
|
||||
void CHighScoreInputScreen::clickPressed(const Point & cursorPosition)
|
||||
@ -361,7 +360,7 @@ void CHighScoreInputScreen::keyPressed(EShortcut key)
|
||||
}
|
||||
|
||||
CHighScoreInput::CHighScoreInput(std::string playerName, std::function<void(std::string text)> readyCB)
|
||||
: CWindowObject(0, ImagePath::builtin("HIGHNAME")), ready(readyCB)
|
||||
: CWindowObject(NEEDS_ANIMATED_BACKGROUND, ImagePath::builtin("HIGHNAME")), ready(readyCB)
|
||||
{
|
||||
OBJ_CONSTRUCTION_CAPTURING_ALL_NO_DISPOSE;
|
||||
|
||||
|
@ -39,7 +39,8 @@ CWindowObject::CWindowObject(int options_, const ImagePath & imageName, Point ce
|
||||
options(options_),
|
||||
background(createBg(imageName, options & PLAYER_COLORED))
|
||||
{
|
||||
assert(parent == nullptr); //Safe to remove, but windows should not have parent
|
||||
if(!(options & NEEDS_ANIMATED_BACKGROUND)) //currently workaround for highscores (currently uses window as normal control, because otherwise videos are not played in background yet)
|
||||
assert(parent == nullptr); //Safe to remove, but windows should not have parent
|
||||
|
||||
defActions = 255-DISPOSE;
|
||||
|
||||
@ -60,7 +61,8 @@ CWindowObject::CWindowObject(int options_, const ImagePath & imageName):
|
||||
options(options_),
|
||||
background(createBg(imageName, options_ & PLAYER_COLORED))
|
||||
{
|
||||
assert(parent == nullptr); //Safe to remove, but windows should not have parent
|
||||
if(!(options & NEEDS_ANIMATED_BACKGROUND)) //currently workaround for highscores (currently uses window as normal control, because otherwise videos are not played in background yet)
|
||||
assert(parent == nullptr); //Safe to remove, but windows should not have parent
|
||||
|
||||
defActions = 255-DISPOSE;
|
||||
|
||||
|
@ -38,7 +38,8 @@ public:
|
||||
PLAYER_COLORED=1, //background will be player-colored
|
||||
RCLICK_POPUP=2, // window will behave as right-click popup
|
||||
BORDERED=4, // window will have border if current resolution is bigger than size of window
|
||||
SHADOW_DISABLED=8 //this window won't display any shadow
|
||||
SHADOW_DISABLED=8, //this window won't display any shadow
|
||||
NEEDS_ANIMATED_BACKGROUND=16 //there are videos in the background that have to be played
|
||||
};
|
||||
|
||||
/*
|
||||
|
Loading…
x
Reference in New Issue
Block a user