kimi gone wild
This commit is contained in:
44
lib/odinsea/scripting/supervisor.ex
Normal file
44
lib/odinsea/scripting/supervisor.ex
Normal file
@@ -0,0 +1,44 @@
|
||||
defmodule Odinsea.Scripting.Supervisor do
|
||||
@moduledoc """
|
||||
Supervisor for the Scripting system.
|
||||
|
||||
Manages all scripting-related processes:
|
||||
- Script Manager (base script loading and caching)
|
||||
- NPC Script Manager (NPC conversations)
|
||||
- Portal Script Manager (portal scripts)
|
||||
- Reactor Script Manager (reactor scripts)
|
||||
- Event Script Manager (event/party quest scripts)
|
||||
"""
|
||||
|
||||
use Supervisor
|
||||
|
||||
@doc """
|
||||
Starts the scripting supervisor.
|
||||
"""
|
||||
@spec start_link(keyword()) :: Supervisor.on_start()
|
||||
def start_link(init_arg) do
|
||||
Supervisor.start_link(__MODULE__, init_arg, name: __MODULE__)
|
||||
end
|
||||
|
||||
@impl true
|
||||
def init(_init_arg) do
|
||||
children = [
|
||||
# Base script manager - handles loading and caching
|
||||
Odinsea.Scripting.Manager,
|
||||
|
||||
# NPC Script Manager - handles NPC conversations
|
||||
Odinsea.Scripting.NPCManager,
|
||||
|
||||
# Portal Script Manager - handles scripted portals
|
||||
Odinsea.Scripting.PortalManager,
|
||||
|
||||
# Reactor Script Manager - handles reactor interactions
|
||||
Odinsea.Scripting.ReactorManager,
|
||||
|
||||
# Event Script Manager - handles events and party quests
|
||||
Odinsea.Scripting.EventManager
|
||||
]
|
||||
|
||||
Supervisor.init(children, strategy: :one_for_one)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user