mirror of
https://e.coding.net/circlecloud/QuickShop.git
synced 2024-11-22 01:58:54 +00:00
添加了BossShop-Re的语言功能,如果检测到服务器安装了BS-RE将禁用YumCore里的语言功能
This commit is contained in:
parent
dec12d75cb
commit
d0d75a1ca6
2
pom.xml
2
pom.xml
@ -78,7 +78,7 @@
|
||||
<groupId>pw.yumc</groupId>
|
||||
<artifactId>YumCore</artifactId>
|
||||
<type>jar</type>
|
||||
<version>1.8</version>
|
||||
<version>1.7</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.github.Cnly.WowSuchCleaner</groupId>
|
||||
|
@ -1,5 +1,6 @@
|
||||
package org.maxgamer.QuickShop.Util;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
@ -20,6 +21,7 @@ import org.maxgamer.QuickShop.QuickShop;
|
||||
import pw.yumc.YumCore.bukkit.Log;
|
||||
import pw.yumc.YumCore.global.L10N;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
import java.text.DecimalFormat;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
@ -157,6 +159,10 @@ public class Util {
|
||||
* @return The human readable item name.
|
||||
*/
|
||||
public static String getName(final ItemStack i) {
|
||||
if(BS){
|
||||
String S;
|
||||
return (S=getDisplayName(i))==null?L10N.getItemName(i):S;
|
||||
}
|
||||
return L10N.getItemName(i);
|
||||
}
|
||||
|
||||
@ -368,6 +374,38 @@ public class Util {
|
||||
addTransparentBlock(Material.BREWING_STAND);
|
||||
addTransparentBlock(Material.WOODEN_DOOR);
|
||||
addTransparentBlock(Material.WOOD_STEP);
|
||||
BS=false;
|
||||
try {
|
||||
Class.forName("org.black_ixx.bossshop.managers.ItemNameManager");
|
||||
plugin.getLogger().info("检测到bossshop-re已经加载,使用bsre的物品名称功能。");
|
||||
BSplug= Bukkit.getPluginManager().getPlugin("BossShop");
|
||||
BS=true;
|
||||
BSREItemLang();
|
||||
}catch (Throwable e){
|
||||
plugin.getLogger().info("检测到bossshop-re没有加载,使用内置的物品名称功能。");
|
||||
}
|
||||
}
|
||||
private static Object BSplug;
|
||||
private static Method BS_GIS;
|
||||
private static Object BS_IM;
|
||||
private static boolean BS=false;
|
||||
public static String getDisplayName(final ItemStack item){
|
||||
try {
|
||||
BS_GIS.setAccessible(true);
|
||||
return (String) BS_GIS.invoke(BS_IM, item);
|
||||
}catch (Throwable e){}
|
||||
return null;
|
||||
}
|
||||
private static void BSREItemLang(){
|
||||
try {
|
||||
Class BSLM = Class.forName("org.black_ixx.bossshop.managers.ItemNameManager");
|
||||
Method GM=BSplug.getClass().getMethod("getManager",Class.class);
|
||||
BS_IM=GM.invoke(BSplug,BSLM);
|
||||
BS_GIS=BS_IM.getClass().getMethod("getDisplayName",ItemStack.class);
|
||||
BS=true;
|
||||
}catch (Throwable e){
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user