Rename internal CMagicGem implementation
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
package cn.infstar.magicgem;
|
||||
|
||||
/**
|
||||
* Paper entry point for MagicGem Reforged.
|
||||
*
|
||||
* <p>The original {@code pku.yim.magicgem.MagicGem} superclass remains available
|
||||
* so plugins compiled against the original public API can continue to resolve it.</p>
|
||||
*/
|
||||
public final class MagicGem extends pku.yim.magicgem.MagicGem {
|
||||
public static MagicGem instance;
|
||||
|
||||
public static MagicGem getInstance() {
|
||||
return instance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
instance = this;
|
||||
super.onEnable();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDisable() {
|
||||
try {
|
||||
super.onDisable();
|
||||
} finally {
|
||||
if (instance == this) instance = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
+29
-29
@@ -1,30 +1,30 @@
|
||||
package cn.infstar.cmagicgem;
|
||||
package cn.infstar.magicgem;
|
||||
|
||||
import cn.infstar.cmagicgem.api.event.CMagicReloadEvent;
|
||||
import cn.infstar.cmagicgem.command.CMagicGemCommand;
|
||||
import cn.infstar.cmagicgem.condition.ConditionEngine;
|
||||
import cn.infstar.cmagicgem.config.PluginSettings;
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.cmagicgem.expression.Expression;
|
||||
import cn.infstar.cmagicgem.expression.DynamicExpression;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.gem.GemService;
|
||||
import cn.infstar.cmagicgem.gui.GemBrowser;
|
||||
import cn.infstar.cmagicgem.gui.GemGuiManager;
|
||||
import cn.infstar.cmagicgem.integration.EconomyBridge;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge;
|
||||
import cn.infstar.cmagicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.cmagicgem.integration.PlayerPointsBridge;
|
||||
import cn.infstar.cmagicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.item.ItemMatcher;
|
||||
import cn.infstar.cmagicgem.listener.GemUseListener;
|
||||
import cn.infstar.cmagicgem.migration.LegacyDirectoryImporter;
|
||||
import cn.infstar.cmagicgem.reward.RewardEngine;
|
||||
import cn.infstar.cmagicgem.skill.SkillRegistry;
|
||||
import cn.infstar.cmagicgem.skill.SkillEngine;
|
||||
import cn.infstar.cmagicgem.util.MessageDispatcher;
|
||||
import cn.infstar.magicgem.api.event.MagicReloadEvent;
|
||||
import cn.infstar.magicgem.command.MagicGemCommand;
|
||||
import cn.infstar.magicgem.condition.ConditionEngine;
|
||||
import cn.infstar.magicgem.config.PluginSettings;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.expression.Expression;
|
||||
import cn.infstar.magicgem.expression.DynamicExpression;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.gem.GemService;
|
||||
import cn.infstar.magicgem.gui.GemBrowser;
|
||||
import cn.infstar.magicgem.gui.GemGuiManager;
|
||||
import cn.infstar.magicgem.integration.EconomyBridge;
|
||||
import cn.infstar.magicgem.integration.MythicBridge;
|
||||
import cn.infstar.magicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.magicgem.integration.PlayerPointsBridge;
|
||||
import cn.infstar.magicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.item.ItemMatcher;
|
||||
import cn.infstar.magicgem.listener.GemUseListener;
|
||||
import cn.infstar.magicgem.migration.LegacyDirectoryImporter;
|
||||
import cn.infstar.magicgem.reward.RewardEngine;
|
||||
import cn.infstar.magicgem.skill.SkillRegistry;
|
||||
import cn.infstar.magicgem.skill.SkillEngine;
|
||||
import cn.infstar.magicgem.util.MessageDispatcher;
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import org.bukkit.command.PluginCommand;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
@@ -32,7 +32,7 @@ import org.bukkit.plugin.java.JavaPlugin;
|
||||
import java.io.File;
|
||||
import java.util.Objects;
|
||||
|
||||
public class CMagicGem extends JavaPlugin {
|
||||
public class MagicGemPlugin extends JavaPlugin {
|
||||
private volatile PluginSettings settings;
|
||||
private GemRegistry gemRegistry;
|
||||
private SkillRegistry skillRegistry;
|
||||
@@ -81,7 +81,7 @@ public class CMagicGem extends JavaPlugin {
|
||||
guiManager = new GemGuiManager(this, gemRegistry, gemService, itemCodec, itemMatcher, messages, languages);
|
||||
reloadAll();
|
||||
|
||||
CMagicGemCommand command = new CMagicGemCommand(gemRegistry, gemService, itemCodec, gemBrowser,
|
||||
MagicGemCommand command = new MagicGemCommand(gemRegistry, gemService, itemCodec, gemBrowser,
|
||||
guiManager, skillEngine, messages, languages, this::reloadScope);
|
||||
PluginCommand pluginCommand = Objects.requireNonNull(getCommand("mgem"));
|
||||
pluginCommand.setExecutor(command);
|
||||
@@ -121,7 +121,7 @@ public class CMagicGem extends JavaPlugin {
|
||||
else skillRegistry.clear();
|
||||
}
|
||||
if ((all || gems) && guiManager != null) guiManager.reload();
|
||||
if (isEnabled()) getServer().getPluginManager().callEvent(new CMagicReloadEvent());
|
||||
if (isEnabled()) getServer().getPluginManager().callEvent(new MagicReloadEvent());
|
||||
}
|
||||
|
||||
protected void onSettingsReloaded(PluginSettings settings) { }
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
@@ -7,7 +7,7 @@ import org.bukkit.event.player.PlayerEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicEquipmentChangeEvent extends PlayerEvent implements Cancellable {
|
||||
public final class MagicEquipmentChangeEvent extends PlayerEvent implements Cancellable {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
private final String slot;
|
||||
private final ItemStack oldItem;
|
||||
@@ -15,7 +15,7 @@ public final class CMagicEquipmentChangeEvent extends PlayerEvent implements Can
|
||||
private final Cause cause;
|
||||
private boolean cancelled;
|
||||
|
||||
public CMagicEquipmentChangeEvent(Player player, String slot, ItemStack oldItem, ItemStack newItem, Cause cause) {
|
||||
public MagicEquipmentChangeEvent(Player player, String slot, ItemStack oldItem, ItemStack newItem, Cause cause) {
|
||||
super(player);
|
||||
this.slot = slot;
|
||||
this.oldItem = oldItem == null ? null : oldItem.clone();
|
||||
+4
-4
@@ -1,19 +1,19 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.event.player.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicGemUseEvent extends PlayerEvent implements Cancellable {
|
||||
public final class MagicGemUseEvent extends PlayerEvent implements Cancellable {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
private final GemDefinition gem;
|
||||
private final boolean use;
|
||||
private boolean cancelled;
|
||||
|
||||
public CMagicGemUseEvent(Player player, GemDefinition gem, boolean use) {
|
||||
public MagicGemUseEvent(Player player, GemDefinition gem, boolean use) {
|
||||
super(player);
|
||||
this.gem = gem;
|
||||
this.use = use;
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.entity.Player;
|
||||
@@ -7,13 +7,13 @@ import org.bukkit.event.HandlerList;
|
||||
import org.bukkit.event.player.PlayerEvent;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicJumpEvent extends PlayerEvent implements Cancellable {
|
||||
public final class MagicJumpEvent extends PlayerEvent implements Cancellable {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
private Location from;
|
||||
private Location to;
|
||||
private boolean cancelled;
|
||||
|
||||
public CMagicJumpEvent(Player player, Location from, Location to) {
|
||||
public MagicJumpEvent(Player player, Location from, Location to) {
|
||||
super(player);
|
||||
this.from = from.clone();
|
||||
this.to = to.clone();
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
@@ -8,7 +8,7 @@ import org.bukkit.event.player.PlayerEvent;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicPotionBuffEvent extends PlayerEvent implements Cancellable {
|
||||
public final class MagicPotionBuffEvent extends PlayerEvent implements Cancellable {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
private final LivingEntity target;
|
||||
private final PotionEffectType type;
|
||||
@@ -16,7 +16,7 @@ public final class CMagicPotionBuffEvent extends PlayerEvent implements Cancella
|
||||
private int durationTicks;
|
||||
private boolean cancelled;
|
||||
|
||||
public CMagicPotionBuffEvent(Player player, LivingEntity target, PotionEffectType type,
|
||||
public MagicPotionBuffEvent(Player player, LivingEntity target, PotionEffectType type,
|
||||
int amplifier, int durationTicks) {
|
||||
super(player);
|
||||
this.target = target;
|
||||
+3
-3
@@ -1,13 +1,13 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicReloadEvent extends Event {
|
||||
public final class MagicReloadEvent extends Event {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
|
||||
public CMagicReloadEvent() {
|
||||
public MagicReloadEvent() {
|
||||
super(false);
|
||||
}
|
||||
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.event.Cancellable;
|
||||
@@ -6,13 +6,13 @@ import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicSkillLoadEvent extends Event implements Cancellable {
|
||||
public final class MagicSkillLoadEvent extends Event implements Cancellable {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
private final String name;
|
||||
private final ConfigurationSection config;
|
||||
private boolean cancelled;
|
||||
|
||||
public CMagicSkillLoadEvent(String name, ConfigurationSection config) {
|
||||
public MagicSkillLoadEvent(String name, ConfigurationSection config) {
|
||||
this.name = name;
|
||||
this.config = config;
|
||||
}
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
package cn.infstar.cmagicgem.api.event;
|
||||
package cn.infstar.magicgem.api.event;
|
||||
|
||||
import cn.infstar.cmagicgem.skill.SkillDefinition;
|
||||
import cn.infstar.magicgem.skill.SkillDefinition;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.Cancellable;
|
||||
import org.bukkit.event.HandlerList;
|
||||
@@ -8,13 +8,13 @@ import org.bukkit.event.player.PlayerEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public final class CMagicSkillUseEvent extends PlayerEvent implements Cancellable {
|
||||
public final class MagicSkillUseEvent extends PlayerEvent implements Cancellable {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
private final SkillDefinition skill;
|
||||
private final ItemStack item;
|
||||
private boolean cancelled;
|
||||
|
||||
public CMagicSkillUseEvent(Player player, SkillDefinition skill, ItemStack item) {
|
||||
public MagicSkillUseEvent(Player player, SkillDefinition skill, ItemStack item) {
|
||||
super(player);
|
||||
this.skill = skill;
|
||||
this.item = item;
|
||||
+13
-13
@@ -1,15 +1,15 @@
|
||||
package cn.infstar.cmagicgem.command;
|
||||
package cn.infstar.magicgem.command;
|
||||
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.gem.GemService;
|
||||
import cn.infstar.cmagicgem.gem.GemUseResult;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.gui.GemBrowser;
|
||||
import cn.infstar.cmagicgem.gui.GemGuiManager;
|
||||
import cn.infstar.cmagicgem.skill.SkillEngine;
|
||||
import cn.infstar.cmagicgem.util.MessageDispatcher;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.gem.GemService;
|
||||
import cn.infstar.magicgem.gem.GemUseResult;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.gui.GemBrowser;
|
||||
import cn.infstar.magicgem.gui.GemGuiManager;
|
||||
import cn.infstar.magicgem.skill.SkillEngine;
|
||||
import cn.infstar.magicgem.util.MessageDispatcher;
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import de.tr7zw.changeme.nbtapi.NBTType;
|
||||
import de.tr7zw.changeme.nbtapi.iface.ReadableNBT;
|
||||
@@ -33,7 +33,7 @@ import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public final class CMagicGemCommand implements CommandExecutor, TabCompleter {
|
||||
public final class MagicGemCommand implements CommandExecutor, TabCompleter {
|
||||
private final GemRegistry registry;
|
||||
private final GemService gemService;
|
||||
private final ItemCodec itemCodec;
|
||||
@@ -44,7 +44,7 @@ public final class CMagicGemCommand implements CommandExecutor, TabCompleter {
|
||||
private final MessageDispatcher messages;
|
||||
private final LanguageManager languages;
|
||||
|
||||
public CMagicGemCommand(GemRegistry registry, GemService gemService, ItemCodec itemCodec, GemBrowser browser,
|
||||
public MagicGemCommand(GemRegistry registry, GemService gemService, ItemCodec itemCodec, GemBrowser browser,
|
||||
GemGuiManager guiManager, SkillEngine skillEngine, MessageDispatcher messages,
|
||||
LanguageManager languages, Consumer<String> reload) {
|
||||
this.registry = registry;
|
||||
+4
-6
@@ -1,18 +1,16 @@
|
||||
package cn.infstar.cmagicgem.command;
|
||||
package cn.infstar.magicgem.command;
|
||||
|
||||
import java.util.Locale;
|
||||
import java.util.function.Predicate;
|
||||
|
||||
/** Keeps the legacy MagicGem admin node's "all permissions" behavior. */
|
||||
/** Applies the MagicGem command permission hierarchy. */
|
||||
final class PermissionPolicy {
|
||||
private PermissionPolicy() { }
|
||||
|
||||
static boolean allows(String permission, Predicate<String> hasPermission) {
|
||||
String requested = permission.toLowerCase(Locale.ROOT);
|
||||
boolean admin = hasPermission.test("magicgem.command.admin")
|
||||
|| hasPermission.test("cmagicgem.command.admin");
|
||||
boolean admin = hasPermission.test("magicgem.command.admin");
|
||||
if (admin) return true;
|
||||
return hasPermission.test("magicgem.command." + requested)
|
||||
|| hasPermission.test("cmagicgem.command." + requested);
|
||||
return hasPermission.test("magicgem.command." + requested);
|
||||
}
|
||||
}
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package cn.infstar.cmagicgem.condition;
|
||||
package cn.infstar.magicgem.condition;
|
||||
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.expression.DynamicExpression;
|
||||
import cn.infstar.cmagicgem.item.ItemMatcher;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.expression.DynamicExpression;
|
||||
import cn.infstar.magicgem.item.ItemMatcher;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.config;
|
||||
package cn.infstar.magicgem.config;
|
||||
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.config;
|
||||
package cn.infstar.magicgem.config;
|
||||
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.dsl;
|
||||
package cn.infstar.magicgem.dsl;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.dsl;
|
||||
package cn.infstar.magicgem.dsl;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package cn.infstar.cmagicgem.expression;
|
||||
package cn.infstar.magicgem.expression;
|
||||
|
||||
import cn.infstar.cmagicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.cmagicgem.util.EnchantmentResolver;
|
||||
import cn.infstar.magicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.magicgem.util.EnchantmentResolver;
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.enchantments.Enchantment;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.expression;
|
||||
package cn.infstar.magicgem.expression;
|
||||
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import org.bukkit.Material;
|
||||
|
||||
import java.util.List;
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.util.MaterialResolver;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.util.MaterialResolver;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
+13
-13
@@ -1,15 +1,15 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import cn.infstar.cmagicgem.api.event.CMagicGemUseEvent;
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.condition.ConditionEngine;
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.expression.DynamicExpression;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.item.ItemMatcher;
|
||||
import cn.infstar.cmagicgem.reward.RewardContext;
|
||||
import cn.infstar.cmagicgem.reward.RewardEngine;
|
||||
import cn.infstar.cmagicgem.reward.RewardException;
|
||||
import cn.infstar.magicgem.api.event.MagicGemUseEvent;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.condition.ConditionEngine;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.expression.DynamicExpression;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.item.ItemMatcher;
|
||||
import cn.infstar.magicgem.reward.RewardContext;
|
||||
import cn.infstar.magicgem.reward.RewardEngine;
|
||||
import cn.infstar.magicgem.reward.RewardException;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
@@ -47,7 +47,7 @@ public final class GemService {
|
||||
}
|
||||
|
||||
public GemUseResult use(Player player, GemDefinition requested, ItemStack target) {
|
||||
CMagicGemUseEvent event = new CMagicGemUseEvent(player, requested, true);
|
||||
MagicGemUseEvent event = new MagicGemUseEvent(player, requested, true);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
if (event.isCancelled()) return GemUseResult.rejected(target,
|
||||
languages.text("cmagic.use_cancelled", "&c宝石使用已被其他插件取消"));
|
||||
@@ -157,7 +157,7 @@ public final class GemService {
|
||||
if (found.isEmpty()) return GemUseResult.rejected(target,
|
||||
languages.text("cmagic.gem_not_found", "&c未知宝石: {gem}", "gem", gemName));
|
||||
GemDefinition gem = found.get();
|
||||
CMagicGemUseEvent event = new CMagicGemUseEvent(player, gem, false);
|
||||
MagicGemUseEvent event = new MagicGemUseEvent(player, gem, false);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
if (event.isCancelled()) return GemUseResult.rejected(target,
|
||||
languages.text("cmagic.remove_cancelled", "&c宝石拆卸已被其他插件取消"));
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import java.util.ArrayDeque;
|
||||
import java.util.Deque;
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package cn.infstar.cmagicgem.gui;
|
||||
package cn.infstar.magicgem.gui;
|
||||
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Player;
|
||||
+10
-10
@@ -1,14 +1,14 @@
|
||||
package cn.infstar.cmagicgem.gui;
|
||||
package cn.infstar.magicgem.gui;
|
||||
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.gem.GemService;
|
||||
import cn.infstar.cmagicgem.gem.GemType;
|
||||
import cn.infstar.cmagicgem.gem.GemUseResult;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.item.ItemMatcher;
|
||||
import cn.infstar.cmagicgem.util.MessageDispatcher;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.gem.GemService;
|
||||
import cn.infstar.magicgem.gem.GemType;
|
||||
import cn.infstar.magicgem.gem.GemUseResult;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.item.ItemMatcher;
|
||||
import cn.infstar.magicgem.util.MessageDispatcher;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.gui;
|
||||
package cn.infstar.magicgem.gui;
|
||||
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.integration;
|
||||
package cn.infstar.magicgem.integration;
|
||||
|
||||
import org.bukkit.OfflinePlayer;
|
||||
import org.bukkit.plugin.RegisteredServiceProvider;
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.integration;
|
||||
package cn.infstar.magicgem.integration;
|
||||
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import de.tr7zw.changeme.nbtapi.iface.ReadWriteNBT;
|
||||
@@ -54,7 +54,7 @@ public final class MMOItemsBridge {
|
||||
copy.mergeCompound(nbt);
|
||||
for (String key : new ArrayList<>(copy.getKeys())) {
|
||||
String normalized = key.toUpperCase(Locale.ROOT);
|
||||
if (!normalized.startsWith("CMAGICGEM_") && !normalized.equals("MYTHIC_TYPE")) copy.removeKey(key);
|
||||
if (!normalized.startsWith("MAGICGEM_REFORGED_") && !normalized.equals("MYTHIC_TYPE")) copy.removeKey(key);
|
||||
}
|
||||
return copy;
|
||||
});
|
||||
+5
-5
@@ -1,12 +1,12 @@
|
||||
package cn.infstar.cmagicgem.integration;
|
||||
package cn.infstar.magicgem.integration;
|
||||
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.entity.Entity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.Location;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
@@ -128,8 +128,8 @@ public final class MythicBridge {
|
||||
Plugin dependency = plugin.getServer().getPluginManager().getPlugin("MythicMobs");
|
||||
if (dependency == null || !dependency.isEnabled()) return;
|
||||
String adapter = hasClass(dependency, "io.lumine.mythic.bukkit.MythicBukkit")
|
||||
? "cn.infstar.cmagicgem.integration.mythic.Mythic5Adapter"
|
||||
: "cn.infstar.cmagicgem.integration.mythic.Mythic4Adapter";
|
||||
? "cn.infstar.magicgem.integration.mythic.Mythic5Adapter"
|
||||
: "cn.infstar.magicgem.integration.mythic.Mythic4Adapter";
|
||||
try {
|
||||
Class<?> type = Class.forName(adapter, true, plugin.getClass().getClassLoader());
|
||||
Object instance = type.getConstructor(JavaPlugin.class, GemRegistry.class, ItemCodec.class,
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.integration;
|
||||
package cn.infstar.magicgem.integration;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.integration;
|
||||
package cn.infstar.magicgem.integration;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.integration;
|
||||
package cn.infstar.magicgem.integration;
|
||||
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.entity.Entity;
|
||||
+7
-7
@@ -1,11 +1,11 @@
|
||||
package cn.infstar.cmagicgem.integration.mythic;
|
||||
package cn.infstar.magicgem.integration.mythic;
|
||||
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge.MythicDeathHandler;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge.InlineMechanicExecutor;
|
||||
import cn.infstar.cmagicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.integration.MythicBridge.MythicDeathHandler;
|
||||
import cn.infstar.magicgem.integration.MythicBridge.InlineMechanicExecutor;
|
||||
import cn.infstar.magicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import io.lumine.xikage.mythicmobs.adapters.AbstractEntity;
|
||||
import io.lumine.xikage.mythicmobs.adapters.AbstractItemStack;
|
||||
import io.lumine.xikage.mythicmobs.adapters.bukkit.BukkitAdapter;
|
||||
+7
-7
@@ -1,11 +1,11 @@
|
||||
package cn.infstar.cmagicgem.integration.mythic;
|
||||
package cn.infstar.magicgem.integration.mythic;
|
||||
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge.MythicDeathHandler;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge.InlineMechanicExecutor;
|
||||
import cn.infstar.cmagicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.integration.MythicBridge.MythicDeathHandler;
|
||||
import cn.infstar.magicgem.integration.MythicBridge.InlineMechanicExecutor;
|
||||
import cn.infstar.magicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import io.lumine.mythic.api.adapters.AbstractEntity;
|
||||
import io.lumine.mythic.api.adapters.AbstractItemStack;
|
||||
import io.lumine.mythic.api.config.MythicLineConfig;
|
||||
+6
-6
@@ -1,10 +1,10 @@
|
||||
package cn.infstar.cmagicgem.item;
|
||||
package cn.infstar.magicgem.item;
|
||||
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.migration.LegacyItemMigrator;
|
||||
import cn.infstar.cmagicgem.util.PotionTypes;
|
||||
import cn.infstar.cmagicgem.util.MaterialResolver;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.migration.LegacyItemMigrator;
|
||||
import cn.infstar.magicgem.util.PotionTypes;
|
||||
import cn.infstar.magicgem.util.MaterialResolver;
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Bukkit;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.item;
|
||||
package cn.infstar.magicgem.item;
|
||||
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import org.bukkit.ChatColor;
|
||||
+9
-9
@@ -1,13 +1,13 @@
|
||||
package cn.infstar.cmagicgem.listener;
|
||||
package cn.infstar.magicgem.listener;
|
||||
|
||||
import cn.infstar.cmagicgem.config.PluginSettings;
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemService;
|
||||
import cn.infstar.cmagicgem.gem.GemType;
|
||||
import cn.infstar.cmagicgem.gem.GemUseResult;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.gui.GemWorkbenchHolder;
|
||||
import cn.infstar.cmagicgem.util.MessageDispatcher;
|
||||
import cn.infstar.magicgem.config.PluginSettings;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemService;
|
||||
import cn.infstar.magicgem.gem.GemType;
|
||||
import cn.infstar.magicgem.gem.GemUseResult;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.gui.GemWorkbenchHolder;
|
||||
import cn.infstar.magicgem.util.MessageDispatcher;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.migration;
|
||||
package cn.infstar.magicgem.migration;
|
||||
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package cn.infstar.cmagicgem.migration;
|
||||
package cn.infstar.magicgem.migration;
|
||||
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import de.tr7zw.changeme.nbtapi.NBTType;
|
||||
import de.tr7zw.changeme.nbtapi.iface.ReadableNBT;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.infstar.cmagicgem.reward;
|
||||
package cn.infstar.magicgem.reward;
|
||||
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
+21
-21
@@ -1,22 +1,22 @@
|
||||
package cn.infstar.cmagicgem.reward;
|
||||
package cn.infstar.magicgem.reward;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.cmagicgem.expression.DynamicExpression;
|
||||
import cn.infstar.cmagicgem.gem.GemDefinition;
|
||||
import cn.infstar.cmagicgem.gem.GemRegistry;
|
||||
import cn.infstar.cmagicgem.integration.EconomyBridge;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge;
|
||||
import cn.infstar.cmagicgem.integration.MMOItemsBridge;
|
||||
import cn.infstar.cmagicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.cmagicgem.integration.PlayerPointsBridge;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.item.ItemMatcher;
|
||||
import cn.infstar.cmagicgem.skill.SkillDefinition;
|
||||
import cn.infstar.cmagicgem.skill.SkillRegistry;
|
||||
import cn.infstar.cmagicgem.util.PotionTypes;
|
||||
import cn.infstar.cmagicgem.util.MaterialResolver;
|
||||
import cn.infstar.cmagicgem.util.EnchantmentResolver;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.expression.DynamicExpression;
|
||||
import cn.infstar.magicgem.gem.GemDefinition;
|
||||
import cn.infstar.magicgem.gem.GemRegistry;
|
||||
import cn.infstar.magicgem.integration.EconomyBridge;
|
||||
import cn.infstar.magicgem.integration.MythicBridge;
|
||||
import cn.infstar.magicgem.integration.MMOItemsBridge;
|
||||
import cn.infstar.magicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.magicgem.integration.PlayerPointsBridge;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.item.ItemMatcher;
|
||||
import cn.infstar.magicgem.skill.SkillDefinition;
|
||||
import cn.infstar.magicgem.skill.SkillRegistry;
|
||||
import cn.infstar.magicgem.util.PotionTypes;
|
||||
import cn.infstar.magicgem.util.MaterialResolver;
|
||||
import cn.infstar.magicgem.util.EnchantmentResolver;
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
@@ -482,7 +482,7 @@ public final class RewardEngine {
|
||||
private void rewardLimit(RewardContext context, Directive directive) throws RewardException {
|
||||
int limit = directive.intArgument(0, "limit");
|
||||
if (limit <= 0) return;
|
||||
String key = "CMAGICGEM_LIMIT_" + Integer.toUnsignedString(directive.source().hashCode(), 36);
|
||||
String key = "MAGICGEM_REFORGED_LIMIT_" + Integer.toUnsignedString(directive.source().hashCode(), 36);
|
||||
int current = NBT.get(context.item(), nbt -> { return nbt.hasTag(key) ? nbt.getInteger(key) : 0; });
|
||||
if (!context.removal() && current >= limit) throw new RewardException("该奖励已达到次数上限");
|
||||
int changedCount = context.removal() ? Math.max(0, current - 1) : current + 1;
|
||||
@@ -622,7 +622,7 @@ public final class RewardEngine {
|
||||
? new ArrayList<>(meta.getLore()) : new ArrayList<>();
|
||||
List<String> nbtSkills = itemCodec.skills(changed);
|
||||
String requested = directive.argument("", "name", "skill", "s");
|
||||
String snapshotKey = "CMAGICGEM_HIDDEN_SKILL_LORE";
|
||||
String snapshotKey = "MAGICGEM_REFORGED_HIDDEN_SKILL_LORE";
|
||||
JsonObject snapshots;
|
||||
try {
|
||||
String encoded = NBT.get(changed, nbt -> nbt.hasTag(snapshotKey) ? nbt.getString(snapshotKey) : "{}");
|
||||
@@ -789,7 +789,7 @@ public final class RewardEngine {
|
||||
String mode = directive.argument("RIGHT_CLICK", "mode");
|
||||
if (id.isBlank()) throw new RewardException("MMOAbility 缺少 id");
|
||||
String abilityKey = "MMOITEMS_ABILITY";
|
||||
String marker = "CMAGICGEM_MMO_" + Integer.toUnsignedString(directive.source().hashCode(), 36);
|
||||
String marker = "MAGICGEM_REFORGED_MMO_" + Integer.toUnsignedString(directive.source().hashCode(), 36);
|
||||
String snapshotKey = marker + "_SNAPSHOT";
|
||||
ItemStack changed = context.item().clone();
|
||||
String encoded = NBT.get(changed, nbt -> { return nbt.hasTag(abilityKey) ? nbt.getString(abilityKey) : "[]"; });
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.reward;
|
||||
package cn.infstar.magicgem.reward;
|
||||
|
||||
public final class RewardException extends Exception {
|
||||
public RewardException(String message) {
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
+33
-33
@@ -1,21 +1,21 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import cn.infstar.cmagicgem.api.event.CMagicEquipmentChangeEvent;
|
||||
import cn.infstar.cmagicgem.api.event.CMagicJumpEvent;
|
||||
import cn.infstar.cmagicgem.api.event.CMagicPotionBuffEvent;
|
||||
import cn.infstar.cmagicgem.api.event.CMagicSkillUseEvent;
|
||||
import cn.infstar.cmagicgem.condition.ConditionEngine;
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.cmagicgem.expression.DynamicExpression;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.cmagicgem.integration.MythicBridge;
|
||||
import cn.infstar.cmagicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.cmagicgem.reward.RewardContext;
|
||||
import cn.infstar.cmagicgem.reward.RewardEngine;
|
||||
import cn.infstar.cmagicgem.reward.RewardException;
|
||||
import cn.infstar.cmagicgem.util.MessageDispatcher;
|
||||
import cn.infstar.cmagicgem.util.PotionTypes;
|
||||
import cn.infstar.magicgem.api.event.MagicEquipmentChangeEvent;
|
||||
import cn.infstar.magicgem.api.event.MagicJumpEvent;
|
||||
import cn.infstar.magicgem.api.event.MagicPotionBuffEvent;
|
||||
import cn.infstar.magicgem.api.event.MagicSkillUseEvent;
|
||||
import cn.infstar.magicgem.condition.ConditionEngine;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.expression.DynamicExpression;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.integration.MythicBridge;
|
||||
import cn.infstar.magicgem.integration.ProtectionBridge;
|
||||
import cn.infstar.magicgem.reward.RewardContext;
|
||||
import cn.infstar.magicgem.reward.RewardEngine;
|
||||
import cn.infstar.magicgem.reward.RewardException;
|
||||
import cn.infstar.magicgem.util.MessageDispatcher;
|
||||
import cn.infstar.magicgem.util.PotionTypes;
|
||||
import de.tr7zw.changeme.nbtapi.NBT;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
@@ -191,7 +191,7 @@ public final class SkillEngine implements Listener {
|
||||
tip(player, skill.failTip());
|
||||
return;
|
||||
}
|
||||
CMagicSkillUseEvent useEvent = new CMagicSkillUseEvent(player, skill, item);
|
||||
MagicSkillUseEvent useEvent = new MagicSkillUseEvent(player, skill, item);
|
||||
Bukkit.getPluginManager().callEvent(useEvent);
|
||||
if (useEvent.isCancelled()) return;
|
||||
boolean executed = false;
|
||||
@@ -304,7 +304,7 @@ public final class SkillEngine implements Listener {
|
||||
int refresh = Math.max(0, (int) Math.round(value(mechanic.argument("0", "refresh"), player, item) * 20));
|
||||
PotionEffect old = living.getPotionEffect(type);
|
||||
if (old != null && (old.getAmplifier() > level - 1 || old.getDuration() > refresh)) return;
|
||||
CMagicPotionBuffEvent event = new CMagicPotionBuffEvent(player, living, type, level - 1, duration);
|
||||
MagicPotionBuffEvent event = new MagicPotionBuffEvent(player, living, type, level - 1, duration);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
if (!event.isCancelled()) living.addPotionEffect(new PotionEffect(type, event.getDurationTicks(),
|
||||
event.getAmplifier(), true, true, true), true);
|
||||
@@ -392,17 +392,17 @@ public final class SkillEngine implements Listener {
|
||||
String tag = mechanic.argument("default", "tag");
|
||||
long count;
|
||||
if (mechanic.booleanArgument(false, "persist", "p")) {
|
||||
String key = "cmagicgem_counter_" + Integer.toHexString(tag.hashCode());
|
||||
String key = "magicgem_reforged_counter_" + Integer.toHexString(tag.hashCode());
|
||||
count = NBT.get(item, nbt -> { return nbt.hasTag(key) ? nbt.getLong(key) + 1 : 1L; });
|
||||
long stored = count;
|
||||
NBT.modify(item, nbt -> { nbt.setLong(key, stored); });
|
||||
} else {
|
||||
String itemId = NBT.get(item, nbt -> nbt.hasTag("CMAGICGEM_RUNTIME_ID")
|
||||
? nbt.getString("CMAGICGEM_RUNTIME_ID") : "");
|
||||
String itemId = NBT.get(item, nbt -> nbt.hasTag("MAGICGEM_REFORGED_RUNTIME_ID")
|
||||
? nbt.getString("MAGICGEM_REFORGED_RUNTIME_ID") : "");
|
||||
if (itemId.isBlank()) {
|
||||
itemId = UUID.randomUUID().toString();
|
||||
String generated = itemId;
|
||||
NBT.modify(item, nbt -> { nbt.setString("CMAGICGEM_RUNTIME_ID", generated); });
|
||||
NBT.modify(item, nbt -> { nbt.setString("MAGICGEM_REFORGED_RUNTIME_ID", generated); });
|
||||
}
|
||||
String key = player.getUniqueId() + ":" + itemId + ':' + slot + ':'
|
||||
+ Integer.toUnsignedString(mechanic.source().hashCode(), 36) + ':' + tag;
|
||||
@@ -634,7 +634,7 @@ public final class SkillEngine implements Listener {
|
||||
public void onJump(PlayerJumpEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
if (debuffed(player, "JUMP")) { event.setCancelled(true); return; }
|
||||
CMagicJumpEvent jump = new CMagicJumpEvent(player, event.getFrom(), event.getTo());
|
||||
MagicJumpEvent jump = new MagicJumpEvent(player, event.getFrom(), event.getTo());
|
||||
Bukkit.getPluginManager().callEvent(jump);
|
||||
if (jump.isCancelled()) { event.setCancelled(true); return; }
|
||||
trigger(player, TriggerType.JUMP, List.of(), null, jump.getTo(), event);
|
||||
@@ -764,23 +764,23 @@ public final class SkillEngine implements Listener {
|
||||
@EventHandler(ignoreCancelled = true)
|
||||
public void onArmorChange(PlayerArmorChangeEvent event) {
|
||||
equipmentChange(event.getPlayer(), event.getSlotType().name().toLowerCase(Locale.ROOT),
|
||||
event.getOldItem(), event.getNewItem(), CMagicEquipmentChangeEvent.Cause.ARMOR, event);
|
||||
event.getOldItem(), event.getNewItem(), MagicEquipmentChangeEvent.Cause.ARMOR, event);
|
||||
}
|
||||
|
||||
@EventHandler(ignoreCancelled = true)
|
||||
public void onHeld(PlayerItemHeldEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
equipmentChange(player, "mainhand", player.getInventory().getItem(event.getPreviousSlot()),
|
||||
player.getInventory().getItem(event.getNewSlot()), CMagicEquipmentChangeEvent.Cause.HELD, event);
|
||||
player.getInventory().getItem(event.getNewSlot()), MagicEquipmentChangeEvent.Cause.HELD, event);
|
||||
}
|
||||
|
||||
@EventHandler(ignoreCancelled = true)
|
||||
public void onSwap(PlayerSwapHandItemsEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
equipmentChange(player, "mainhand", player.getInventory().getItemInMainHand(), event.getMainHandItem(),
|
||||
CMagicEquipmentChangeEvent.Cause.SWAP, event);
|
||||
MagicEquipmentChangeEvent.Cause.SWAP, event);
|
||||
equipmentChange(player, "offhand", player.getInventory().getItemInOffHand(), event.getOffHandItem(),
|
||||
CMagicEquipmentChangeEvent.Cause.SWAP, event);
|
||||
MagicEquipmentChangeEvent.Cause.SWAP, event);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
||||
@@ -793,10 +793,10 @@ public final class SkillEngine implements Listener {
|
||||
ItemStack currentOffHand = snapshot(player.getInventory().getItemInOffHand());
|
||||
if (!sameItem(mainHand, currentMainHand))
|
||||
equipmentChange(player, "mainhand", mainHand, currentMainHand,
|
||||
CMagicEquipmentChangeEvent.Cause.INVENTORY, event);
|
||||
MagicEquipmentChangeEvent.Cause.INVENTORY, event);
|
||||
if (!sameItem(offHand, currentOffHand))
|
||||
equipmentChange(player, "offhand", offHand, currentOffHand,
|
||||
CMagicEquipmentChangeEvent.Cause.INVENTORY, event);
|
||||
MagicEquipmentChangeEvent.Cause.INVENTORY, event);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -804,7 +804,7 @@ public final class SkillEngine implements Listener {
|
||||
public void onBreak(PlayerItemBreakEvent event) {
|
||||
if (isArmor(event.getBrokenItem().getType())) return;
|
||||
equipmentChange(event.getPlayer(), slotFor(event.getPlayer(), event.getBrokenItem()), event.getBrokenItem(),
|
||||
null, CMagicEquipmentChangeEvent.Cause.BREAK, event);
|
||||
null, MagicEquipmentChangeEvent.Cause.BREAK, event);
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
@@ -828,8 +828,8 @@ public final class SkillEngine implements Listener {
|
||||
}
|
||||
|
||||
private void equipmentChange(Player player, String slot, ItemStack oldItem, ItemStack newItem,
|
||||
CMagicEquipmentChangeEvent.Cause cause, Event source) {
|
||||
CMagicEquipmentChangeEvent event = new CMagicEquipmentChangeEvent(player, slot, oldItem, newItem, cause);
|
||||
MagicEquipmentChangeEvent.Cause cause, Event source) {
|
||||
MagicEquipmentChangeEvent event = new MagicEquipmentChangeEvent(player, slot, oldItem, newItem, cause);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
if (event.isCancelled()) return;
|
||||
if (oldItem != null && !oldItem.getType().isAir())
|
||||
+5
-5
@@ -1,8 +1,8 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import cn.infstar.cmagicgem.api.event.CMagicSkillLoadEvent;
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.api.event.MagicSkillLoadEvent;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
@@ -53,7 +53,7 @@ public final class SkillRegistry {
|
||||
ConfigurationSection section = yaml.getConfigurationSection(key);
|
||||
if (section == null) continue;
|
||||
try {
|
||||
CMagicSkillLoadEvent event = new CMagicSkillLoadEvent(key, section);
|
||||
MagicSkillLoadEvent event = new MagicSkillLoadEvent(key, section);
|
||||
plugin.getServer().getPluginManager().callEvent(event);
|
||||
if (!event.isCancelled()) loaded.put(key.toLowerCase(Locale.ROOT), parse(key, event.getConfig()));
|
||||
}
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.util;
|
||||
package cn.infstar.magicgem.util;
|
||||
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.util;
|
||||
package cn.infstar.magicgem.util;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
+6
-6
@@ -1,10 +1,10 @@
|
||||
package cn.infstar.cmagicgem.util;
|
||||
package cn.infstar.magicgem.util;
|
||||
|
||||
import cn.infstar.cmagicgem.config.LanguageManager;
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.cmagicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.cmagicgem.item.ItemCodec;
|
||||
import cn.infstar.magicgem.config.LanguageManager;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.integration.PlaceholderBridge;
|
||||
import cn.infstar.magicgem.item.ItemCodec;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
||||
import net.kyori.adventure.title.Title;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.util;
|
||||
package cn.infstar.magicgem.util;
|
||||
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Registry;
|
||||
@@ -1,27 +0,0 @@
|
||||
package cn.infstar.magicgemreforged;
|
||||
|
||||
import pku.yim.magicgem.MagicGem;
|
||||
|
||||
/** Paper entry point for MagicGem Reforged. The superclass keeps the original public API available. */
|
||||
public final class MagicGemReforged extends MagicGem {
|
||||
public static MagicGemReforged instance;
|
||||
|
||||
public static MagicGemReforged getInstance() {
|
||||
return instance;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onEnable() {
|
||||
instance = this;
|
||||
super.onEnable();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDisable() {
|
||||
try {
|
||||
super.onDisable();
|
||||
} finally {
|
||||
if (instance == this) instance = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,12 @@
|
||||
package pku.yim.magicgem;
|
||||
|
||||
import cn.infstar.cmagicgem.CMagicGem;
|
||||
import cn.infstar.cmagicgem.config.PluginSettings;
|
||||
import cn.infstar.magicgem.MagicGemPlugin;
|
||||
import cn.infstar.magicgem.config.PluginSettings;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.command.CommandSender;
|
||||
|
||||
/** Compatibility base class retained for plugins compiled against the original MagicGem API. */
|
||||
public class MagicGem extends CMagicGem {
|
||||
public class MagicGem extends MagicGemPlugin {
|
||||
public static MagicGem instance;
|
||||
public static boolean placeholderapi;
|
||||
public static boolean MMCorMMA;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
name: MagicGem-Reforged
|
||||
version: '${version}'
|
||||
description: MagicGem Reforged for Paper 1.21.x
|
||||
main: cn.infstar.magicgemreforged.MagicGemReforged
|
||||
main: cn.infstar.magicgem.MagicGem
|
||||
api-version: '1.21'
|
||||
authors: [ Coldsmile_7 ]
|
||||
softdepend: [PlaceholderAPI, Vault, PlayerPoints, MythicMobs, MMOItems, MythicArtifacts, MythicCrucible, Residence, PvPManager, EcoEnchants, GoldenEnchants]
|
||||
@@ -9,14 +9,7 @@ commands:
|
||||
mgem:
|
||||
description: MagicGem Reforged main command
|
||||
usage: /mgem help
|
||||
aliases: [cmgem, cmg]
|
||||
permissions:
|
||||
cmagicgem.command.admin:
|
||||
default: op
|
||||
cmagicgem.command.view:
|
||||
default: op
|
||||
cmagicgem.command.embed:
|
||||
default: op
|
||||
magicgem.command.admin:
|
||||
default: op
|
||||
magicgem.command.view:
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.api;
|
||||
package cn.infstar.magicgem.api;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import pku.yim.magicgem.api.PlayerSlotType;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.command;
|
||||
package cn.infstar.magicgem.command;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.dsl;
|
||||
package cn.infstar.magicgem.dsl;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.expression;
|
||||
package cn.infstar.magicgem.expression;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.gem;
|
||||
package cn.infstar.magicgem.gem;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.junit.jupiter.api.Test;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.migration;
|
||||
package cn.infstar.magicgem.migration;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.io.TempDir;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package cn.infstar.cmagicgem.reward;
|
||||
package cn.infstar.magicgem.reward;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
+6
-8
@@ -1,8 +1,8 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.Directive;
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.cmagicgem.reward.RewardEngine;
|
||||
import cn.infstar.magicgem.dsl.Directive;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.reward.RewardEngine;
|
||||
import org.bukkit.configuration.ConfigurationSection;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.junit.jupiter.api.Test;
|
||||
@@ -27,11 +27,9 @@ class BundledConfigurationTest {
|
||||
YamlConfiguration descriptor = YamlConfiguration.loadConfiguration(new File("src/main/resources/plugin.yml"));
|
||||
|
||||
assertTrue(descriptor.getString("name").equalsIgnoreCase("MagicGem-Reforged"));
|
||||
assertTrue(descriptor.getString("main").equals("cn.infstar.magicgemreforged.MagicGemReforged"));
|
||||
assertTrue(descriptor.getString("main").equals("cn.infstar.magicgem.MagicGem"));
|
||||
assertNotNull(descriptor.getConfigurationSection("commands.mgem"));
|
||||
assertTrue(descriptor.getStringList("commands.mgem.aliases").contains("cmg"));
|
||||
assertTrue(descriptor.getStringList("commands.mgem.aliases").contains("cmgem"));
|
||||
assertNull(descriptor.getConfigurationSection("commands.cmgem"));
|
||||
assertTrue(descriptor.getStringList("commands.mgem.aliases").isEmpty());
|
||||
assertNull(descriptor.getConfigurationSection("commands.magicgem"));
|
||||
assertNotNull(descriptor.getConfigurationSection("permissions.magicgem.command.admin"));
|
||||
assertNotNull(descriptor.getConfigurationSection("permissions.magicgem.command.view"));
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package cn.infstar.cmagicgem.skill;
|
||||
package cn.infstar.magicgem.skill;
|
||||
|
||||
import cn.infstar.cmagicgem.dsl.DirectiveParser;
|
||||
import cn.infstar.magicgem.dsl.DirectiveParser;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
Reference in New Issue
Block a user