diff --git a/addons/escoria-core/game/core-scripts/esc/types/esc_command.gd b/addons/escoria-core/game/core-scripts/esc/types/esc_command.gd index 50c9cf41..9311fc98 100644 --- a/addons/escoria-core/game/core-scripts/esc/types/esc_command.gd +++ b/addons/escoria-core/game/core-scripts/esc/types/esc_command.gd @@ -46,7 +46,10 @@ func _init(command_string): parameters.append( parameter ) - elif ':"' in parameter and (parameter.ends_with(':"') or not parameter.ends_with('"')): + elif not quote_open \ + and parameter.count(":") == 1 \ + and ':"' in parameter \ + and (parameter.ends_with(':"') or not parameter.ends_with('"')): # The second clause in this helps to handle dialogue that starts with a space # and also allowing single-word dialogue to be handled in a separate elif. quote_open = true