Skip to content

Commit 51cfe3f

Browse files
committed
Checking on availability cooldown and permissions modules added.
Signed-off-by: Pavel Erokhin (MairwunNx) <MairwunNx@gmail.com>
1 parent 235c7c2 commit 51cfe3f

File tree

1 file changed

+31
-0
lines changed
  • src/main/kotlin/com/mairwunnx/projectessentials/spawn

1 file changed

+31
-0
lines changed

src/main/kotlin/com/mairwunnx/projectessentials/spawn/EntryPoint.kt

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.mairwunnx.projectessentials.spawn
22

33
import com.mairwunnx.projectessentials.core.EssBase
4+
import com.mairwunnx.projectessentials.permissions.permissions.PermissionsAPI
45
import com.mairwunnx.projectessentials.spawn.commands.SetSpawnCommand
56
import com.mairwunnx.projectessentials.spawn.commands.SpawnCommand
67
import com.mairwunnx.projectessentials.spawn.models.SpawnModelBase
@@ -63,6 +64,7 @@ class EntryPoint : EssBase() {
6364
private fun registerCommands(
6465
cmdDispatcher: CommandDispatcher<CommandSource>
6566
) {
67+
loadAdditionalModules()
6668
SpawnCommand.register(cmdDispatcher)
6769
SetSpawnCommand.register(cmdDispatcher)
6870
}
@@ -80,7 +82,36 @@ class EntryPoint : EssBase() {
8082
}
8183
}
8284

85+
private fun loadAdditionalModules() {
86+
try {
87+
Class.forName(
88+
"com.mairwunnx.projectessentials.cooldown.essentials.CommandsAliases"
89+
)
90+
cooldownsInstalled = true
91+
} catch (_: ClassNotFoundException) {
92+
// ignored
93+
}
94+
95+
try {
96+
Class.forName(
97+
"com.mairwunnx.projectessentials.permissions.permissions.PermissionsAPI"
98+
)
99+
permissionsInstalled = true
100+
} catch (_: ClassNotFoundException) {
101+
// ignored
102+
}
103+
}
104+
83105
companion object {
84106
lateinit var modInstance: EntryPoint
107+
var cooldownsInstalled: Boolean = false
108+
var permissionsInstalled: Boolean = false
109+
110+
fun hasPermission(player: ServerPlayerEntity, node: String, opLevel: Int = 4): Boolean =
111+
if (permissionsInstalled) {
112+
PermissionsAPI.hasPermission(player.name.string, node)
113+
} else {
114+
player.server.opPermissionLevel >= opLevel
115+
}
85116
}
86117
}

0 commit comments

Comments
 (0)