From 9a970e471114f0544226d4ea7f2f97f956c821e0 Mon Sep 17 00:00:00 2001 From: ricky Date: Sat, 23 May 2026 14:19:05 +0800 Subject: [PATCH] feat: allow no inject dialogue resource into extra_game_states --- addons/dialogue_manager/dialogue_manager.gd | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/dialogue_manager/dialogue_manager.gd b/addons/dialogue_manager/dialogue_manager.gd index bf957196..92f51862 100644 --- a/addons/dialogue_manager/dialogue_manager.gd +++ b/addons/dialogue_manager/dialogue_manager.gd @@ -39,6 +39,9 @@ var include_singletons: bool = true ## Allow dialogue to call static methods/properties on classes var include_classes: bool = true +## Allow dialogue to call methods on [code]DialogueResource[/code] +var include_dialogue_resurce: bool = true + ## A runtime override for the project setting to ignore missing state values. var ignore_missing_state_values: bool = false @@ -122,7 +125,8 @@ func _get_next_dialogue_line(resource: DialogueResource, key: String = "", extra extra_game_states = [autoload] + extra_game_states # Inject "self" into the extra game states. - _inject_state("self", resource, extra_game_states) + if include_dialogue_resurce: + _inject_state("self", resource, extra_game_states) # Get the line data var dialogue_line: DialogueLine = await get_line(resource, key, extra_game_states)