Plex/server/src/main/java/dev/plex/listener/impl/AdminListener.java

55 lines
1.9 KiB
Java
Raw Normal View History

2021-01-03 07:21:15 +00:00
package dev.plex.listener.impl;
import dev.plex.api.event.AdminAddEvent;
import dev.plex.api.event.AdminRemoveEvent;
import dev.plex.api.event.AdminSetRankEvent;
2022-05-10 05:08:45 +00:00
import dev.plex.cache.DataUtils;
2021-01-03 07:21:15 +00:00
import dev.plex.listener.PlexListener;
import dev.plex.player.PlexPlayer;
import dev.plex.rank.enums.Rank;
2021-06-20 08:02:07 +00:00
import dev.plex.util.PlexUtils;
2021-01-03 07:21:15 +00:00
import org.bukkit.event.EventHandler;
2022-02-25 07:09:55 +00:00
import static dev.plex.util.PlexUtils.messageComponent;
2022-01-04 03:04:39 +00:00
2021-01-03 07:21:15 +00:00
public class AdminListener extends PlexListener
{
@EventHandler
public void onAdminAdd(AdminAddEvent event)
{
String userSender = event.getSender().getName();
2022-05-19 18:59:16 +00:00
PlexPlayer target = (PlexPlayer) event.getPlexPlayer();
2022-04-09 05:26:34 +00:00
if (target.getRankFromString().isAtLeast(Rank.ADMIN))
2022-04-07 07:37:31 +00:00
{
2022-04-09 05:08:18 +00:00
PlexUtils.broadcast(messageComponent("adminReadded", userSender, target.getName(), target.getRankFromString().getReadable()));
}
else
{
2022-04-07 07:37:31 +00:00
target.setRank(Rank.ADMIN.name());
PlexUtils.broadcast(messageComponent("newAdminAdded", userSender, target.getName()));
}
target.setAdminActive(true);
DataUtils.update(target);
2021-01-03 07:21:15 +00:00
}
@EventHandler
public void onAdminRemove(AdminRemoveEvent event)
{
String userSender = event.getSender().getName();
2022-05-19 18:59:16 +00:00
PlexPlayer target = (PlexPlayer) event.getPlexPlayer();
2022-04-07 07:37:31 +00:00
target.setAdminActive(false);
DataUtils.update(target);
2022-02-25 07:09:55 +00:00
PlexUtils.broadcast(messageComponent("adminRemoved", userSender, target.getName()));
2021-01-03 07:21:15 +00:00
}
@EventHandler
public void onAdminSetRank(AdminSetRankEvent event)
{
String userSender = event.getSender().getName();
2022-05-19 18:59:16 +00:00
PlexPlayer target = (PlexPlayer) event.getPlexPlayer();
Rank newRank = (Rank) event.getRank();
target.setRank(newRank.name().toLowerCase());
DataUtils.update(target);
2022-02-25 07:09:55 +00:00
PlexUtils.broadcast(messageComponent("adminSetRank", userSender, target.getName(), newRank.getReadable()));
2021-01-03 07:21:15 +00:00
}
}