mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-11-08 22:07:20 +01:00
2.1 KiB
2.1 KiB
Review PR #231 — driveruilayer: Allow to toggle AI driver from the menu
Autor: @dos1 · base: master · 1 plik, +13/−0
https://github.com/MaSzyna-EU07/maszyna/pull/231
Werdykt: Request changes (drobne)
Podsumowanie
Nowe menu „Vehicle” z przełącznikiem „Autopilot”, wysyłające aidriverenable / aidriverdisable przez m_relay. Świetny pomysł dla nowych graczy, mała i czysta zmiana.
Uwagi
- Warunek widoczności jest bardziej restrykcyjny niż klawiatura. Menu jest ukryte, gdy
Global.RealisticControlMode && !DebugModeFlag— zawsze, także gdy gracz siedzi w kabinie. Tymczasemcommand_relay::post()(input/command.cpp ~l. 891) blokuje komendy pojazdu w trybie realistycznym tylko przyFreeFlyModeFlag. Czyli Shift+Q w kabinie działa, a pozycja menu znika. Proponuję warunek zgodny z relay'em:i najlepiejbool const blocked = FreeFlyModeFlag && Global.RealisticControlMode && !DebugModeFlag;ImGui::BeginDisabled(blocked)zamiast ukrywania — gracz widzi, że opcja istnieje. - Skrót w menu.
MenuItemprzyjmuje skrót — warto podać"Shift+Q"/"Q"(domyślne bindy zdriverkeyboardinput.cpp), tak jak robią to pozycje w „Mode windows”. Uwaga: bindy są konfigurowalne, więc albo pobrać aktualny z mapy klawiszy, albo pominąć. - Tłumaczenia.
STR_C("Vehicle")iSTR_C("Autopilot")to nowe klucze — trzeba je dodać dolang/*.pow SVN (w repo jest tylkoeditor_pl.po). Proszę napisać w opisie PR, co dodać do SVN; bez tego gracze PL zobaczą angielskie napisy. Sprawdzić też, czy w innych miejscach UI tryb AI nie nazywa się inaczej (np. „AI driver”) — lepiej trzymać jedną nazwę. - Multiplayer (#173): przy sterowaniu cudzym pojazdem/wspólną sesją przełączanie AI z menu może wymagać dodatkowych warunków — nie blokuje tego PR, ale warto mieć na uwadze.
- Drobne:
auto const *driver—Mechanikto wskaźnik nie-const, aAIControllFlagtylko czytamy, więc OK; Sonar może jednak zgłosić S6004 (zmienna używana tylko w warunku →if (auto const *driver = …; driver && …)).