Started work on OverlayPlugin

Started work for OverlayPlugin, class to be inherited by all Plugin
Scripts.
This commit is contained in:
Mario Steele 2026-02-28 02:54:06 -06:00
parent 790695b9b5
commit 580a4725dc
2 changed files with 38 additions and 0 deletions

View file

@ -0,0 +1,37 @@
@abstract
extends Node
class_name OverlayPlugin
#region Internal Variables
var _twitch: TwitcherExtended
var _obs: NoOBSWS
#endregion
func _ready() -> void:
while not TwitcherExtended.instance:
await get_tree().process_frame
_twitch = TwitcherExtended.instance
@abstract func run() -> void
#region Internal Functions
func _get_script_name() -> String:
return self.get_script().get_global_name()
#endregion
func send_notification(message: String) -> void:
EventManager.test_notification(message)
func get_setting(name: String, defval: Variant) -> Variant:
var script_name := _get_script_name()
if not Globals.settings.script_storage.has(script_name):
return defval
if not Globals.settings.script_storage[script_name].has(name):
return defval
return Globals.settings.script_storage[script_name][name]
func set_setting(name: String, value: Variant) -> void:
var script_name := _get_script_name()
if not Globals.settings.script_storage.has(script_name):
Globals.settings.script_storage[script_name] = {}
Globals.settings.script_storage[script_name][name] = value