-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathParcelLockersCommand.java
More file actions
41 lines (35 loc) · 1.59 KB
/
ParcelLockersCommand.java
File metadata and controls
41 lines (35 loc) · 1.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package com.eternalcode.parcellockers;
import com.eternalcode.parcellockers.configuration.ConfigurationManager;
import com.eternalcode.parcellockers.configuration.implementation.PluginConfiguration;
import com.eternalcode.parcellockers.notification.NotificationAnnouncer;
import dev.rollczi.litecommands.annotations.async.Async;
import dev.rollczi.litecommands.annotations.command.Command;
import dev.rollczi.litecommands.annotations.context.Context;
import dev.rollczi.litecommands.annotations.execute.Execute;
import dev.rollczi.litecommands.annotations.permission.Permission;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
@Command(name = "parcellockers")
@Permission("parcellockers.admin")
public class ParcelLockersCommand {
private final ConfigurationManager configManager;
private final PluginConfiguration config;
private final NotificationAnnouncer announcer;
public ParcelLockersCommand(ConfigurationManager configManager, PluginConfiguration config, NotificationAnnouncer announcer) {
this.configManager = configManager;
this.config = config;
this.announcer = announcer;
}
@Async
@Execute(name = "reload")
void reload(@Context CommandSender sender) {
this.configManager.reload();
this.announcer.sendMessage(sender, this.config.messages.reload);
}
@Execute(name = "give")
void give(@Context Player player) {
ItemStack parcelItem = this.config.settings.parcelLockerItem.toGuiItem().getItemStack();
player.getInventory().addItem(parcelItem);
}
}