11package com.mairwunnx.projectessentials.spawn.commands
22
3+ import com.mairwunnx.projectessentials.cooldown.essentials.CommandsAliases
4+ import com.mairwunnx.projectessentials.core.extensions.isPlayerSender
5+ import com.mairwunnx.projectessentials.core.extensions.sendMsg
6+ import com.mairwunnx.projectessentials.core.helpers.ONLY_PLAYER_CAN
7+ import com.mairwunnx.projectessentials.core.helpers.PERMISSION_LEVEL
38import com.mairwunnx.projectessentials.spawn.EntryPoint
9+ import com.mairwunnx.projectessentials.spawn.EntryPoint.Companion.hasPermission
10+ import com.mairwunnx.projectessentials.spawn.EntryPoint.Companion.modInstance
411import com.mairwunnx.projectessentials.spawn.models.SpawnModelBase
5- import com.mairwunnx.projectessentialscooldown.essentials.CommandsAliases
6- import com.mairwunnx.projectessentialscore.extensions.isPlayerSender
7- import com.mairwunnx.projectessentialscore.extensions.sendMsg
8- import com.mairwunnx.projectessentialscore.helpers.ONLY_PLAYER_CAN
9- import com.mairwunnx.projectessentialscore.helpers.PERMISSION_LEVEL
10- import com.mairwunnx.projectessentialspermissions.permissions.PermissionsAPI
1112import com.mojang.brigadier.CommandDispatcher
1213import com.mojang.brigadier.builder.LiteralArgumentBuilder.literal
1314import com.mojang.brigadier.context.CommandContext
@@ -22,45 +23,31 @@ object SpawnCommand {
2223 private val logger = LogManager .getLogger()
2324
2425 fun register (dispatcher : CommandDispatcher <CommandSource >) {
25- logger.info(" - register \" /spawn\" command ..." )
26+ logger.info(" Register \" /spawn\" command" )
27+ applyCommandAliases()
28+
2629 aliases.forEach { command ->
2730 dispatcher.register(
28- literal<CommandSource >(command).executes {
29- return @executes execute(it)
30- }.then(
31- Commands .literal(" reload" ).executes {
32- return @executes reload(it)
33- }
31+ literal<CommandSource >(command).executes(::execute).then(
32+ Commands .literal(" reload" ).executes(::reload)
3433 ).then(
35- Commands .literal(" save" ).executes {
36- return @executes save(it)
37- }
34+ Commands .literal(" save" ).executes(::save)
3835 ).then(
39- Commands .literal(" version" ).executes {
40- return @executes version(it)
41- }
36+ Commands .literal(" version" ).executes(::version)
4237 )
4338 )
4439 }
45- applyCommandAliases()
4640 }
4741
4842 private fun applyCommandAliases () {
49- try {
50- Class .forName(
51- " com.mairwunnx.projectessentialscooldown.essentials.CommandsAliases"
52- )
53- CommandsAliases .aliases[" spawn" ] = aliases.toMutableList()
54- logger.info(" - applying aliases: $aliases " )
55- } catch (_: ClassNotFoundException ) {
56- // ignored
57- }
43+ if (! EntryPoint .cooldownsInstalled) return
44+ CommandsAliases .aliases[" spawn" ] = aliases.toMutableList()
5845 }
5946
6047 private fun execute (c : CommandContext <CommandSource >): Int {
6148 if (c.isPlayerSender()) {
6249 val playerName = c.source.asPlayer().name.string
63- if (PermissionsAPI . hasPermission(playerName , " ess.spawn" )) {
50+ if (hasPermission(c.source.asPlayer() , " ess.spawn" , 0 )) {
6451 moveToSpawn(c.source.asPlayer())
6552 logger.info(" Executed command \" ${c.input} \" from $playerName " )
6653 sendMsg(" spawn" , c.source, " spawn.success" )
@@ -94,7 +81,7 @@ object SpawnCommand {
9481 private fun reload (c : CommandContext <CommandSource >): Int {
9582 if (c.isPlayerSender()) {
9683 val playerName = c.source.asPlayer().name.string
97- if (! PermissionsAPI . hasPermission(playerName , " ess.spawn.reload" )) {
84+ if (! hasPermission(c.source.asPlayer() , " ess.spawn.reload" )) {
9885 sendMsg(" spawn" , c.source, " spawn.reload.restricted" )
9986 logger.info(
10087 PERMISSION_LEVEL
@@ -119,7 +106,7 @@ object SpawnCommand {
119106 private fun save (c : CommandContext <CommandSource >): Int {
120107 if (c.isPlayerSender()) {
121108 val playerName = c.source.asPlayer().name.string
122- if (! PermissionsAPI . hasPermission(playerName , " ess.spawn.save" )) {
109+ if (! hasPermission(c.source.asPlayer() , " ess.spawn.save" )) {
123110 sendMsg(" spawn" , c.source, " spawn.save.restricted" )
124111 logger.info(
125112 PERMISSION_LEVEL
@@ -143,7 +130,7 @@ object SpawnCommand {
143130 private fun version (c : CommandContext <CommandSource >): Int {
144131 if (c.isPlayerSender()) {
145132 val playerName = c.source.asPlayer().name.string
146- if (! PermissionsAPI . hasPermission(playerName , " ess.spawn.version" )) {
133+ if (! hasPermission(c.source.asPlayer() , " ess.spawn.version" , 3 )) {
147134 sendMsg(" spawn" , c.source, " spawn.version.restricted" )
148135 logger.info(
149136 PERMISSION_LEVEL
@@ -159,23 +146,23 @@ object SpawnCommand {
159146 " spawn" ,
160147 c.source,
161148 " spawn.version.success" ,
162- EntryPoint . modInstance.modName,
163- EntryPoint . modInstance.modVersion,
164- EntryPoint . modInstance.modMaintainer,
165- EntryPoint . modInstance.modTargetForge,
166- EntryPoint . modInstance.modTargetMC,
167- EntryPoint . modInstance.modSources,
168- EntryPoint . modInstance.modTelegram
149+ modInstance.modName,
150+ modInstance.modVersion,
151+ modInstance.modMaintainer,
152+ modInstance.modTargetForge,
153+ modInstance.modTargetMC,
154+ modInstance.modSources,
155+ modInstance.modTelegram
169156 )
170157 logger.info(" Executed command \" ${c.input} \" from $playerName " )
171158 } else {
172- logger.info(" ${EntryPoint . modInstance.modName} " )
173- logger.info(" Version: ${EntryPoint . modInstance.modVersion} " )
174- logger.info(" Maintainer: ${EntryPoint . modInstance.modMaintainer} " )
175- logger.info(" Target Forge version: ${EntryPoint . modInstance.modTargetForge} " )
176- logger.info(" Target Minecraft version: ${EntryPoint . modInstance.modTargetMC} " )
177- logger.info(" Source code: ${EntryPoint . modInstance.modSources} " )
178- logger.info(" Telegram chat: ${EntryPoint . modInstance.modTelegram} " )
159+ logger.info(" ${modInstance.modName} " )
160+ logger.info(" Version: ${modInstance.modVersion} " )
161+ logger.info(" Maintainer: ${modInstance.modMaintainer} " )
162+ logger.info(" Target Forge version: ${modInstance.modTargetForge} " )
163+ logger.info(" Target Minecraft version: ${modInstance.modTargetMC} " )
164+ logger.info(" Source code: ${modInstance.modSources} " )
165+ logger.info(" Telegram chat: ${modInstance.modTelegram} " )
179166 }
180167 return 0
181168 }
0 commit comments