Formatting Icons (#10359)

* formatIcons

* Smarter end check

I think it's smarter?

* unecessary

* oop

* Update UI.java

* Just don't check for adjacent colons.

The hasUnicodeStr already checks for validity

* Copy from I18NBundle

* Revert "Copy from I18NBundle"

This reverts commit ac660fcd9f.

* If get and format refer to parent, then just set the existing bundle as parent

* Test with Ground Zero objectives

* Update MBundle.java

* That didn't work

* Slip the method into reasonable places like objectives and chat

* Check for Icons as well

* More testing with objective text

* Apply to hints

* Optimized formatIcons

No longer scans through every character

* TIME UPDATE THE BUNDLES YIPPEEEEEEEEEEE

* residual

* Apply to message blocks

* IntelliJ lied

* Suggestions

* Format before sending
This commit is contained in:
MEEPofFaith
2025-02-08 21:05:43 -08:00
committed by GitHub
parent aaf335d06c
commit e8a4ecc61e
31 changed files with 984 additions and 939 deletions

View File

@@ -1965,80 +1965,80 @@ hint.respawn = Для відродження кораблем натисніть
hint.respawn.mobile = Ви контролюєте одиницю чи структуру. Щоби відродитися як корабель, [accent]торкніться свого аватара вгорі ліворуч.[]
hint.desktopPause = Натисніть [accent][[Пробіл][], щоби зупинити чи продовжити гру.
hint.breaking = Натисніть [accent]ПКМ[] і тягніть, щоби зруйнувати блоки.
hint.breaking.mobile = Активуйте \ue817 [accent]молот[] внизу праворуч і зробіть швидке натискання блоків, щоби їх розібрати.\n\nУтримуйте палець протягом секунди й протягніть, щоби розібрати виділене.
hint.breaking.mobile = Активуйте :hammer: [accent]молот[] внизу праворуч і зробіть швидке натискання блоків, щоби їх розібрати.\n\nУтримуйте палець протягом секунди й протягніть, щоби розібрати виділене.
hint.blockInfo = Подивіться інформацію про блок. Перейдіть до [accent]меню будівництва[] і натисніть на кнопку [accent][[?][] праворуч.
hint.derelict = Будівлі [accent]Переможених[] є зламаними залишками старих баз, що більше не функціонують.\n\nЇх можна [accent]розібрати[] для отримання ресурсів або відбудувати.
hint.research = Використовуйте кнопку \ue875 [accent]Дослідження[] для дослідження нової технології.
hint.research.mobile = Використовуйте \ue875 [accent]Дослідження[] в \ue88c [accent]меню[] для дослідження нової технології.
hint.research = Використовуйте кнопку :tree: [accent]Дослідження[] для дослідження нової технології.
hint.research.mobile = Використовуйте :tree: [accent]Дослідження[] в :menu: [accent]меню[] для дослідження нової технології.
hint.unitControl = Утримуйте [accent][[лівий Ctrl][] і [accent]натисніть[] на одиницю чи башту, щоби контролювати її.
hint.unitControl.mobile = [accent][Зробіть коротке натискання двічі[], щоби контролювати союзні одиниці чи башти.
hint.unitSelectControl = Для керування одиницями увійдіть в [accent]режим командування[], утримуючи [accent]лівий Shift[].\nПеребуваючи в командному режимі, натисніть і протягуйте для вибору одиниць. Натисніть [accent]ПКМ[] на позицію або ціль, щоби віддати наказ одиницям, які там знаходяться.
hint.unitSelectControl.mobile = Для керування одиницями увійдіть в [accent]режим командування[], натиснувши кнопку [accent]командувати[] ліворуч знизу.\nПеребуваючи в командному режимі, зробіть довгий натиск і протягуйте для вибору одиниць. Торкніться позиції або цілі, щоби віддати наказ одиницям, які там знаходяться.
hint.launch = Як тільки буде зібрано достатньо ресурсів, ви зможете зробити [accent]Запуск[] до наступних секторів \ue827 [accent]мапи[] внизу праворуч і перейти на нову локацію..
hint.launch.mobile = Як тільки буде зібрано достатньо ресурсів, ви зможете зробити [accent]Запуск[] за допомогою вибору найближчих секторів з \ue827 [accent]мапи[] у \ue88c [accent]меню[].
hint.launch = Як тільки буде зібрано достатньо ресурсів, ви зможете зробити [accent]Запуск[] до наступних секторів :map: [accent]мапи[] внизу праворуч і перейти на нову локацію..
hint.launch.mobile = Як тільки буде зібрано достатньо ресурсів, ви зможете зробити [accent]Запуск[] за допомогою вибору найближчих секторів з :map: [accent]мапи[] у :menu: [accent]меню[].
hint.schematicSelect = Утримуйте [accent][[F][] і тягніть, щоби вибрати блоки для їхнього подальшого копіювання і вставлення.\n\nНатисніть [accent][[СКМ][], щоби скопіювати певний тип блоку.
hint.rebuildSelect = Утримуючи [accent][[B][], протягніть, щоби вибрати зруйновані проєкти блоків.\nЦе призведе до їхньої автоматичної перебудови.
hint.rebuildSelect.mobile = Натисніть кнопку \ue874 копіювання, потім натисніть кнопку \ue80f перебудови і перетягніть, щоби вибрати знищені проєкти блоків.\nЦе призведе до їхньої автоматичної перебудови.
hint.rebuildSelect.mobile = Натисніть кнопку :copy: копіювання, потім натисніть кнопку :wrench: перебудови і перетягніть, щоби вибрати знищені проєкти блоків.\nЦе призведе до їхньої автоматичної перебудови.
hint.conveyorPathfind = Утримуйте [accent][[лівий Ctrl][], коли тягнете конвеєри, щоб автоматично прокласти шлях.
hint.conveyorPathfind.mobile = Увімкніть \ue844 [accent]діагональний режим[] і тягніть конвеєри, щоб автоматично прокласти шлях.
hint.conveyorPathfind.mobile = Увімкніть :diagonal: [accent]діагональний режим[] і тягніть конвеєри, щоб автоматично прокласти шлях.
hint.boost = Утримуйте [accent][[лівий Shift][], щоби літати над перешкодами поточною одиницею.\n\nЛише декілька наземних одиниць мають цю перевагу.
hint.payloadPickup = Натисніть [accent][[[], щоби підібрати невеличкі блоки чи одиниці.
hint.payloadPickup.mobile = [accent]Натисніть й утримуйте[] невеличкий блок чи одиницю, щоби підібрати їх.
hint.payloadDrop = Натисніть [accent]][], щоби вивантажити вантаж.
hint.payloadDrop.mobile = [accent]Натисніть[] на вільне місце й [accent]утримуйте[], щоби вивантажити туди вантаж.
hint.waveFire = Башта [accent]хвиля[] з водою буде автоматично гасити найближчі пожежі.
hint.generator = \uf879 [accent]Генератори внутрішнього згорання[] спалюють вугілля і передають енергію прилеглим блокам.\n\nРадіус передачі енергії можна збільшити за допомогою \uf87f [accent]силових вузлів[].
hint.guardian = [accent]Вартові[] одиниці броньовані. Слабкі боєприпаси, як-от [accent]мідь[] чи [accent]свинець[], [scarlet]не є ефективними[].\n\nВикористовуйте башти вищого рангу чи \uf835 [accent]графітові боєприпаси[] для Подвійної башти чи\uf859Залпу, щоб убити Вартових.
hint.coreUpgrade = Ядро можна покращити, якщо [accent]розмістити поверх нього ядро вищого рівня[].\n\nРозмістіть \uf868 ядро [accent]«Штаб»[] поверх \uf869 ядра [accent]«Уламок»[]. Переконайтесь, що поблизу ядер немає перешкод (зайвих блоків).
hint.generator = :combustion-generator: [accent]Генератори внутрішнього згорання[] спалюють вугілля і передають енергію прилеглим блокам.\n\nРадіус передачі енергії можна збільшити за допомогою :power-node: [accent]силових вузлів[].
hint.guardian = [accent]Вартові[] одиниці броньовані. Слабкі боєприпаси, як-от [accent]мідь[] чи [accent]свинець[], [scarlet]не є ефективними[].\n\nВикористовуйте башти вищого рангу чи :graphite: [accent]графітові боєприпаси[] для Подвійної башти чи:salvo:Залпу, щоб убити Вартових.
hint.coreUpgrade = Ядро можна покращити, якщо [accent]розмістити поверх нього ядро вищого рівня[].\n\nРозмістіть :core-foundation: ядро [accent]«Штаб»[] поверх :core-shard: ядра [accent]«Уламок»[]. Переконайтесь, що поблизу ядер немає перешкод (зайвих блоків).
hint.presetLaunch = Сірі [accent]сектори зони посадки[], як-от [accent]Крижаний ліс[], можна запустити з будь-якого місця. Вони не вимагають захоплення сусідньої території.\n\n[accent]Нумеровані сектори[], як цей, [accent]необов’язкові[].
hint.presetDifficulty = Цей сектор має [scarlet]високий рівень ворожої загрози[].\nРобити запуск в такі [accent]не рекомендується[] без належних технологій та підготовки.
hint.coreIncinerate = Після того, як ядро наповниться предметом, будь-які додаткові предмети того ж типу, які воно отримує, будуть [accent]спалені[].
hint.factoryControl = Щоб установити [accent]місце виводу[] заводу одиниць, клацніть на неї у режимі командування, потім клацніть ПКМ на місце призначення. \nВироблені нею одиниці автоматично перемістяться туди.
hint.factoryControl.mobile = Щоб установити [accent]місце виводу[] заводу одиниць, швидко натисніть на неї у режимі командування, потім зробіть коротке натискання на місце призначення. \nВироблені нею одиниці автоматично перемістяться туди.
gz.mine = Наблизьтеся до \uf8c4 [accent]мідної руди[] і почніть видобувати її.
gz.mine.mobile = Наблизьтеся до \uf8c4 [accent]мідної руди[] і торкніться її, щоби почати видобуток.
gz.research = Відкрийте \ue875 дерево технологій.\nДослідіть \uf870 [accent]механічний бур[], потім виберіть його з правого нижнього меню.\nНатисніть на мідний клаптик, щоби почати видобуток.
gz.research.mobile = Відкрийте \ue875 дерево технологій.\nДослідіть \uf870 [accent]механічний бур[], потім виберіть його з правого нижнього меню.\nТоркніться до мідного клаптика, щоби розмістити його.\n\nНатисніть на\ue800 [accent]галочку[] праворуч внизу для підтвердження.
gz.conveyors = Дослідіть і розташуйте\uf896 [accent]конвеєри[], щоби переміщувати видобуті ресурси\nвід бурів до ядра.\n\nНатисніть і протягніть для розміщення кількох конвеєрів.\n[accent]Прокручуйте[] для обертання.
gz.conveyors.mobile = Дослідіть і розташуйте \uf896 [accent]конвеєри[], щоби переміщувати видобуті ресурси\nвід бурів до ядра.\n\nУтримуйте свій палець близько секунди протягніть його для розміщення кількох конвеєрів.
gz.mine = Наблизьтеся до :ore-copper: [accent]мідної руди[] і почніть видобувати її.
gz.mine.mobile = Наблизьтеся до :ore-copper: [accent]мідної руди[] і торкніться її, щоби почати видобуток.
gz.research = Відкрийте :tree: дерево технологій.\nДослідіть :mechanical-drill: [accent]механічний бур[], потім виберіть його з правого нижнього меню.\nНатисніть на мідний клаптик, щоби почати видобуток.
gz.research.mobile = Відкрийте :tree: дерево технологій.\nДослідіть :mechanical-drill: [accent]механічний бур[], потім виберіть його з правого нижнього меню.\nТоркніться до мідного клаптика, щоби розмістити його.\n\nНатисніть на\ue800 [accent]галочку[] праворуч внизу для підтвердження.
gz.conveyors = Дослідіть і розташуйте:conveyor: [accent]конвеєри[], щоби переміщувати видобуті ресурси\nвід бурів до ядра.\n\nНатисніть і протягніть для розміщення кількох конвеєрів.\n[accent]Прокручуйте[] для обертання.
gz.conveyors.mobile = Дослідіть і розташуйте :conveyor: [accent]конвеєри[], щоби переміщувати видобуті ресурси\nвід бурів до ядра.\n\nУтримуйте свій палець близько секунди протягніть його для розміщення кількох конвеєрів.
gz.drills = Наростіть видобуток корисних копалин.\nРозмістіть більше механічних бурів.\nВидобудьте 100 міді.
gz.lead = \uf837 [accent]Свинець[] є ще одним часто використовуваним ресурсом.\nУстановіть бури, щоби розпочати видобуток.
gz.moveup = \ue804 Рухайтеся вперед до подальших цілей.
gz.turrets = Дослідіть і розмістіть 2 \uf861 [accent]подвійні[] башти, щоби захистити ядро.\nПодвійні башти потребують \uf838 [accent]боєприпаси[] з конвеєрів.
gz.lead = :lead: [accent]Свинець[] є ще одним часто використовуваним ресурсом.\nУстановіть бури, щоби розпочати видобуток.
gz.moveup = :up: Рухайтеся вперед до подальших цілей.
gz.turrets = Дослідіть і розмістіть 2 :duo: [accent]подвійні[] башти, щоби захистити ядро.\nПодвійні башти потребують \uf838 [accent]боєприпаси[] з конвеєрів.
gz.duoammo = Забезпечте подвійні башти [accent]міддю[], використовуючи конвеєри.
gz.walls = [accent]Стіни[] можуть запобігти потраплянню зустрічних пошкоджень на будівлі\nРозмістіть \uf8ae [accent]мідні стіни[] навколо башт.
gz.walls = [accent]Стіни[] можуть запобігти потраплянню зустрічних пошкоджень на будівлі\nРозмістіть :copper-wall: [accent]мідні стіни[] навколо башт.
gz.defend = Ворог наступає, приготуйтеся до оборони.
gz.aa = Повітряні одиниці не можуть бути легко знищені зі стандартними баштами.\n\uf860 Башта [accent]розсіювач[] забезпечує відмінну протиповітряну оборону, але потребує \uf837 [accent]свинець[] як боєприпас.
gz.scatterammo = Забезпечте башту розсіювач \uf837 [accent]свинцем[], використовуючи конвеєр.
gz.aa = Повітряні одиниці не можуть бути легко знищені зі стандартними баштами.\n:scatter: Башта [accent]розсіювач[] забезпечує відмінну протиповітряну оборону, але потребує :lead: [accent]свинець[] як боєприпас.
gz.scatterammo = Забезпечте башту розсіювач :lead: [accent]свинцем[], використовуючи конвеєр.
gz.supplyturret = [accent]Постачання до башти
gz.zone1 = Це зона висадки ворога.
gz.zone2 = Усе, що побудовано в цьому радіусі, знищується, коли починається хвиля.
gz.zone3 = Зараз почнеться хвиля.\nПриготуйется
gz.finish = Збудуйте більше башт, видобудьте більше ресурсів \nі захистіться проти всіх хвиль, щоби [accent]захопити сектор[].
onset.mine = Натисніть, щоби видобути \uf748 [accent]берилій[]зі стін.\n\nДля переміщення використовуйте [accent][[WASD].
onset.mine.mobile = Торкніться, щоби видобути \uf748 [accent]берилій[]зі стін.
onset.research = Відкрийте \ue875 дерево технологій.\nДослідіть, а потім розмістіть \uf73e [accent]Турбінний кондесатор[] на джерелі (отворі).\nЦе буде генерувати [accent]енергію[].
onset.bore = Дослідіть і розмістіть \uf741 [accent]плазмовий бурильник[].\nВін автоматично видобуває ресурси зі стін.
onset.power = Для підключення [accent]енергії[] до плазмового бурильника, дослідіть і розмістіть \uf73d [accent]променевий вузол[].\nПідєднайте турбінний коденсатор до плазмового бурильника.
onset.ducts = Дослідіть і розмістіть \uf799 [accent]канали[], щоби переміщувати видобуті ресурси від плазмового бурильника до ядра.\nНатисніть і простягніть, щоби розмістити декілька каналів.\n[accent]Прокрутіть[], щоб обернути.
onset.ducts.mobile = Дослідіть і розмістіть \uf799 [accent]канали[], щоби переміщувати видобуті ресурси від плазмового бурильника до ядра.\n\nУтримуйте свій палець близько секунди і простягніть, щоби розмістити декілька каналів.
onset.mine = Натисніть, щоби видобути :beryllium: [accent]берилій[]зі стін.\n\nДля переміщення використовуйте [accent][[WASD].
onset.mine.mobile = Торкніться, щоби видобути :beryllium: [accent]берилій[]зі стін.
onset.research = Відкрийте :tree: дерево технологій.\nДослідіть, а потім розмістіть :turbine-condenser: [accent]Турбінний кондесатор[] на джерелі (отворі).\nЦе буде генерувати [accent]енергію[].
onset.bore = Дослідіть і розмістіть :plasma-bore: [accent]плазмовий бурильник[].\nВін автоматично видобуває ресурси зі стін.
onset.power = Для підключення [accent]енергії[] до плазмового бурильника, дослідіть і розмістіть :beam-node: [accent]променевий вузол[].\nПідєднайте турбінний коденсатор до плазмового бурильника.
onset.ducts = Дослідіть і розмістіть :duct: [accent]канали[], щоби переміщувати видобуті ресурси від плазмового бурильника до ядра.\nНатисніть і простягніть, щоби розмістити декілька каналів.\n[accent]Прокрутіть[], щоб обернути.
onset.ducts.mobile = Дослідіть і розмістіть :duct: [accent]канали[], щоби переміщувати видобуті ресурси від плазмового бурильника до ядра.\n\nУтримуйте свій палець близько секунди і простягніть, щоби розмістити декілька каналів.
onset.moremine = Наростіть видобуток корисних копалин.\nРозмістіть більше плазмових бурильників і використайте променеві вузли та канали для їхнього обслуговування.\nВидобудьте 200 берилію.
onset.graphite = Складніші блоки потребують \uf835 [accent]графіту[].\nУстановіть плазмові бурильники для видобування графіту.
onset.research2 = Почніть дослідження [accent]заводів[].\nДослідіть \uf74d [accent]дробарку скель[] і \uf779 [accent]кремнієву дугову піч[].
onset.arcfurnace = Дугова піч потребує \uf834 [accent]пісок[] і \uf835 [accent]графіт[] задля \uf82f [accent]кремнію[].\n[accent]Енергія[] також потрібна.
onset.crusher = Використайте \uf74d [accent]дробарку скель[], щоби видобути пісок.
onset.fabricator = Використовуйте [accent]одиниць[] для дослідження, захисту будівель та нападу на ворога. Дослідіть і розмістіть \uf6a2 [accent]танкобудівний завод[].
onset.graphite = Складніші блоки потребують :graphite: [accent]графіту[].\nУстановіть плазмові бурильники для видобування графіту.
onset.research2 = Почніть дослідження [accent]заводів[].\nДослідіть :cliff-crusher: [accent]дробарку скель[] і :silicon-arc-furnace: [accent]кремнієву дугову піч[].
onset.arcfurnace = Дугова піч потребує :sand: [accent]пісок[] і :graphite: [accent]графіт[] задля :silicon: [accent]кремнію[].\n[accent]Енергія[] також потрібна.
onset.crusher = Використайте :cliff-crusher: [accent]дробарку скель[], щоби видобути пісок.
onset.fabricator = Використовуйте [accent]одиниць[] для дослідження, захисту будівель та нападу на ворога. Дослідіть і розмістіть :tank-fabricator: [accent]танкобудівний завод[].
onset.makeunit = Виробіть одиницю.\nВикористайте кнопку «?», щоби побачити вимоги для вибраного заводу.
onset.turrets = Одиниці ефективні, але [accent]башти[] забезпечують ліпші оборонні можливості, якщо їх ефективно використовувати.\nУстановіть \uf6eb башту [accent]Прорив[].\nБашти вимагають \uf748 [accent]боєприпасів[].
onset.turrets = Одиниці ефективні, але [accent]башти[] забезпечують ліпші оборонні можливості, якщо їх ефективно використовувати.\nУстановіть :breach: башту [accent]Прорив[].\nБашти вимагають :beryllium: [accent]боєприпасів[].
onset.turretammo = Забезпечте башту [accent]берилієвими боєприпасами[].
onset.walls = [accent]Стіни[] cможе запобігти потраплянню зустрічної шкоди на будівлі.\nРозмістіть декілька \uf6ee [accent]берилієвих стін[] навколо башти.
onset.walls = [accent]Стіни[] cможе запобігти потраплянню зустрічної шкоди на будівлі.\nРозмістіть декілька :beryllium-wall: [accent]берилієвих стін[] навколо башти.
onset.enemies = Ворог наступає, готуйтеся до оборони.
onset.defenses = [accent]Підготуйте захист:[lightgray] {0}
onset.attack = Ворог беззахисний. Контратакуйте.
onset.cores = Нові ядра можуть бути розміщені на плитках [accent]зони ядра[].\nНові ядра функціонують як передові бази й мають спільний інвентар ресурсів з іншими ядрами.\nРозмістіть \uf725 ядро.
onset.cores = Нові ядра можуть бути розміщені на плитках [accent]зони ядра[].\nНові ядра функціонують як передові бази й мають спільний інвентар ресурсів з іншими ядрами.\nРозмістіть :core-bastion: ядро.
onset.detect = Ворог зможе виявити вас за 2 хвилини.\nОрганізуйте оборону, видобуток корисних копалин та виробництво.
#Don't translate these yet!