Files
gymkhana/patches/esc_interpreter_factory.patch

84 lines
4.2 KiB
Diff

diff --git a/addons/escoria-core/game/core-scripts/esc/compiler/esc_interpreter_factory.gd b/addons/escoria-core/game/core-scripts/esc/compiler/esc_interpreter_factory.gd
index 4205f92d..26399e77 100644
--- a/addons/escoria-core/game/core-scripts/esc/compiler/esc_interpreter_factory.gd
+++ b/addons/escoria-core/game/core-scripts/esc/compiler/esc_interpreter_factory.gd
@@ -3,7 +3,7 @@ extends RefCounted
class_name ESCInterpreterFactory
-static var _interpreter: ESCInterpreter = null
+var _interpreter: ESCInterpreter = null
## Produces an interpreter as a singleton.[br]
@@ -15,7 +15,7 @@ static var _interpreter: ESCInterpreter = null
## #### Returns[br]
## [br]
## Returns a `ESCInterpreter` value. (`ESCInterpreter`)
-static func create_interpreter() -> ESCInterpreter:
+func create_interpreter() -> ESCInterpreter:
if not _interpreter:
_interpreter = load("res://addons/escoria-core/game/core-scripts/esc/compiler/esc_interpreter.gd").new(ESCCompiler.load_commands(), ESCCompiler.load_globals())
return _interpreter
@@ -25,7 +25,7 @@ static func create_interpreter() -> ESCInterpreter:
return _interpreter
-static func reset_interpreter() -> void:
+func reset_interpreter() -> void:
if is_instance_valid(_interpreter):
_interpreter.cleanup()
_interpreter = null
diff --git a/addons/escoria-core/game/core-scripts/esc/esc_action_manager.gd b/addons/escoria-core/game/core-scripts/esc/esc_action_manager.gd
index 28d867c3..d9f89017 100644
--- a/addons/escoria-core/game/core-scripts/esc/esc_action_manager.gd
+++ b/addons/escoria-core/game/core-scripts/esc/esc_action_manager.gd
@@ -726,7 +726,7 @@ func _telekinetic_applies_to(event: ESCGrammarStmts.Event) -> bool:
var tk_flag_condition = event.get_flags_with_conditions().get("TK")
if tk_flag_condition:
- var interpreter: ESCInterpreter = ESCInterpreterFactory.create_interpreter()
+ var interpreter: ESCInterpreter = escoria.interpreter_factory.create_interpreter()
var result = interpreter.look_up_global(tk_flag_condition.get_name())
diff --git a/addons/escoria-core/game/core-scripts/esc/esc_compiler.gd b/addons/escoria-core/game/core-scripts/esc/esc_compiler.gd
index c029f476..41536d39 100644
--- a/addons/escoria-core/game/core-scripts/esc/esc_compiler.gd
+++ b/addons/escoria-core/game/core-scripts/esc/esc_compiler.gd
@@ -123,7 +123,7 @@ func _compiler_shim(source: String, filename: String = "", associated_global_id:
# Some static analysis
if not had_error and _run_script_analysis():
- var resolver: ESCResolver = ESCResolver.new(ESCInterpreterFactory.create_interpreter())
+ var resolver: ESCResolver = ESCResolver.new(escoria.interpreter_factory.create_interpreter())
resolver.resolve(parsed_statements)
if not filename.is_empty():
diff --git a/addons/escoria-core/game/core-scripts/esc/esc_event_manager.gd b/addons/escoria-core/game/core-scripts/esc/esc_event_manager.gd
index 78c992a0..6ee5381a 100644
--- a/addons/escoria-core/game/core-scripts/esc/esc_event_manager.gd
+++ b/addons/escoria-core/game/core-scripts/esc/esc_event_manager.gd
@@ -229,7 +229,7 @@ func _process(delta: float) -> void:
#var rc = _running_events[channel_name].run()
#escoria.interpreter.reset()
#var resolver: ESCResolver = ESCResolver.new(escoria.interpreter)
- var interpreter: ESCInterpreter = ESCInterpreterFactory.create_interpreter()
+ var interpreter: ESCInterpreter = escoria.interpreter_factory.create_interpreter()
var resolver: ESCResolver = ESCResolver.new(interpreter)
var event = _running_events[channel_name]
diff --git a/addons/escoria-core/game/core-scripts/esc/types/esc_statement.gd b/addons/escoria-core/game/core-scripts/esc/types/esc_statement.gd
index 1358239c..b91a3661 100644
--- a/addons/escoria-core/game/core-scripts/esc/types/esc_statement.gd
+++ b/addons/escoria-core/game/core-scripts/esc/types/esc_statement.gd
@@ -107,7 +107,7 @@ func is_valid() -> bool:
## Returns a `int` value. (`int`)
func run() -> int:
if parsed_statements.size() > 0:
- var interpreter = ESCInterpreterFactory.create_interpreter()
+ var interpreter = escoria.interpreter_factory.create_interpreter()
var resolver: ESCResolver = ESCResolver.new(interpreter)
resolver.resolve(parsed_statements)