feat: Implement Change View and Renderer Options menus
- Added functionality to display and navigate the Change View menu in SixelRenderer and SoftwareRenderer. - Introduced methods to draw the Change View and Renderer Options menus, including handling cursor and selection states. - Updated WolfClassicMenuArt to include a customize label for the new menu. - Enhanced WolfMenuScreen to support new menu states. - Created tests for Change View menu interactions, ensuring proper transitions and renderer settings toggling. - Implemented persistence for renderer settings in Flutter, allowing settings to be saved and loaded from a local file. Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
@@ -7,6 +7,7 @@ library;
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:wolf_3d_cli/cli_game_loop.dart';
|
||||
import 'package:wolf_3d_cli/cli_renderer_settings_persistence.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_data_types.dart';
|
||||
import 'package:wolf_3d_dart/wolf_3d_engine.dart';
|
||||
@@ -66,9 +67,14 @@ void main() async {
|
||||
|
||||
engine.init();
|
||||
|
||||
final persistence = CliRendererSettingsPersistence();
|
||||
final WolfRendererSettings? saved = await persistence.load();
|
||||
|
||||
gameLoop = CliGameLoop(
|
||||
engine: engine,
|
||||
onExit: stopAndExit,
|
||||
persistence: persistence,
|
||||
initialSettings: saved,
|
||||
);
|
||||
|
||||
await gameLoop.start();
|
||||
|
||||
Reference in New Issue
Block a user