mirror of
https://github.com/Zrips/Jobs.git
synced 2025-01-31 04:21:24 +01:00
Prepare for kyori component
This commit is contained in:
parent
4f475888a6
commit
1413662c19
@ -4,7 +4,6 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
@ -133,8 +132,8 @@ public class GuiManager {
|
||||
|
||||
ItemStack guiItem = job.getGuiItem();
|
||||
ItemMeta meta = guiItem.getItemMeta();
|
||||
meta.setDisplayName(job.getNameWithColor());
|
||||
meta.setLore(lore);
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, job.getNameWithColor());
|
||||
Jobs.getInstance().getComplement().setLore(meta, lore);
|
||||
guiItem.setItemMeta(meta);
|
||||
|
||||
int lastPos = job.getGuiSlot() >= 0 ? job.getGuiSlot() : pos;
|
||||
@ -190,7 +189,7 @@ public class GuiManager {
|
||||
}
|
||||
|
||||
public void openJobsBrowseGUI(Player player, Job job, boolean fromCommand) {
|
||||
Inventory tempInv = Bukkit.createInventory(player, 54, "");
|
||||
Inventory tempInv = Jobs.getInstance().getComplement().createInventory(player, 54, "");
|
||||
|
||||
JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player);
|
||||
Boost boost = Jobs.getPlayerManager().getFinalBonus(jPlayer, job);
|
||||
@ -263,8 +262,8 @@ public class GuiManager {
|
||||
continue;
|
||||
|
||||
ItemMeta meta = guiItem.getItemMeta();
|
||||
meta.setDisplayName(job.getNameWithColor());
|
||||
meta.setLore(lore);
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, job.getNameWithColor());
|
||||
Jobs.getInstance().getComplement().setLore(meta, lore);
|
||||
guiItem.setItemMeta(meta);
|
||||
tempInv.setItem(i, guiItem.clone());
|
||||
|
||||
@ -283,8 +282,8 @@ public class GuiManager {
|
||||
}
|
||||
|
||||
ItemMeta meta = guiItem.getItemMeta();
|
||||
meta.setDisplayName(job.getNameWithColor());
|
||||
meta.setLore(lore);
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, job.getNameWithColor());
|
||||
Jobs.getInstance().getComplement().setLore(meta, lore);
|
||||
guiItem.setItemMeta(meta);
|
||||
tempInv.setItem(i, guiItem.clone());
|
||||
i++;
|
||||
@ -315,7 +314,7 @@ public class GuiManager {
|
||||
ItemStack back = Jobs.getGCManager().guiBackButton;
|
||||
ItemMeta meta = back.getItemMeta();
|
||||
|
||||
meta.setDisplayName(Jobs.getLanguage().getMessage("command.info.gui.back"));
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, Jobs.getLanguage().getMessage("command.info.gui.back"));
|
||||
back.setItemMeta(meta);
|
||||
|
||||
gui.addButton(new CMIGuiButton(backButton, back) {
|
||||
@ -330,7 +329,7 @@ public class GuiManager {
|
||||
ItemStack next = Jobs.getGCManager().guiNextButton;
|
||||
ItemMeta meta = next.getItemMeta();
|
||||
|
||||
meta.setDisplayName(Jobs.getLanguage().getMessage("command.info.gui.next"));
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, Jobs.getLanguage().getMessage("command.info.gui.next"));
|
||||
next.setItemMeta(meta);
|
||||
|
||||
gui.addButton(new CMIGuiButton(nextButton, next) {
|
||||
@ -346,7 +345,7 @@ public class GuiManager {
|
||||
}
|
||||
|
||||
private void openJobsBrowseGUI(Player player, Job job, List<ActionType> jobsRemained) {
|
||||
Inventory tempInv = Bukkit.createInventory(player, 54, "");
|
||||
Inventory tempInv = Jobs.getInstance().getComplement().createInventory(player, 54, "");
|
||||
|
||||
JobsPlayer jPlayer = Jobs.getPlayerManager().getJobsPlayer(player);
|
||||
Boost boost = Jobs.getPlayerManager().getFinalBonus(jPlayer, job);
|
||||
@ -414,8 +413,8 @@ public class GuiManager {
|
||||
}
|
||||
|
||||
ItemMeta meta = guiItem.getItemMeta();
|
||||
meta.setDisplayName(job.getNameWithColor());
|
||||
meta.setLore(lore);
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, job.getNameWithColor());
|
||||
Jobs.getInstance().getComplement().setLore(meta, lore);
|
||||
guiItem.setItemMeta(meta);
|
||||
tempInv.setItem(i, guiItem.clone());
|
||||
|
||||
@ -433,8 +432,8 @@ public class GuiManager {
|
||||
}
|
||||
|
||||
ItemMeta meta = guiItem.getItemMeta();
|
||||
meta.setDisplayName(job.getNameWithColor());
|
||||
meta.setLore(lore);
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, job.getNameWithColor());
|
||||
Jobs.getInstance().getComplement().setLore(meta, lore);
|
||||
guiItem.setItemMeta(meta);
|
||||
tempInv.setItem(i, guiItem.clone());
|
||||
i++;
|
||||
@ -465,7 +464,7 @@ public class GuiManager {
|
||||
ItemStack skull = Jobs.getGCManager().guiBackButton;
|
||||
ItemMeta skullMeta = skull.getItemMeta();
|
||||
|
||||
skullMeta.setDisplayName(Jobs.getLanguage().getMessage("command.info.gui.back"));
|
||||
Jobs.getInstance().getComplement().setDisplayName(skullMeta, Jobs.getLanguage().getMessage("command.info.gui.back"));
|
||||
skull.setItemMeta(skullMeta);
|
||||
|
||||
gui.addButton(new CMIGuiButton(backButton, skull) {
|
||||
|
@ -48,8 +48,12 @@ import com.gamingmesh.jobs.listeners.JobsPaymentListener;
|
||||
import com.gamingmesh.jobs.listeners.PistonProtectionListener;
|
||||
import com.gamingmesh.jobs.selection.SelectionManager;
|
||||
import com.gamingmesh.jobs.stuff.*;
|
||||
import com.gamingmesh.jobs.stuff.complement.Complement;
|
||||
import com.gamingmesh.jobs.stuff.complement.Complement1;
|
||||
import com.gamingmesh.jobs.stuff.complement.Complement2;
|
||||
import com.gamingmesh.jobs.tasks.BufferedPaymentThread;
|
||||
import com.gamingmesh.jobs.tasks.DatabaseSaveThread;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.command.CommandSender;
|
||||
@ -72,7 +76,6 @@ public class Jobs extends JavaPlugin {
|
||||
private static Language lManager;
|
||||
private static LanguageManager lmManager;
|
||||
private static SignUtil signManager;
|
||||
private CMIScoreboardManager cmiScoreboardManager;
|
||||
private static ScheduleManager scheduleManager;
|
||||
private static NameTranslatorManager nameTranslatorManager;
|
||||
private static GuiManager guiManager;
|
||||
@ -85,15 +88,18 @@ public class Jobs extends JavaPlugin {
|
||||
private static Loging loging;
|
||||
private static BlockProtectionManager bpManager;
|
||||
private static JobsManager dbManager;
|
||||
private static ConfigManager configManager;
|
||||
private static GeneralConfigManager gConfigManager;
|
||||
private static PistonProtectionListener pistonProtectionListener;
|
||||
private static CMIReflections reflections;
|
||||
private static BufferedEconomy economy;
|
||||
private static PermissionHandler permissionHandler;
|
||||
private static PermissionManager permissionManager;
|
||||
|
||||
private final Set<BlockOwnerShip> blockOwnerShips = new HashSet<>();
|
||||
|
||||
private static PistonProtectionListener pistonProtectionListener;
|
||||
|
||||
private static ConfigManager configManager;
|
||||
private static GeneralConfigManager gConfigManager;
|
||||
|
||||
private static CMIReflections reflections;
|
||||
private CMIScoreboardManager cmiScoreboardManager;
|
||||
private Complement complement;
|
||||
|
||||
private static JobsDAO dao;
|
||||
private static List<Job> jobs;
|
||||
@ -101,10 +107,6 @@ public class Jobs extends JavaPlugin {
|
||||
private static WeakHashMap<Job, Integer> usedSlots = new WeakHashMap<>();
|
||||
private static Map<Integer, Job> jobsIds = new HashMap<>();
|
||||
|
||||
private static BufferedEconomy economy;
|
||||
private static PermissionHandler permissionHandler;
|
||||
private static PermissionManager permissionManager;
|
||||
|
||||
public static BufferedPaymentThread paymentThread;
|
||||
private static DatabaseSaveThread saveTask;
|
||||
|
||||
@ -113,11 +115,14 @@ public class Jobs extends JavaPlugin {
|
||||
private static NMS nms;
|
||||
|
||||
protected static VersionChecker versionCheckManager;
|
||||
|
||||
protected static SelectionManager smanager;
|
||||
|
||||
private static PointsData pointsDatabase;
|
||||
|
||||
public Complement getComplement() {
|
||||
return complement;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the block owner ship for specific {@link CMIMaterial} type.
|
||||
*
|
||||
@ -730,17 +735,25 @@ public class Jobs extends JavaPlugin {
|
||||
getServer().getPluginManager().registerEvents(getPistonProtectionListener(), this);
|
||||
}
|
||||
|
||||
boolean kyoriSupported = false;
|
||||
try {
|
||||
Class.forName("net.kyori.adventure.text.Component");
|
||||
kyoriSupported = true;
|
||||
} catch (ClassNotFoundException e) {
|
||||
}
|
||||
|
||||
complement = (Version.isCurrentEqualOrHigher(Version.v1_16_R3) && kyoriSupported) ? new Complement2()
|
||||
: new Complement1();
|
||||
|
||||
// register economy
|
||||
Bukkit.getScheduler().runTask(this, new HookEconomyTask(this));
|
||||
|
||||
dao.loadBlockProtection();
|
||||
getExplore().load();
|
||||
getCommandManager().fillCommands();
|
||||
getDBManager().getDB().triggerTableIdUpdate();
|
||||
|
||||
consoleMsg("&e[Jobs] Plugin has been enabled successfully.");
|
||||
|
||||
getCommandManager().fillCommands();
|
||||
|
||||
getDBManager().getDB().triggerTableIdUpdate();
|
||||
} catch (Throwable e) {
|
||||
e.printStackTrace();
|
||||
System.out.println("There was some issues when starting plugin. Please contact dev about this. Plugin will be disabled.");
|
||||
|
@ -633,7 +633,7 @@ public class PlayerManager {
|
||||
String message = Jobs.getLanguage().getMessage("message.leveldown.message");
|
||||
|
||||
message = message.replace("%jobname%", job.getNameWithColor());
|
||||
message = message.replace("%playername%", player != null ? player.getDisplayName() : jPlayer.getName());
|
||||
message = message.replace("%playername%", player != null ? Jobs.getInstance().getComplement().getDisplayName(player) : jPlayer.getName());
|
||||
message = message.replace("%joblevel%", "" + prog.getLevel());
|
||||
message = message.replace("%lostLevel%", "" + oldLevel);
|
||||
|
||||
@ -786,13 +786,13 @@ public class PlayerManager {
|
||||
message = message.replace("%titlename%", levelUpEvent.getOldTitle()
|
||||
.getChatColor().toString() + levelUpEvent.getOldTitle().getName());
|
||||
|
||||
message = message.replace("%playername%", player != null ? player.getDisplayName() : jPlayer.getName());
|
||||
message = message.replace("%playername%", player != null ? Jobs.getInstance().getComplement().getDisplayName(player) : jPlayer.getName());
|
||||
message = message.replace("%joblevel%", "" + prog.getLevel());
|
||||
|
||||
for (String line : message.split("\n")) {
|
||||
if (Jobs.getGCManager().isBroadcastingLevelups()) {
|
||||
if (Jobs.getGCManager().BroadcastingLevelUpLevels.contains(oldLevel + 1) || Jobs.getGCManager().BroadcastingLevelUpLevels.contains(0))
|
||||
Bukkit.getServer().broadcastMessage(line);
|
||||
Jobs.getInstance().getComplement().broadcastMessage(line);
|
||||
} else if (player != null) {
|
||||
if (Jobs.getGCManager().LevelChangeActionBar)
|
||||
ActionBarManager.send(player, line);
|
||||
@ -817,14 +817,14 @@ public class PlayerManager {
|
||||
message = Jobs.getLanguage().getMessage("message.skillup." + (Jobs.getGCManager().isBroadcastingSkillups()
|
||||
? "broadcast" : "nobroadcast"));
|
||||
|
||||
message = message.replace("%playername%", player != null ? player.getDisplayName() : jPlayer.getName());
|
||||
message = message.replace("%playername%", player != null ? Jobs.getInstance().getComplement().getDisplayName(player) : jPlayer.getName());
|
||||
message = message.replace("%titlename%", levelUpEvent.getNewTitle()
|
||||
.getChatColor().toString() + levelUpEvent.getNewTitle().getName());
|
||||
message = message.replace("%jobname%", job.getNameWithColor());
|
||||
|
||||
for (String line : message.split("\n")) {
|
||||
if (Jobs.getGCManager().isBroadcastingSkillups()) {
|
||||
Bukkit.getServer().broadcastMessage(line);
|
||||
Jobs.getInstance().getComplement().broadcastMessage(line);
|
||||
} else if (player != null) {
|
||||
if (Jobs.getGCManager().TitleChangeActionBar)
|
||||
ActionBarManager.send(player, line);
|
||||
|
@ -225,7 +225,7 @@ public class SignUtil {
|
||||
if (!jSign.isSpecial()) {
|
||||
for (int i = 0; i < 4; i++) {
|
||||
if (i + number >= playerList.size()) {
|
||||
sign.setLine(i, "");
|
||||
Jobs.getInstance().getComplement().setLine(sign, i, "");
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -250,7 +250,7 @@ public class SignUtil {
|
||||
}
|
||||
|
||||
if (!line.isEmpty())
|
||||
sign.setLine(i, line);
|
||||
Jobs.getInstance().getComplement().setLine(sign, i, line);
|
||||
}
|
||||
sign.update();
|
||||
if (!UpdateHead(sign, playerList.get(0).getPlayerInfo().getName(), timelapse)) {
|
||||
@ -267,22 +267,22 @@ public class SignUtil {
|
||||
}
|
||||
|
||||
int no = jSign.getNumber() + number + 1;
|
||||
sign.setLine(0, translateSignLine("signs.SpecialList.p" + jSign.getNumber(), no, playerName, pl.getLevel(), signJobName));
|
||||
sign.setLine(1, translateSignLine("signs.SpecialList.name", no, playerName, pl.getLevel(), signJobName));
|
||||
Jobs.getInstance().getComplement().setLine(sign, 0, translateSignLine("signs.SpecialList.p" + jSign.getNumber(), no, playerName, pl.getLevel(), signJobName));
|
||||
Jobs.getInstance().getComplement().setLine(sign, 1, translateSignLine("signs.SpecialList.name", no, playerName, pl.getLevel(), signJobName));
|
||||
|
||||
switch (type) {
|
||||
case toplist:
|
||||
case gtoplist:
|
||||
sign.setLine(2, Jobs.getLanguage().getMessage("signs.SpecialList.level", "[number]", no, "[player]", playerName, "[level]", pl.getLevel(), "[job]", signJobName));
|
||||
Jobs.getInstance().getComplement().setLine(sign, 2, Jobs.getLanguage().getMessage("signs.SpecialList.level", "[number]", no, "[player]", playerName, "[level]", pl.getLevel(), "[job]", signJobName));
|
||||
break;
|
||||
case questtoplist:
|
||||
sign.setLine(2, Jobs.getLanguage().getMessage("signs.SpecialList.quests", "[number]", no, "[player]", playerName, "[quests]", pl.getLevel(), "[job]", signJobName));
|
||||
Jobs.getInstance().getComplement().setLine(sign, 2, Jobs.getLanguage().getMessage("signs.SpecialList.quests", "[number]", no, "[player]", playerName, "[quests]", pl.getLevel(), "[job]", signJobName));
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
sign.setLine(3, translateSignLine("signs.SpecialList.bottom", no, playerName, pl.getLevel(), signJobName));
|
||||
Jobs.getInstance().getComplement().setLine(sign, 3, translateSignLine("signs.SpecialList.bottom", no, playerName, pl.getLevel(), signJobName));
|
||||
sign.update();
|
||||
if (!UpdateHead(sign, pl.getPlayerInfo().getName(), timelapse)) {
|
||||
timelapse--;
|
||||
|
@ -69,7 +69,7 @@ public class ScheduleManager {
|
||||
|
||||
if (one.isStarted() && one.getBroadcastInfoOn() < System.currentTimeMillis() && one.getBroadcastInterval() > 0) {
|
||||
one.setBroadcastInfoOn(System.currentTimeMillis() + one.getBroadcastInterval() * 60 * 1000);
|
||||
one.getMessageToBroadcast().forEach(Bukkit::broadcastMessage);
|
||||
Jobs.getInstance().getComplement().broadcastMessage(one.getMessageToBroadcast());
|
||||
}
|
||||
|
||||
if (((one.isNextDay() && (Current >= From && Current < Until || Current >= one.getNextFrom() && Current < one.getNextUntil()) && !one
|
||||
@ -84,9 +84,9 @@ public class ScheduleManager {
|
||||
|
||||
if (one.isBroadcastOnStart())
|
||||
if (one.getMessageOnStart().isEmpty())
|
||||
Bukkit.broadcastMessage(Jobs.getLanguage().getMessage("message.boostStarted"));
|
||||
Jobs.getInstance().getComplement().broadcastMessage(Jobs.getLanguage().getMessage("message.boostStarted"));
|
||||
else
|
||||
one.getMessageOnStart().forEach(Bukkit::broadcastMessage);
|
||||
Jobs.getInstance().getComplement().broadcastMessage(one.getMessageOnStart());
|
||||
|
||||
for (Job onejob : one.getJobs()) {
|
||||
onejob.setBoost(one.getBoost());
|
||||
@ -107,9 +107,9 @@ public class ScheduleManager {
|
||||
|
||||
if (one.isBroadcastOnStop())
|
||||
if (one.getMessageOnStop().isEmpty())
|
||||
Bukkit.broadcastMessage(Jobs.getLanguage().getMessage("message.boostStoped"));
|
||||
Jobs.getInstance().getComplement().broadcastMessage(Jobs.getLanguage().getMessage("message.boostStoped"));
|
||||
else
|
||||
one.getMessageOnStop().forEach(Bukkit::broadcastMessage);
|
||||
Jobs.getInstance().getComplement().broadcastMessage(one.getMessageOnStop());
|
||||
|
||||
for (Job onejob : one.getJobs()) {
|
||||
onejob.setBoost(new BoostMultiplier());
|
||||
|
@ -28,6 +28,7 @@ import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
import com.gamingmesh.jobs.Jobs;
|
||||
import com.gamingmesh.jobs.CMILib.CMIChatColor;
|
||||
import com.gamingmesh.jobs.CMILib.CMIMaterial;
|
||||
|
||||
@ -70,8 +71,8 @@ public class JobLimitedItems {
|
||||
return item;
|
||||
}
|
||||
|
||||
if (this.name != null)
|
||||
meta.setDisplayName(CMIChatColor.translate(name));
|
||||
if (name != null)
|
||||
Jobs.getInstance().getComplement().setDisplayName(meta, CMIChatColor.translate(name));
|
||||
|
||||
if (lore != null && !lore.isEmpty()) {
|
||||
List<String> translatedLore = new ArrayList<>();
|
||||
@ -79,7 +80,7 @@ public class JobLimitedItems {
|
||||
translatedLore.add(CMIChatColor.translate(oneLore.replace("[player]", player.getName())));
|
||||
}
|
||||
|
||||
meta.setLore(translatedLore);
|
||||
Jobs.getInstance().getComplement().setLore(meta, translatedLore);
|
||||
}
|
||||
|
||||
if (enchants != null)
|
||||
|
@ -215,12 +215,12 @@ public class JobsListener implements Listener {
|
||||
return;
|
||||
|
||||
Sign sign = (Sign) block.getState();
|
||||
String FirstLine = sign.getLine(0);
|
||||
String FirstLine = Jobs.getInstance().getComplement().getLine(sign, 0);
|
||||
|
||||
if (!CMIChatColor.stripColor(FirstLine).equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline"))))
|
||||
return;
|
||||
|
||||
String command = CMIChatColor.stripColor(sign.getLine(1));
|
||||
String command = CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(sign, 1));
|
||||
for (String key : Jobs.getGCManager().keys) {
|
||||
if (command.equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.secondline." + key)))) {
|
||||
command = key;
|
||||
@ -228,7 +228,8 @@ public class JobsListener implements Listener {
|
||||
}
|
||||
}
|
||||
|
||||
player.performCommand("jobs " + command + " " + CMIChatColor.stripColor(sign.getLine(2)) + " " + CMIChatColor.stripColor(sign.getLine(3)));
|
||||
player.performCommand("jobs " + command + " " + CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(sign, 2))
|
||||
+ " " + CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(sign, 3)));
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.LOW, ignoreCancelled = true)
|
||||
@ -242,7 +243,7 @@ public class JobsListener implements Listener {
|
||||
|
||||
Player player = event.getPlayer();
|
||||
Sign sign = (Sign) block.getState();
|
||||
String firstLine = sign.getLine(0);
|
||||
String firstLine = Jobs.getInstance().getComplement().getLine(sign, 0);
|
||||
if (firstLine.contains(Jobs.getLanguage().getMessage("signs.topline")) && !player.hasPermission("jobs.command.signs")) {
|
||||
event.setCancelled(true);
|
||||
player.sendMessage(Jobs.getLanguage().getMessage("signs.cantdestroy"));
|
||||
@ -274,10 +275,10 @@ public class JobsListener implements Listener {
|
||||
|
||||
Sign sign = (Sign) block.getState();
|
||||
|
||||
if (!CMIChatColor.stripColor(event.getLine(0)).equalsIgnoreCase("[Jobs]"))
|
||||
if (!CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(event, 0)).equalsIgnoreCase("[Jobs]"))
|
||||
return;
|
||||
|
||||
final SignTopType type = SignTopType.getType(CMIChatColor.stripColor(event.getLine(1)));
|
||||
final SignTopType type = SignTopType.getType(CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(event, 1)));
|
||||
if (type == null)
|
||||
return;
|
||||
|
||||
@ -288,7 +289,7 @@ public class JobsListener implements Listener {
|
||||
return;
|
||||
}
|
||||
|
||||
String jobname = CMIChatColor.stripColor(event.getLine(2)).toLowerCase();
|
||||
String jobname = CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(sign, 2)).toLowerCase();
|
||||
final Job job = Jobs.getJob(jobname);
|
||||
if (type == SignTopType.toplist && job == null) {
|
||||
player.sendMessage(Jobs.getLanguage().getMessage("command.top.error.nojob"));
|
||||
@ -296,7 +297,7 @@ public class JobsListener implements Listener {
|
||||
}
|
||||
|
||||
boolean special = false;
|
||||
String numberString = CMIChatColor.stripColor(event.getLine(3)).toLowerCase();
|
||||
String numberString = CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(sign, 3)).toLowerCase();
|
||||
if (numberString.contains("s")) {
|
||||
numberString = numberString.replace("s", "");
|
||||
special = true;
|
||||
@ -334,10 +335,11 @@ public class JobsListener implements Listener {
|
||||
if (!Jobs.getGCManager().SignsEnabled)
|
||||
return;
|
||||
|
||||
if (CMIChatColor.stripColor(event.getLine(0)).equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline"))) && !CMIChatColor.stripColor(event
|
||||
.getLine(1))
|
||||
if (CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(event, 0))
|
||||
.equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.topline"))) && !CMIChatColor.stripColor(
|
||||
Jobs.getInstance().getComplement().getLine(event, 1))
|
||||
.equalsIgnoreCase("toplist"))
|
||||
event.setLine(0, convert(Jobs.getLanguage().getMessage("signs.topline")));
|
||||
Jobs.getInstance().getComplement().setLine(event, 0, convert(Jobs.getLanguage().getMessage("signs.topline")));
|
||||
else
|
||||
return;
|
||||
|
||||
@ -347,20 +349,20 @@ public class JobsListener implements Listener {
|
||||
return;
|
||||
}
|
||||
|
||||
String command = CMIChatColor.stripColor(event.getLine(1)).toLowerCase();
|
||||
String command = CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(event, 1)).toLowerCase();
|
||||
for (String key : Jobs.getGCManager().keys) {
|
||||
if (command.equalsIgnoreCase(CMIChatColor.stripColor(Jobs.getLanguage().getMessage("signs.secondline." + key)))) {
|
||||
event.setLine(1, convert(Jobs.getLanguage().getMessage("signs.secondline." + key)));
|
||||
Jobs.getInstance().getComplement().setLine(event, 1, convert(Jobs.getLanguage().getMessage("signs.secondline." + key)));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Job job = Jobs.getJob(CMIChatColor.stripColor(event.getLine(2)));
|
||||
Job job = Jobs.getJob(CMIChatColor.stripColor(Jobs.getInstance().getComplement().getLine(event, 2)));
|
||||
if (job == null)
|
||||
return;
|
||||
|
||||
String color = Jobs.getGCManager().SignsColorizeJobName ? job.getChatColor().toString() : "";
|
||||
event.setLine(2, convert(color + job.getName()));
|
||||
Jobs.getInstance().getComplement().setLine(event, 2, convert(color + job.getName()));
|
||||
}
|
||||
|
||||
private String convert(String line) {
|
||||
@ -454,9 +456,9 @@ public class JobsListener implements Listener {
|
||||
if (iih.hasItemMeta()) {
|
||||
ItemMeta meta = iih.getItemMeta();
|
||||
if (meta.hasDisplayName())
|
||||
name = meta.getDisplayName();
|
||||
name = Jobs.getInstance().getComplement().getDisplayName(meta);
|
||||
if (meta.hasLore())
|
||||
lore = meta.getLore();
|
||||
lore = Jobs.getInstance().getComplement().getLore(meta);
|
||||
}
|
||||
|
||||
String meinOk = null;
|
||||
|
@ -180,8 +180,8 @@ public class JobsPaymentListener implements Listener {
|
||||
ItemStack currentItem = event.getCurrentItem();
|
||||
|
||||
if (resultStack.hasItemMeta() && resultStack.getItemMeta().hasDisplayName()) {
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(resultStack.getItemMeta()
|
||||
.getDisplayName()), ActionType.VTRADE));
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(Jobs.getInstance()
|
||||
.getComplement().getDisplayName(resultStack.getItemMeta())), ActionType.VTRADE));
|
||||
} else if (currentItem != null) {
|
||||
Jobs.action(jPlayer, new ItemActionInfo(currentItem, ActionType.VTRADE));
|
||||
}
|
||||
@ -203,7 +203,8 @@ public class JobsPaymentListener implements Listener {
|
||||
while (newItemsCount >= 1) {
|
||||
newItemsCount--;
|
||||
if (resultStack.hasItemMeta() && resultStack.getItemMeta().hasDisplayName())
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(resultStack.getItemMeta().getDisplayName()), ActionType.VTRADE));
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(Jobs.getInstance()
|
||||
.getComplement().getDisplayName(resultStack.getItemMeta())), ActionType.VTRADE));
|
||||
else
|
||||
Jobs.action(jPlayer, new ItemActionInfo(resultStack, ActionType.VTRADE));
|
||||
}
|
||||
@ -703,8 +704,8 @@ public class JobsPaymentListener implements Listener {
|
||||
PotionMeta potion = (PotionMeta) currentItem.getItemMeta();
|
||||
Jobs.action(jPlayer, new PotionItemActionInfo(currentItem, ActionType.CRAFT, potion.getBasePotionData().getType()));
|
||||
} else if (resultStack.hasItemMeta() && resultStack.getItemMeta().hasDisplayName()) {
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(resultStack.getItemMeta()
|
||||
.getDisplayName()), ActionType.CRAFT));
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(Jobs.getInstance()
|
||||
.getComplement().getDisplayName(resultStack.getItemMeta())), ActionType.CRAFT));
|
||||
} else if (currentItem != null) {
|
||||
Jobs.action(jPlayer, new ItemActionInfo(currentItem, ActionType.CRAFT));
|
||||
}
|
||||
@ -726,7 +727,8 @@ public class JobsPaymentListener implements Listener {
|
||||
while (newItemsCount >= 1) {
|
||||
newItemsCount--;
|
||||
if (resultStack.hasItemMeta() && resultStack.getItemMeta().hasDisplayName())
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(resultStack.getItemMeta().getDisplayName()), ActionType.CRAFT));
|
||||
Jobs.action(jPlayer, new ItemNameActionInfo(CMIChatColor.stripColor(Jobs.getInstance()
|
||||
.getComplement().getDisplayName(resultStack.getItemMeta())), ActionType.CRAFT));
|
||||
else
|
||||
Jobs.action(jPlayer, new ItemActionInfo(resultStack, ActionType.CRAFT));
|
||||
}
|
||||
@ -855,10 +857,10 @@ public class JobsPaymentListener implements Listener {
|
||||
String originalName = null;
|
||||
String newName = null;
|
||||
if (firstSlot.hasItemMeta())
|
||||
originalName = firstSlot.getItemMeta().getDisplayName();
|
||||
originalName = Jobs.getInstance().getComplement().getDisplayName(firstSlot.getItemMeta());
|
||||
|
||||
if (resultStack.hasItemMeta())
|
||||
newName = resultStack.getItemMeta().getDisplayName();
|
||||
newName = Jobs.getInstance().getComplement().getDisplayName(resultStack.getItemMeta());
|
||||
|
||||
if (originalName != null && !originalName.equals(newName) && inv.getItem(1) == null && !Jobs.getGCManager().PayForRenaming)
|
||||
return;
|
||||
|
@ -11,6 +11,7 @@ import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.EnchantmentStorageMeta;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
import com.gamingmesh.jobs.Jobs;
|
||||
import com.gamingmesh.jobs.CMILib.CMIChatColor;
|
||||
import com.gamingmesh.jobs.CMILib.CMIMaterial;
|
||||
|
||||
@ -19,34 +20,34 @@ public class GiveItem {
|
||||
HashMap<Enchantment, Integer> enchants) {
|
||||
ItemStack itemStack = CMIMaterial.get(id, meta).newItemStack();
|
||||
itemStack.setAmount(qty);
|
||||
ItemMeta ItemMeta = itemStack.getItemMeta();
|
||||
ItemMeta itemMeta = itemStack.getItemMeta();
|
||||
|
||||
if (lore != null && !lore.isEmpty()) {
|
||||
List<String> TranslatedLore = new ArrayList<>();
|
||||
List<String> translatedLore = new ArrayList<>();
|
||||
for (String oneLore : lore) {
|
||||
TranslatedLore.add(CMIChatColor.translate(oneLore.replace("[player]", player.getName())));
|
||||
translatedLore.add(CMIChatColor.translate(oneLore.replace("[player]", player.getName())));
|
||||
}
|
||||
|
||||
ItemMeta.setLore(TranslatedLore);
|
||||
Jobs.getInstance().getComplement().setLore(itemMeta, translatedLore);
|
||||
}
|
||||
|
||||
if (enchants != null) {
|
||||
if (itemStack.getType() == CMIMaterial.ENCHANTED_BOOK.getMaterial()) {
|
||||
EnchantmentStorageMeta bookMeta = (EnchantmentStorageMeta) ItemMeta;
|
||||
EnchantmentStorageMeta bookMeta = (EnchantmentStorageMeta) itemMeta;
|
||||
for (Entry<Enchantment, Integer> oneEnch : enchants.entrySet()) {
|
||||
bookMeta.addStoredEnchant(oneEnch.getKey(), oneEnch.getValue(), true);
|
||||
}
|
||||
} else {
|
||||
for (Entry<Enchantment, Integer> OneEnchant : enchants.entrySet()) {
|
||||
ItemMeta.addEnchant(OneEnchant.getKey(), OneEnchant.getValue(), true);
|
||||
itemMeta.addEnchant(OneEnchant.getKey(), OneEnchant.getValue(), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (name != null)
|
||||
ItemMeta.setDisplayName(CMIChatColor.translate(name));
|
||||
Jobs.getInstance().getComplement().setDisplayName(itemMeta, CMIChatColor.translate(name));
|
||||
|
||||
itemStack.setItemMeta(ItemMeta);
|
||||
itemStack.setItemMeta(itemMeta);
|
||||
GiveItemForPlayer(player, itemStack);
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,47 @@
|
||||
package com.gamingmesh.jobs.stuff.complement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
public interface Complement {
|
||||
|
||||
String getDisplayName(ItemMeta meta);
|
||||
|
||||
String getDisplayName(Player player);
|
||||
|
||||
String getLine(SignChangeEvent event, int line);
|
||||
|
||||
String getLine(Sign sign, int line);
|
||||
|
||||
void setLine(SignChangeEvent event, int line, String text);
|
||||
|
||||
void setLine(Sign sign, int line, String text);
|
||||
|
||||
org.bukkit.inventory.Inventory createInventory(InventoryHolder owner, int size, String title);
|
||||
|
||||
void setLore(ItemMeta meta, List<String> lore);
|
||||
|
||||
List<String> getLore(ItemMeta meta);
|
||||
|
||||
void setDisplayName(ItemMeta meta, String name);
|
||||
|
||||
default void broadcastMessage(String message) {
|
||||
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||
player.sendMessage(message);
|
||||
}
|
||||
}
|
||||
|
||||
default void broadcastMessage(List<String> messages) {
|
||||
for (String msg : messages) {
|
||||
for (Player player : Bukkit.getOnlinePlayers()) {
|
||||
player.sendMessage(msg);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,65 @@
|
||||
package com.gamingmesh.jobs.stuff.complement;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
@SuppressWarnings("deprecation")
|
||||
public final class Complement1 implements Complement {
|
||||
|
||||
@Override
|
||||
public String getDisplayName(ItemMeta meta) {
|
||||
return meta.getDisplayName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getLine(SignChangeEvent event, int line) {
|
||||
return event.getLine(line);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLine(SignChangeEvent event, int line, String text) {
|
||||
event.setLine(line, text);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getLine(Sign sign, int line) {
|
||||
return sign.getLine(line);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Inventory createInventory(InventoryHolder owner, int size, String title) {
|
||||
return Bukkit.createInventory(owner, size, title);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLore(ItemMeta meta, List<String> lore) {
|
||||
meta.setLore(lore);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDisplayName(ItemMeta meta, String name) {
|
||||
meta.setDisplayName(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDisplayName(Player player) {
|
||||
return player.getDisplayName();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLine(Sign sign, int line, String text) {
|
||||
sign.setLine(line, text);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getLore(ItemMeta meta) {
|
||||
return meta.getLore();
|
||||
}
|
||||
}
|
@ -0,0 +1,88 @@
|
||||
package com.gamingmesh.jobs.stuff.complement;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.serializer.plain.PlainComponentSerializer;
|
||||
|
||||
public final class Complement2 implements Complement {
|
||||
|
||||
private String serialize(Component component) {
|
||||
return PlainComponentSerializer.plain().serialize(component);
|
||||
}
|
||||
|
||||
private Component deserialize(String t) {
|
||||
return PlainComponentSerializer.plain().deserialize(t);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDisplayName(ItemMeta meta) {
|
||||
return serialize(meta.displayName());
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getLine(SignChangeEvent event, int line) {
|
||||
return serialize(event.line(line));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLine(SignChangeEvent event, int line, String text) {
|
||||
event.line(line, deserialize(text));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getLine(Sign sign, int line) {
|
||||
return serialize(sign.line(line));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Inventory createInventory(InventoryHolder owner, int size, String title) {
|
||||
return Bukkit.createInventory(owner, size, deserialize(title));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLore(ItemMeta meta, List<String> lore) {
|
||||
List<Component> l = new ArrayList<>();
|
||||
|
||||
for (String e : lore) {
|
||||
l.add(deserialize(e));
|
||||
}
|
||||
|
||||
meta.lore(l);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setDisplayName(ItemMeta meta, String name) {
|
||||
meta.displayName(deserialize(name));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDisplayName(Player player) {
|
||||
return serialize(player.displayName());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setLine(Sign sign, int line, String text) {
|
||||
sign.line(line, deserialize(text));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getLore(ItemMeta meta) {
|
||||
List<String> lore = new ArrayList<>();
|
||||
|
||||
for (Component comp : meta.lore()) {
|
||||
lore.add(serialize(comp));
|
||||
}
|
||||
|
||||
return lore;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user