mirror of
https://github.com/vcmi/vcmi.git
synced 2025-08-10 22:31:40 +02:00
Merge remote-tracking branch 'upstream/develop' into develop
This commit is contained in:
@@ -3,20 +3,20 @@
|
||||
"vcmi.adventureMap.monsterThreat.levels.0" : "Bez námahy",
|
||||
"vcmi.adventureMap.monsterThreat.levels.1" : "Velmi slabá",
|
||||
"vcmi.adventureMap.monsterThreat.levels.2" : "Slabá",
|
||||
"vcmi.adventureMap.monsterThreat.levels.3" : "Trochu slabší",
|
||||
"vcmi.adventureMap.monsterThreat.levels.4" : "Podobná",
|
||||
"vcmi.adventureMap.monsterThreat.levels.5" : "Trochu silnější",
|
||||
"vcmi.adventureMap.monsterThreat.levels.3" : "O něco slabší",
|
||||
"vcmi.adventureMap.monsterThreat.levels.4" : "Rovnocenná",
|
||||
"vcmi.adventureMap.monsterThreat.levels.5" : "O něco silnější",
|
||||
"vcmi.adventureMap.monsterThreat.levels.6" : "Silná",
|
||||
"vcmi.adventureMap.monsterThreat.levels.7" : "Velmi silná",
|
||||
"vcmi.adventureMap.monsterThreat.levels.8" : "Výzva",
|
||||
"vcmi.adventureMap.monsterThreat.levels.9" : "Převažující",
|
||||
"vcmi.adventureMap.monsterThreat.levels.10" : "Smrtelná",
|
||||
"vcmi.adventureMap.monsterThreat.levels.11" : "Nemožná",
|
||||
"vcmi.adventureMap.monsterLevel" : "\n\nÚroveň %LEVEL %TOWN %ATTACK_TYPE jednotka",
|
||||
"vcmi.adventureMap.monsterMeleeType" : "útok zblízka",
|
||||
"vcmi.adventureMap.monsterRangedType" : "útok na dálku",
|
||||
"vcmi.adventureMap.search.hover" : "Prohledat mapový objekt",
|
||||
"vcmi.adventureMap.search.help" : "Vyberte objekt na mapě pro prohledání.",
|
||||
"vcmi.adventureMap.monsterThreat.levels.9" : "Převaha",
|
||||
"vcmi.adventureMap.monsterThreat.levels.10" : "Smrtící",
|
||||
"vcmi.adventureMap.monsterThreat.levels.11" : "Nehratelná",
|
||||
"vcmi.adventureMap.monsterLevel" : "\n\nÚroveň %LEVEL, %TOWN\nJednotka %ATTACK_TYPE",
|
||||
"vcmi.adventureMap.monsterMeleeType" : "útočí zblízka",
|
||||
"vcmi.adventureMap.monsterRangedType" : "útočí na dálku",
|
||||
"vcmi.adventureMap.search.hover" : "Prohledat objekt",
|
||||
"vcmi.adventureMap.search.help" : "Vyberte objekt na mapě k prohledání.",
|
||||
|
||||
"vcmi.adventureMap.confirmRestartGame" : "Jste si jisti, že chcete restartovat hru?",
|
||||
"vcmi.adventureMap.noTownWithMarket" : "Nejsou dostupné žádne tržnice!",
|
||||
@@ -61,7 +61,7 @@
|
||||
"vcmi.radialWheel.moveDown" : "Posunout níže",
|
||||
"vcmi.radialWheel.moveBottom" : "Přesunout dolů",
|
||||
|
||||
"vcmi.spellBook.search" : "hledat...",
|
||||
"vcmi.spellBook.search" : "Hledat kouzlo",
|
||||
|
||||
"vcmi.spellResearch.canNotAfford" : "Nemáte dostatek prostředků k nahrazení {%SPELL1} za {%SPELL2}. Stále však můžete toto kouzlo zrušit a pokračovat ve výzkumu kouzel.",
|
||||
"vcmi.spellResearch.comeAgain" : "Výzkum už byl dnes proveden. Vraťte se zítra.",
|
||||
@@ -86,7 +86,7 @@
|
||||
"vcmi.lobby.sortDate" : "Řadit mapy dle data změny",
|
||||
"vcmi.lobby.backToLobby" : "Vrátit se do lobby",
|
||||
"vcmi.lobby.author" : "Autor",
|
||||
"vcmi.lobby.handicap" : "Handicap",
|
||||
"vcmi.lobby.handicap" : "Postih",
|
||||
"vcmi.lobby.handicap.resource" : "Dává hráčům odpovídající zdroje navíc k běžným startovním zdrojům. Jsou povoleny záporné hodnoty, ale jsou omezeny na celkovou hodnotu 0 (hráč nikdy nezačíná se zápornými zdroji).",
|
||||
"vcmi.lobby.handicap.income" : "Mění různé příjmy hráče podle procent. Výsledek je zaokrouhlen nahoru.",
|
||||
"vcmi.lobby.handicap.growth" : "Mění rychlost růstu jednotel v městech vlastněných hráčem. Výsledek je zaokrouhlen nahoru.",
|
||||
@@ -215,7 +215,7 @@
|
||||
"vcmi.systemOptions.resolutionButton.hover" : "Rozlišení: %wx%h",
|
||||
"vcmi.systemOptions.resolutionButton.help" : "{Vybrat rozlišení}\n\nZmění rozlišení herní obrazovky.",
|
||||
"vcmi.systemOptions.resolutionMenu.hover" : "Vybrat rozlišení",
|
||||
"vcmi.systemOptions.resolutionMenu.help" : "Změnit rozlišení herní obrazovky.",
|
||||
"vcmi.systemOptions.resolutionMenu.help" : "Změní rozlišení herní obrazovky.",
|
||||
"vcmi.systemOptions.scalingButton.hover" : "Škálování rozhraní: %p%",
|
||||
"vcmi.systemOptions.scalingButton.help" : "{Škálování rozhraní}\n\nZmění škálování herního rozhraní",
|
||||
"vcmi.systemOptions.scalingMenu.hover" : "Vybrat škálování rozhraní",
|
||||
@@ -244,14 +244,14 @@
|
||||
"vcmi.adventureOptions.forceMovementInfo.help" : "{Vždy zobrazit cenu pohybu}\n\nVždy zobrazit informace o bodech pohybu v panelu informací. (Místo zobrazení pouze při stisknuté klávese ALT).",
|
||||
"vcmi.adventureOptions.showGrid.hover" : "Zobrazit mřížku",
|
||||
"vcmi.adventureOptions.showGrid.help" : "{Zobrazit mřížku}\n\nZobrazit překrytí mřížkou, zvýrazňuje hranice mezi dlaždicemi mapy světa.",
|
||||
"vcmi.adventureOptions.borderScroll.hover" : "Posouvání okraji",
|
||||
"vcmi.adventureOptions.borderScroll.help" : "{Posouvání okraji}\n\nPosouvat mapu světa, když je kurzor na okraji obrazovky. Může být zakázáno držením klávesy CTRL.",
|
||||
"vcmi.adventureOptions.borderScroll.hover" : "Posouvání okrajem obrazovky",
|
||||
"vcmi.adventureOptions.borderScroll.help" : "{Posouvání okrajem obrazovky}\n\nPosouvat mapu světa, když je kurzor na okraji obrazovky. Může být zakázáno držením klávesy CTRL.",
|
||||
"vcmi.adventureOptions.infoBarCreatureManagement.hover" : "Správa jednotek v informačním panelu",
|
||||
"vcmi.adventureOptions.infoBarCreatureManagement.help" : "{Správa jednotek v informačním panelu}\n\nUmožňuje přeskupovat jednotky v informačním panelu namísto procházení standardních informací.",
|
||||
"vcmi.adventureOptions.leftButtonDrag.hover" : "Posouvání mapy levým kliknutím",
|
||||
"vcmi.adventureOptions.leftButtonDrag.help" : "{Posouvání mapy levým kliknutím}\n\nPosouvání mapy tažením myši se stisknutým levým tlačítkem.",
|
||||
"vcmi.adventureOptions.rightButtonDrag.hover" : "Přetahování pravým tlačítkem",
|
||||
"vcmi.adventureOptions.rightButtonDrag.help" : "{Přetahování pravým tlačítkem}\n\nKdyž je povoleno, pohyb myší se stisknutým pravým tlačítkem bude posouvat pohled na mapě dobrodružství.",
|
||||
"vcmi.adventureOptions.leftButtonDrag.hover" : "Posun levým tlač.",
|
||||
"vcmi.adventureOptions.leftButtonDrag.help" : "{Posun levým tlačítkem}\n\nPosouvání mapy tažením myši se stisknutým levým tlačítkem.",
|
||||
"vcmi.adventureOptions.rightButtonDrag.hover" : "Posun pravým tlač.",
|
||||
"vcmi.adventureOptions.rightButtonDrag.help" : "{Posun pravým tlačítkem}\n\nKdyž je povoleno, pohyb myší se stisknutým pravým tlačítkem bude posouvat pohled na mapě dobrodružství.",
|
||||
"vcmi.adventureOptions.smoothDragging.hover" : "Plynulé posouvání mapy",
|
||||
"vcmi.adventureOptions.smoothDragging.help" : "{Plynulé posouvání mapy}\n\nPokud je tato možnost aktivována, posouvání mapy bude plynulé.",
|
||||
"vcmi.adventureOptions.skipAdventureMapAnimations.hover" : "Přeskočit efekty mizení",
|
||||
@@ -288,8 +288,8 @@
|
||||
"vcmi.battleOptions.showStickyHeroInfoWindows.help": "{Zobrazit okno statistik hrdinů}\n\nTrvale zapne okno statistiky hrdinů, které ukazuje hlavní schopnosti a magickou energii.",
|
||||
"vcmi.battleOptions.skipBattleIntroMusic.hover": "Přeskočit úvodní hudbu",
|
||||
"vcmi.battleOptions.skipBattleIntroMusic.help": "{Přeskočit úvodní hudbu}\n\nPovolí akce při úvodní hudbě přehrávané při začátku každé bitvy.",
|
||||
"vcmi.battleOptions.endWithAutocombat.hover": "Ukončit bitvu",
|
||||
"vcmi.battleOptions.endWithAutocombat.help": "{Ukončit bitvu}\n\nAutomatický boj okamžitě dohraje bitvu do konce.",
|
||||
"vcmi.battleOptions.endWithAutocombat.hover": "Přeskočit bitvu",
|
||||
"vcmi.battleOptions.endWithAutocombat.help": "{Přeskočit bitvu}\n\nAutomatický boj okamžitě dohraje bitvu do konce.",
|
||||
"vcmi.battleOptions.showQuickSpell.hover": "Zobrazit rychlý panel kouzel",
|
||||
"vcmi.battleOptions.showQuickSpell.help": "{Zobrazit rychlý panel kouzel}\n\nZobrazí panel pro rychlý výběr kouzel.",
|
||||
|
||||
@@ -308,7 +308,7 @@
|
||||
"vcmi.battleWindow.damageEstimation.kills" : "%d zahyne",
|
||||
"vcmi.battleWindow.damageEstimation.kills.1" : "%d zahyne",
|
||||
|
||||
"vcmi.battleWindow.damageRetaliation.will" : "Provede odvetu",
|
||||
"vcmi.battleWindow.damageRetaliation.will" : "Provede odvetu ",
|
||||
"vcmi.battleWindow.damageRetaliation.may" : "Může provést odvetu",
|
||||
"vcmi.battleWindow.damageRetaliation.never" : "Neprovede odvetu.",
|
||||
"vcmi.battleWindow.damageRetaliation.damage" : "(%DAMAGE).",
|
||||
@@ -318,7 +318,7 @@
|
||||
"vcmi.battleWindow.accurateShot.resultDescription.0" : "%d %s bylo zabito přesnými zásahy!",
|
||||
"vcmi.battleWindow.accurateShot.resultDescription.1" : "%d %s byl zabit přesným zásahem!",
|
||||
"vcmi.battleWindow.accurateShot.resultDescription.2" : "%d %s bylo zabito přesnými zásahy!",
|
||||
"vcmi.battleWindow.endWithAutocombat" : "Opravdu chcete ukončit bitvu s automatickým bojem?",
|
||||
"vcmi.battleWindow.endWithAutocombat" : "Opravdu chcete dokončit bitvu automatickým bojem?",
|
||||
|
||||
"vcmi.battleResultsWindow.applyResultsLabel" : "Použít výsledek bitvy",
|
||||
|
||||
@@ -344,7 +344,7 @@
|
||||
"vcmi.townStructure.bank.borrow" : "Vstupujete do banky. Bankéř vás spatří a říká: \"Máme pro vás speciální nabídku. Můžete si vzít půjčku 2500 zlata na 5 dní. Každý den budete muset splácet 500 zlata.\"",
|
||||
"vcmi.townStructure.bank.payBack" : "Vstupujete do banky. Bankéř vás spatří a říká: \"Již jste si vzali půjčku. Nejprve ji splaťte, než si vezmete další.\"",
|
||||
|
||||
"vcmi.logicalExpressions.anyOf" : "Něco z následujících:",
|
||||
"vcmi.logicalExpressions.anyOf" : "Nějaké z následujících:",
|
||||
"vcmi.logicalExpressions.allOf" : "Všechny následující:",
|
||||
"vcmi.logicalExpressions.noneOf" : "Žádné z následujících:",
|
||||
|
||||
@@ -381,7 +381,7 @@
|
||||
"vcmi.randomMapTab.widgets.roadTypesLabel" : "Druhy cest",
|
||||
|
||||
"vcmi.optionsTab.turnOptions.hover" : "Možnosti tahu",
|
||||
"vcmi.optionsTab.turnOptions.help" : "Vyberte odpočítávadlo tahů a nastavení souběžných tahů",
|
||||
"vcmi.optionsTab.turnOptions.help" : "Vyberte odpočítávadlo a nastavení souběžných tahů",
|
||||
|
||||
"vcmi.optionsTab.chessFieldBase.hover" : "Základní časovač",
|
||||
"vcmi.optionsTab.chessFieldTurn.hover" : "Časovač tahu",
|
||||
@@ -404,7 +404,7 @@
|
||||
"vcmi.optionsTab.simturnsMax.help" : "Hrát souběžně po určený počet dní nebo do setkání s jiným hráčem",
|
||||
"vcmi.optionsTab.simturnsAI.help" : "{Souběžné tahy AI}\nExperimentální volba. Dovoluje AI hráčům hrát souběžně s lidskými hráči, když jsou souběžné tahy povoleny.",
|
||||
|
||||
"vcmi.optionsTab.turnTime.select" : "Vyberte šablonu nastavení časovače",
|
||||
"vcmi.optionsTab.turnTime.select" : "Šablona nastavení časovače",
|
||||
"vcmi.optionsTab.turnTime.unlimited" : "Neomezený čas tahu",
|
||||
"vcmi.optionsTab.turnTime.classic.1" : "Klasický časovač: 1 minuta",
|
||||
"vcmi.optionsTab.turnTime.classic.2" : "Klasický časovač: 2 minuty",
|
||||
@@ -419,7 +419,7 @@
|
||||
"vcmi.optionsTab.turnTime.chess.2" : "Šachová: 02:00 + 01:00 + 00:15 + 00:00",
|
||||
"vcmi.optionsTab.turnTime.chess.1" : "Šachová: 01:00 + 01:00 + 00:00 + 00:00",
|
||||
|
||||
"vcmi.optionsTab.simturns.select" : "Vyberte šablonu souběžných tahů",
|
||||
"vcmi.optionsTab.simturns.select" : "Šablona souběžných tahů",
|
||||
"vcmi.optionsTab.simturns.none" : "Bez souběžných tahů",
|
||||
"vcmi.optionsTab.simturns.tillContactMax" : "Souběžně: Do setkání",
|
||||
"vcmi.optionsTab.simturns.tillContact1" : "Souběžně: 1 týden, přerušit při setkání",
|
||||
|
@@ -15,6 +15,8 @@
|
||||
"vcmi.adventureMap.monsterLevel" : "\n\nNivå: %LEVEL - Faktion: %TOWN",
|
||||
"vcmi.adventureMap.monsterMeleeType" : "närstrid",
|
||||
"vcmi.adventureMap.monsterRangedType" : "fjärrstrid",
|
||||
"vcmi.adventureMap.search.hover" : "Sök kartobjekt",
|
||||
"vcmi.adventureMap.search.help" : "Välj objekt för att söka på kartan.",
|
||||
|
||||
"vcmi.adventureMap.confirmRestartGame" : "Är du säker på att du vill starta om spelet?",
|
||||
"vcmi.adventureMap.noTownWithMarket" : "Det finns inga tillgängliga marknadsplatser!",
|
||||
@@ -356,8 +358,9 @@
|
||||
"vcmi.heroWindow.sortBackpackBySlot.help" : "Sorterar artefakter i ryggsäcken efter utrustad plats.",
|
||||
"vcmi.heroWindow.sortBackpackByClass.hover" : "Sortera efter klass",
|
||||
"vcmi.heroWindow.sortBackpackByClass.help" : "Sorterar artefakter i ryggsäcken efter artefaktklass (skatt, mindre, större, relik)",
|
||||
"vcmi.heroWindow.fusingArtifact.fusing" : "Du har alla komponenterna som behövs för en sammanslagning av %s. Vill du utföra sammanslagningen? {Alla komponenter kommer att förbrukas vid sammanslagningen.}",
|
||||
|
||||
"vcmi.tavernWindow.inviteHero" : "Bjud in hjälte",
|
||||
"vcmi.tavernWindow.inviteHero" : "Bjud in hjälte",
|
||||
|
||||
"vcmi.commanderWindow.artifactMessage" : "Vill du återlämna denna artefakt till hjälten?",
|
||||
|
||||
@@ -574,7 +577,7 @@
|
||||
"core.bonus.ENEMY_ATTACK_REDUCTION.name" : "Avfärda attack (${val}%)",
|
||||
"core.bonus.ENEMY_ATTACK_REDUCTION.description" : "Ignorerar ${val}% av angriparens attack.",
|
||||
"core.bonus.ENEMY_DEFENCE_REDUCTION.name" : "Förbigå försvar (${val}%)",
|
||||
"core.bonus.ENEMY_DEFENCE_REDUCTION.description" : "Din attack ignorerar ${val}% av fiendens försvar.",
|
||||
"core.bonus.ENEMY_DEFENCE_REDUCTION.description" : "Attacker ignorerar ${val}% av fiendens försvar.",
|
||||
"core.bonus.FIRE_IMMUNITY.name" : "Eld-immunitet",
|
||||
"core.bonus.FIRE_IMMUNITY.description" : "Immun mot alla eldmagi-trollformler.",
|
||||
"core.bonus.FIRE_SHIELD.name" : "Eldsköld (${val}%)",
|
||||
@@ -594,7 +597,7 @@
|
||||
"core.bonus.GARGOYLE.name" : "Stenfigur",
|
||||
"core.bonus.GARGOYLE.description" : "Kan varken upplivas eller läkas.",
|
||||
"core.bonus.GENERAL_DAMAGE_REDUCTION.name" : "Minska skada (${val}%)",
|
||||
"core.bonus.GENERAL_DAMAGE_REDUCTION.description" : "Reducerar skadan från inkommande attacker.",
|
||||
"core.bonus.GENERAL_DAMAGE_REDUCTION.description" : "Reducerar skadan från fiendens attacker.",
|
||||
"core.bonus.HATE.name" : "Hatar: ${subtype.creature}",
|
||||
"core.bonus.HATE.description" : "Gör ${val}% mer skada mot ${subtype.creature}.",
|
||||
"core.bonus.HEALER.name" : "Helare",
|
||||
@@ -644,7 +647,7 @@
|
||||
"core.bonus.REVENGE.name" : "Hämndlysten",
|
||||
"core.bonus.REVENGE.description" : "Vållar mer skada om den själv blivit skadad.",
|
||||
"core.bonus.SHOOTER.name" : "Distans-attack",
|
||||
"core.bonus.SHOOTER.description" : "Varelsen kan skjuta/attackera på avstånd.",
|
||||
"core.bonus.SHOOTER.description" : "Skjuter/attackerar på avstånd.",
|
||||
"core.bonus.SHOOTS_ALL_ADJACENT.name" : "Skjuter alla i närheten",
|
||||
"core.bonus.SHOOTS_ALL_ADJACENT.description" : "Distans-attack drabbar alla inom räckhåll.",
|
||||
"core.bonus.SOUL_STEAL.name" : "Själtjuv",
|
||||
|
@@ -111,7 +111,7 @@ void InputSourceKeyboard::handleEventKeyUp(const SDL_KeyboardEvent & key)
|
||||
if(key.repeat != 0)
|
||||
return; // ignore periodic event resends
|
||||
|
||||
std::string keyName = SDL_GetKeyName(key.keysym.sym);
|
||||
std::string keyName = getKeyNameWithModifiers(SDL_GetKeyName(key.keysym.sym));
|
||||
logGlobal->trace("keyboard: key '%s' released", keyName);
|
||||
|
||||
if (SDL_IsTextInputActive() == SDL_TRUE)
|
||||
|
@@ -99,7 +99,7 @@ CBonusSelection::CBonusSelection()
|
||||
int availableSpace = videoButtonActive ? 225 : 285;
|
||||
mapName = std::make_shared<CLabel>(481, 219, FONT_BIG, ETextAlignment::TOPLEFT, Colors::YELLOW, CSH->mi->getNameTranslated(), availableSpace );
|
||||
labelMapDescription = std::make_shared<CLabel>(481, 253, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::YELLOW, CGI->generaltexth->allTexts[496]);
|
||||
mapDescription = std::make_shared<CTextBox>("", Rect(480, 278, 292, 108), 1);
|
||||
mapDescription = std::make_shared<CTextBox>("", Rect(480, 278, 286, 108), 1);
|
||||
|
||||
labelChooseBonus = std::make_shared<CLabel>(475, 432, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE, CGI->generaltexth->allTexts[71]);
|
||||
groupBonuses = std::make_shared<CToggleGroup>(std::bind(&IServerAPI::setCampaignBonus, CSH, _1));
|
||||
|
@@ -188,7 +188,7 @@ void CLobbyScreen::toggleMode(bool host)
|
||||
return;
|
||||
|
||||
auto buttonColor = host ? Colors::WHITE : Colors::ORANGE;
|
||||
buttonSelect->setTextOverlay(CGI->generaltexth->allTexts[500], FONT_SMALL, buttonColor);
|
||||
buttonSelect->setTextOverlay(" " + CGI->generaltexth->allTexts[500], FONT_SMALL, buttonColor);
|
||||
buttonOptions->setTextOverlay(CGI->generaltexth->allTexts[501], FONT_SMALL, buttonColor);
|
||||
|
||||
if (buttonTurnOptions)
|
||||
@@ -199,7 +199,7 @@ void CLobbyScreen::toggleMode(bool host)
|
||||
|
||||
if(buttonRMG)
|
||||
{
|
||||
buttonRMG->setTextOverlay(CGI->generaltexth->allTexts[740], FONT_SMALL, buttonColor);
|
||||
buttonRMG->setTextOverlay(" " + CGI->generaltexth->allTexts[740], FONT_SMALL, buttonColor);
|
||||
buttonRMG->block(!host);
|
||||
}
|
||||
buttonSelect->block(!host);
|
||||
|
@@ -187,8 +187,8 @@ InfoCard::InfoCard()
|
||||
iconsVictoryCondition = std::make_shared<CAnimImage>(AnimationPath::builtin("SCNRVICT"), 0, 0, 24, 302);
|
||||
iconsLossCondition = std::make_shared<CAnimImage>(AnimationPath::builtin("SCNRLOSS"), 0, 0, 24, 359);
|
||||
|
||||
labelVictoryConditionText = std::make_shared<CLabel>(60, 307, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE);
|
||||
labelLossConditionText = std::make_shared<CLabel>(60, 366, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE);
|
||||
labelVictoryConditionText = std::make_shared<CLabel>(60, 307, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE, "", 290);
|
||||
labelLossConditionText = std::make_shared<CLabel>(60, 366, FONT_SMALL, ETextAlignment::TOPLEFT, Colors::WHITE, "", 290);
|
||||
|
||||
labelDifficulty = std::make_shared<CLabel>(62, 472, FONT_SMALL, ETextAlignment::CENTER, Colors::WHITE);
|
||||
labelDifficultyPercent = std::make_shared<CLabel>(311, 472, FONT_SMALL, ETextAlignment::CENTER, Colors::WHITE);
|
||||
|
@@ -540,7 +540,7 @@ CMultiPlayers::CMultiPlayers(const std::vector<std::string> & playerNames, ESele
|
||||
|
||||
std::string text = CGI->generaltexth->allTexts[446];
|
||||
boost::replace_all(text, "\t", "\n");
|
||||
textTitle = std::make_shared<CTextBox>(text, Rect(25, 20, 315, 50), 0, FONT_BIG, ETextAlignment::CENTER, Colors::WHITE); //HOTSEAT Please enter names
|
||||
textTitle = std::make_shared<CTextBox>(text, Rect(25, 10, 315, 60), 0, FONT_BIG, ETextAlignment::CENTER, Colors::WHITE); //HOTSEAT Please enter names
|
||||
|
||||
for(int i = 0; i < inputNames.size(); i++)
|
||||
{
|
||||
|
@@ -265,7 +265,12 @@ void MusicEntry::load(const AudioPath & musicURI)
|
||||
|
||||
try
|
||||
{
|
||||
auto * musicFile = MakeSDLRWops(CResourceHandler::get()->load(currentName));
|
||||
std::unique_ptr<CInputStream> stream = CResourceHandler::get()->load(currentName);
|
||||
|
||||
if(musicURI.getName() == "BLADEFWCAMPAIGN") // handle defect MP3 file - ffprobe says: Skipping 52 bytes of junk at 0.
|
||||
stream->seek(52);
|
||||
|
||||
auto * musicFile = MakeSDLRWops(std::move(stream));
|
||||
music = Mix_LoadMUS_RW(musicFile, SDL_TRUE);
|
||||
}
|
||||
catch(std::exception & e)
|
||||
|
@@ -199,7 +199,7 @@
|
||||
"dwellingLvl3": { "id" : 32, "requires" : [ "dwellingLvl1" ] },
|
||||
"dwellingLvl4": { "id" : 33, "requires" : [ "dwellingLvl3" ] },
|
||||
"dwellingLvl5": { "id" : 34, "requires" : [ "dwellingLvl3" ] },
|
||||
"dwellingLvl6": { "id" : 35, "requires" : [ "allOf", [ "dwellingLvl3" ], [ "dwellingLvl4" ] ] },
|
||||
"dwellingLvl6": { "id" : 35, "requires" : [ "allOf", [ "dwellingLvl4" ], [ "dwellingLvl5" ] ] },
|
||||
"dwellingLvl7": { "id" : 36, "requires" : [ "allOf", [ "dwellingLvl6" ], [ "mageGuild2" ] ] },
|
||||
|
||||
"dwellingUpLvl1": { "id" : 37, "upgrades" : "dwellingLvl1" },
|
||||
|
@@ -484,7 +484,7 @@ std::vector<ConstTransitivePtr<CGObjectInstance>> CGameInfoCallback::getAllVisit
|
||||
{
|
||||
std::vector<ConstTransitivePtr<CGObjectInstance>> ret;
|
||||
for(auto & obj : gs->map->objects)
|
||||
if(obj->isVisitable() && obj->ID != Obj::EVENT && isVisible(obj))
|
||||
if(obj && obj->isVisitable() && obj->ID != Obj::EVENT && isVisible(obj))
|
||||
ret.push_back(obj);
|
||||
|
||||
return ret;
|
||||
|
Reference in New Issue
Block a user