use of gg.projecteden.nexus.models.radio.RadioUser in project Nexus by ProjectEdenGG.
the class RadioHeads method onClickRadio.
@EventHandler
public void onClickRadio(PlayerInteractEvent event) {
if (BearFair21.isNotAtBearFair(event))
return;
if (WorldGuardEditCommand.canWorldGuardEdit(event.getPlayer()))
return;
Block block = event.getClickedBlock();
if (isNullOrAir(block) || !block.getType().equals(Material.PLAYER_HEAD))
return;
Location radioHeadLoc = new Location(BearFair21.getWorld(), 16, 119, -19);
ItemStack item = ItemUtils.getItem(block);
// item.equals(Nexus.getHeadAPI().getItemHead("17150"))
if (item.equals(ItemUtils.getItem(radioHeadLoc.getBlock()))) {
event.setCancelled(true);
RadioUserService userService = new RadioUserService();
RadioUser radioUser = userService.get(event.getPlayer());
Radio radio = radioUser.getServerRadio();
if (radioUser.getVolume() == 100) {
radioUser.setVolume((byte) 25);
userService.save(radioUser);
}
if (radio == null || !radio.getId().equalsIgnoreCase("bearfair"))
PlayerUtils.runCommand(event.getPlayer(), "radio join bearfair");
else if (radio.getId().equalsIgnoreCase("bearfair"))
PlayerUtils.runCommand(event.getPlayer(), "radio leave");
}
}
use of gg.projecteden.nexus.models.radio.RadioUser in project Nexus by ProjectEdenGG.
the class RadioCommand method configSetType.
@Path("config setId <radio> <id>")
@Permission(Group.ADMIN)
void configSetType(Radio radio, String id) {
String oldId = radio.getId();
radio.setId(id);
configService.save(config);
String newId = radio.getId();
userService.clearCache();
List<RadioUser> radioUsers = userService.getAll();
for (RadioUser user : radioUsers) {
if (user.getServerRadioId() != null && user.getServerRadioId().equalsIgnoreCase(oldId))
user.setServerRadioId(newId);
if (user.getLastServerRadioId() != null && user.getLastServerRadioId().equalsIgnoreCase(oldId))
user.setLastServerRadioId(newId);
if (user.getLeftRadiusRadios() != null && user.getLeftRadiusRadios().contains(oldId)) {
user.getLeftRadiusRadios().remove(oldId);
user.getLeftRadiusRadios().add(newId);
}
userService.save(user);
}
send(PREFIX + "Id set to " + radio.getId());
}
use of gg.projecteden.nexus.models.radio.RadioUser in project Nexus by ProjectEdenGG.
the class RadioCommand method debugUser.
@Path("debugUser <player>")
@Permission(Group.ADMIN)
void debugUser(OfflinePlayer player) {
RadioUser user = userService.get(player);
send(PREFIX + "&3User Debug: ");
send("&3Player: &e" + user.getNickname());
send("&3Is Mute: &e" + user.isMute());
send("&3ServerRadioId: &e" + user.getServerRadioId());
send("&3LastServerRadioId: &e" + user.getLastServerRadioId());
send("&3LeftRadiusRadios: &e" + user.getLeftRadiusRadios());
line();
}
use of gg.projecteden.nexus.models.radio.RadioUser in project Nexus by ProjectEdenGG.
the class RadioFeature method onStop.
@Override
public void onStop() {
RadioConfigService configService = new RadioConfigService();
RadioConfig radioConfig = configService.get0();
RadioUserService userService = new RadioUserService();
RadioUser user;
for (Radio radio : radioConfig.getRadios()) {
if (radio.getSongPlayer() != null) {
SongPlayer songPlayer = radio.getSongPlayer();
for (UUID uuid : songPlayer.getPlayerUUIDs()) {
user = userService.get(uuid);
user.setServerRadioId(radio.getId());
userService.save(user);
}
removeSongPlayer(radio.getSongPlayer());
}
}
configService.save(radioConfig);
}
use of gg.projecteden.nexus.models.radio.RadioUser in project Nexus by ProjectEdenGG.
the class Listeners method onPlayerJoin.
@EventHandler
public void onPlayerJoin(PlayerJoinEvent event) {
RadioUserService userService = new RadioUserService();
RadioUser user = userService.get(event.getPlayer());
Radio radio = user.getLastServerRadio();
if (radio != null)
addPlayer(user.getOnlinePlayer(), radio);
user.getLeftRadiusRadios().clear();
}
Aggregations