PointClickEngine::Core::Engine
Inherits Reference < Object
Main game engine class that coordinates all game systems.
Constructors
new(window_width : Int32, window_height : Int32, window_title : String, resource_manager : IResourceLoader | Nil = nil, input_manager : IInputManager | Nil = nil, render_manager : IRenderManager | Nil = nil, skip_singleton : Bool = false)
Creates a new game engine instance with optional DI overrides Use skip_singleton: true for testing to allow multiple engine instances
Class methods
debug_mode
Sourcedebug_mode=(value : Bool)
Sourceinstance=(engine : Engine | Nil)
Sourceinstance?
SourceInstance methods
action_overlay_manager
Sourceaction_overlay_manager=(action_overlay_manager : Actions::ActionOverlayManager)
Sourceactive_game_area_rect
Sourceactive_script_runner
Sourceadd_scene(scene : Scenes::Scene)
Sourceauto_save_timer
Sourceauto_save_timer=(auto_save_timer : Float32)
Sourcechange_scene(scene_name : String, activation_options : SceneManager::ActivationOptions = SceneManager::ActivationOptions.new)
Scene management
change_scene_with_transition(scene_name : String, transition_type : String = "fade", duration : Float32 = 1.0_f32, player_position : RL::Vector2 | Nil = nil, activation_options : SceneManager::ActivationOptions = SceneManager::ActivationOptions.new)
Convenience method for scene transitions
current_frame_context
Sourcedialog_manager
Sourcedisplay_manager
Sourceeffect_manager
Sourceeffect_manager=(effect_manager : Graphics::EffectManager)
Sourceenable_auto_save(interval : Float32)
Sourceengine_ready?
Sourceevent_bus
Sourcefullscreen
Sourcefullscreen=(value : Bool)
Sourcegame_state_manager
Sourcegame_state_manager=(game_state_manager : GameStateManager | Nil)
Sourcegameplay_cursor_active?
Sourcegameplay_input_active?
Sourceglobal_script_runner
Sourcegui
Sourcehotspot_highlight_enabled?
Sourceinput_handler
Sourceinput_manager
Sourceinput_manager=(input_manager : InputManager)
Sourceinventory
Sourceinventory=(inventory : Inventory::InventorySystem)
Sourceitem_registry
Sourceitem_registry=(item_registry : Inventory::ItemRegistry)
Sourceload_game(slot_name : String = "autosave") : Bool
Sourcemodal_ui_active?
Sourceon_update
Sourceon_update=(callback : Proc(Float32, Nil) | Nil)
Sourcepaused?
Sourceplayer=(value : Characters::Character | Nil)
Sourceplayer_control_enabled=(player_control_enabled : Bool)
Player control (disabled during action sequences)
quest_manager
Sourcequest_manager=(quest_manager : QuestManager | Nil)
Sourcereference_height
Sourcereference_height=(reference_height : Int32)
Sourcereference_resolution
Sourcereference_width
Sourcereference_width=(reference_width : Int32)
Sourcerender_manager
Sourcerender_manager=(render_manager : RenderManager)
Sourceresource_manager
Sourceresource_manager=(resource_manager : ResourceManager)
Sourceresume_game
Sourcerunning
Sourcerunning=(running : Bool)
Sourcescene_manager
Sourcescenes
Sourcescript_engine
Sourceset_window_size(width : Int32, height : Int32)
Sourceshader_system
Sourceshow_fps
Sourceshow_fps=(value : Bool)
Sourcestart_game
Sourcesystem_manager=(system_manager : EngineComponents::SystemManager)
Component managers - direct access for users
target_fps
Sourcetarget_fps=(target_fps : Int32)
Sourcetimer_manager
Sourcetimer_manager=(timer_manager : TimerManager)
Sourcetoggle_fullscreen
Sourcetoggle_hotspot_highlight
Sourcetransformed_mouse_position
Sourceverb_input_system
Sourcewindow_height
Sourcewindow_height=(window_height : Int32)
Sourcewindow_title
Sourcewindow_title=(window_title : String)
Source