diff --git a/UML-Diagram.mmd b/UML-Diagram.mmd deleted file mode 100644 index 20f4313..0000000 --- a/UML-Diagram.mmd +++ /dev/null @@ -1,83 +0,0 @@ -classDiagram - %% Main Plugin Class - class InstrumentPlugin { - -instance: InstrumentPlugin - -api: ItemAPI - -manager: InstrumentManager - +onEnable() void - +onDisable() void - +getInstance() InstrumentPlugin - +getApi() ItemAPI - +getManager() InstrumentManager - } - - %% Managers Package - class InstrumentManager { - -plugin: InstrumentPlugin - -api: ItemAPI - +InstrumentManager(plugin, api) - +getInstrument(item: ItemStack) String - +getSoundKey(instrument: String, slot: int, sneaking: boolean) String - +getKeybindMessage(instrument: String) String - +getVolume(instrument: String) double - +getPitch(instrument: String) double - +getAllInstruments() Set~String~ - +getInstrumentItem(instrument: String) ItemStack - } - - %% Commands Package - class InstrumentCommand { - -plugin: InstrumentPlugin - -manager: InstrumentManager - +InstrumentCommand(plugin, manager) - +onCommand(sender, command, label, args) boolean - -handleKeybinds(player: Player) void - +onTabComplete(sender, command, alias, args) List~String~ - } - - %% Listeners Package - class InstrumentListener { - -plugin: InstrumentPlugin - -manager: InstrumentManager - -instrumentTasks: Map~Player,Integer~ - +InstrumentListener(plugin, manager) - +onPlayerHotbarChange(event: PlayerItemHeldEvent) void - -startInstrumentDisplay(player: Player, instrument: String) void - -stopInstrumentDisplay(player: Player) void - } - - %% Bukkit Framework Classes (external) - class JavaPlugin { - <> - } - - class Listener { - <> - } - - class CommandExecutor { - <> - <> - } - - class TabCompleter { - <> - <> - } - - %% Relationships - InstrumentPlugin --|> JavaPlugin - InstrumentPlugin --> InstrumentManager : manages - InstrumentPlugin --> InstrumentCommand : registers - InstrumentPlugin --> InstrumentListener : registers - - InstrumentManager --> InstrumentPlugin : uses - - InstrumentCommand ..|> CommandExecutor - InstrumentCommand ..|> TabCompleter - InstrumentCommand --> InstrumentPlugin : uses - InstrumentCommand --> InstrumentManager : uses - - InstrumentListener ..|> Listener - InstrumentListener --> InstrumentPlugin : uses - InstrumentListener --> InstrumentManager : uses