Skip to content

Улучшения многопользовательского UI ​

Вторая партия портирования из citymania-org/cmclient, реализованная в виде консольных команд (без зависимости от инфраструктуры горячих клавиш/панелей инструментов cmclient, стабильно и скриптуемо).

Закладки позиций (Viewport Locations) ​

Сохранение/восстановление позиции и масштаба основного окна просмотра (9 слотов), удобно для быстрого перемещения между своими фабриками, станциями и территориями противников в многопользовательской игре.

savelocation <1-9>    # Сохранить текущую позицию и масштаб
gotolocation <1-9>    # Перейти к сохранённой позиции

Детализация грузов компании (Company Cargo Details) ​

Статистическое окно, показывающее доставленный объём + доход компании по каждому грузу, с переключением между периодами всего / прошлый месяц.

company_cargo <company_id>    # Открыть окно детализации грузов
  • В окне перечислены объём и доход для каждого стандартного груза + итог внизу (полностью соответствует cmclient)
  • Клик по заголовку «Cargo» переключает между периодами «всего» и «прошлый месяц»
  • Доход по каждому грузу отслеживается через CompanyEconomyEntry::cargo_income (расширение сохранения XSLFI_COMPANY_CARGO_INCOME), сохранение проходит без потерь

Помощь в наблюдении (Watch) ​

Быстрое перемещение наблюдателя к району строительства определённой компании (переход к координатам последнего строения компании).

watch <company_id>    # Переместить окно просмотра к местоположению компании

Пропущенные пункты и причины ​

Функция cmclientОбработка в jrpm
Всплывающий список игроков (cm_client_list_gui)В jgrpp уже есть окно Online Players (NetworkClientList), не дублируем
Подсказки деталей земли (cm_tooltips)LandInfoWindow в jrpm уже покрывает отображение деталей домов/промышленности/станций

Затронутые файлы ​

  • src/jrpm_locations.cpp/.h (новые: закладки позиций + company_cargo + watch консольные команды)
  • src/jrpm_cargo_table.cpp/.h (новые: окно детализации грузов)
  • src/window_type.h (новый WindowClass::CompanyCargos)
  • src/console_cmds.cpp (регистрация команд)
  • src/lang/english.txt (строки STR_JRPM_CARGOS_*)