0x00438EC7
| 199 | |
| 200 | // 0x00438EC7 |
| 201 | static void draw(Ui::Window& window, Gfx::DrawingContext& drawingCtx) |
| 202 | { |
| 203 | auto tr = Gfx::TextRenderer(drawingCtx); |
| 204 | |
| 205 | // Draw widgets. |
| 206 | window.draw(drawingCtx); |
| 207 | |
| 208 | if (!window.widgets[Widx::scenario_list_btn].hidden) |
| 209 | { |
| 210 | int16_t x = window.widgets[Widx::scenario_list_btn].left + window.x; |
| 211 | int16_t y = window.widgets[Widx::scenario_list_btn].top + window.y; |
| 212 | |
| 213 | uint32_t image_id = ImageIds::title_menu_globe_spin_0; |
| 214 | if (Input::isHovering(WindowType::titleMenu, 0, Widx::scenario_list_btn)) |
| 215 | { |
| 216 | image_id = kGlobeSpin[((window.var_846 / 2) % kGlobeSpin.size())]; |
| 217 | } |
| 218 | |
| 219 | drawingCtx.drawImage(x, y, image_id); |
| 220 | drawingCtx.drawImage(x, y, ImageIds::title_menu_sparkle); |
| 221 | } |
| 222 | |
| 223 | if (!window.widgets[Widx::load_game_btn].hidden) |
| 224 | { |
| 225 | int16_t x = window.widgets[Widx::load_game_btn].left + window.x; |
| 226 | int16_t y = window.widgets[Widx::load_game_btn].top + window.y; |
| 227 | |
| 228 | uint32_t image_id = ImageIds::title_menu_globe_spin_0; |
| 229 | if (Input::isHovering(WindowType::titleMenu, 0, Widx::load_game_btn)) |
| 230 | { |
| 231 | image_id = kGlobeSpin[((window.var_846 / 2) % kGlobeSpin.size())]; |
| 232 | } |
| 233 | |
| 234 | drawingCtx.drawImage(x, y, image_id); |
| 235 | drawingCtx.drawImage(x, y, ImageIds::title_menu_save); |
| 236 | } |
| 237 | |
| 238 | if (!window.widgets[Widx::tutorial_btn].hidden) |
| 239 | { |
| 240 | int16_t x = window.widgets[Widx::tutorial_btn].left + window.x; |
| 241 | int16_t y = window.widgets[Widx::tutorial_btn].top + window.y; |
| 242 | |
| 243 | uint32_t image_id = ImageIds::title_menu_globe_spin_0; |
| 244 | if (Input::isHovering(WindowType::titleMenu, 0, Widx::tutorial_btn)) |
| 245 | { |
| 246 | image_id = kGlobeSpin[((window.var_846 / 2) % kGlobeSpin.size())]; |
| 247 | } |
| 248 | |
| 249 | drawingCtx.drawImage(x, y, image_id); |
| 250 | |
| 251 | // TODO: base lesson overlay on language |
| 252 | drawingCtx.drawImage(x, y, ImageIds::title_menu_lesson_l); |
| 253 | } |
| 254 | |
| 255 | if (!window.widgets[Widx::scenario_editor_btn].hidden) |
| 256 | { |
| 257 | int16_t x = window.widgets[Widx::scenario_editor_btn].left + window.x; |
| 258 | int16_t y = window.widgets[Widx::scenario_editor_btn].top + window.y; |
nothing calls this directly
no test coverage detected