aboutsummaryrefslogtreecommitdiff
path: root/img/class-scripts.puml
diff options
context:
space:
mode:
authorMax-001 <80035972+Max-001@users.noreply.github.com>2024-10-29 17:27:27 +0100
committerMax-001 <80035972+Max-001@users.noreply.github.com>2024-10-29 17:27:27 +0100
commit283aa3cd730856fab4614842c96290f2059d93c0 (patch)
tree7e0c761de01202af167b7c0da66f82c285ed0be9 /img/class-scripts.puml
parenta819194e10c8afd9108fa102f4c105b0556829f2 (diff)
parent0f1e2c876fe550862cb1201bf5cba9dc95707324 (diff)
Merge remote-tracking branch 'origin/master' into max/time
Diffstat (limited to 'img/class-scripts.puml')
-rw-r--r--img/class-scripts.puml48
1 files changed, 48 insertions, 0 deletions
diff --git a/img/class-scripts.puml b/img/class-scripts.puml
new file mode 100644
index 0000000..8fc36c9
--- /dev/null
+++ b/img/class-scripts.puml
@@ -0,0 +1,48 @@
+@startuml
+!include theme.ipuml
+skinparam Linetype ortho
+skinparam Nodesep 75
+skinparam Ranksep 30
+
+class ComponentManager <<irrelevant>>
+
+package api {
+ class Component <<irrelevant>>
+
+ class Script {
+ # init() <<virtual>>
+ # update() <<virtual>>
+ --
+ - Script()
+ }
+
+ class BehaviorScript {
+ # BehaviorScript()
+ + ~BehaviorScript()
+ --
+ + set_script<T>() : this &
+ --
+ # script : Script *
+ }
+
+ BehaviorScript -u-|> Component
+ Script .u.> BehaviorScript
+}
+
+class System <<irrelevant>>
+class ScriptSystem <<Singleton>> {
+ + get_instance() : ScriptSystem & <<static>>
+ + update()
+ --
+ - ScriptSystem()
+ - ~ScriptSystem()
+}
+
+System <|-- ScriptSystem
+ScriptSystem .[norank]> ComponentManager
+
+ScriptSystem .[norank]> api.Script : < friend
+ScriptSystem .[norank]> api.BehaviorScript : < friend
+ComponentManager .[norank]> api.BehaviorScript : < friend
+
+@enduml