版本更新至 3.65
新增:版本更新检测 新增:Language2Value 对象新增 broadcast() 方法来发送给所有玩家 新增:/language2 send 命令现在可以使用 ALL 代替所有玩家 删除:FileUtils 工具的三个文本读取方法的异常打印
This commit is contained in:
		@@ -38,6 +38,7 @@ import me.skymc.taboolib.fileutils.ConfigUtils;
 | 
				
			|||||||
import me.skymc.taboolib.inventory.ItemUtils;
 | 
					import me.skymc.taboolib.inventory.ItemUtils;
 | 
				
			||||||
import me.skymc.taboolib.inventory.speciaitem.SpecialItem;
 | 
					import me.skymc.taboolib.inventory.speciaitem.SpecialItem;
 | 
				
			||||||
import me.skymc.taboolib.javashell.JavaShell;
 | 
					import me.skymc.taboolib.javashell.JavaShell;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.listener.ListenerNetWork;
 | 
				
			||||||
import me.skymc.taboolib.listener.ListenerPlayerCommand;
 | 
					import me.skymc.taboolib.listener.ListenerPlayerCommand;
 | 
				
			||||||
import me.skymc.taboolib.listener.ListenerPlayerQuit;
 | 
					import me.skymc.taboolib.listener.ListenerPlayerQuit;
 | 
				
			||||||
import me.skymc.taboolib.listener.ListenerPlayerJump;
 | 
					import me.skymc.taboolib.listener.ListenerPlayerJump;
 | 
				
			||||||
@@ -51,6 +52,7 @@ import me.skymc.taboolib.string.language2.Language2;
 | 
				
			|||||||
import me.skymc.taboolib.support.SupportPlaceholder;
 | 
					import me.skymc.taboolib.support.SupportPlaceholder;
 | 
				
			||||||
import me.skymc.taboolib.team.TagUtils;
 | 
					import me.skymc.taboolib.team.TagUtils;
 | 
				
			||||||
import me.skymc.taboolib.timecycle.TimeCycleManager;
 | 
					import me.skymc.taboolib.timecycle.TimeCycleManager;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.update.UpdateTask;
 | 
				
			||||||
import me.skymc.tlm.TLM;
 | 
					import me.skymc.tlm.TLM;
 | 
				
			||||||
import me.skymc.tlm.command.TLMCommands;
 | 
					import me.skymc.tlm.command.TLMCommands;
 | 
				
			||||||
import me.skymc.tlm.module.TabooLibraryModule;
 | 
					import me.skymc.tlm.module.TabooLibraryModule;
 | 
				
			||||||
@@ -223,6 +225,9 @@ public class Main extends JavaPlugin implements Listener {
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
		}.runTask(this);
 | 
							}.runTask(this);
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
 | 
							// 更新检测
 | 
				
			||||||
 | 
							new UpdateTask();
 | 
				
			||||||
 | 
							
 | 
				
			||||||
		// 启动
 | 
							// 启动
 | 
				
			||||||
		started = true;
 | 
							started = true;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -316,6 +321,11 @@ public class Main extends JavaPlugin implements Listener {
 | 
				
			|||||||
			getServer().getPluginManager().registerEvents(new EntityUtils(), this);
 | 
								getServer().getPluginManager().registerEvents(new EntityUtils(), this);
 | 
				
			||||||
			getServer().getPluginManager().registerEvents(new SignUtils(), this);
 | 
								getServer().getPluginManager().registerEvents(new SignUtils(), this);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							// 如果 YUM 插件存在
 | 
				
			||||||
 | 
							if (Bukkit.getPluginManager().getPlugin("YUM") != null) {
 | 
				
			||||||
 | 
								getServer().getPluginManager().registerEvents(new ListenerNetWork(), this);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public static enum StorageType {
 | 
						public static enum StorageType {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -11,6 +11,20 @@ import net.md_5.bungee.api.ChatColor;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
public class TabooLib {
 | 
					public class TabooLib {
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>汾
 | 
				
			||||||
 | 
						 * 
 | 
				
			||||||
 | 
						 * @return
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public static double getPluginVersion() {
 | 
				
			||||||
 | 
							try {
 | 
				
			||||||
 | 
								return Double.valueOf(Main.getInst().getDescription().getVersion());
 | 
				
			||||||
 | 
							} 
 | 
				
			||||||
 | 
							catch (Exception e) {
 | 
				
			||||||
 | 
								return 0D;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
	/**
 | 
						/**
 | 
				
			||||||
	 * <20><>ȡ NMS <20>汾
 | 
						 * <20><>ȡ NMS <20>汾
 | 
				
			||||||
	 * 
 | 
						 * 
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -23,7 +23,7 @@ public class Language2Command implements CommandExecutor {
 | 
				
			|||||||
			sender.sendMessage("<EFBFBD><EFBFBD>f");
 | 
								sender.sendMessage("<EFBFBD><EFBFBD>f");
 | 
				
			||||||
			sender.sendMessage("<EFBFBD><EFBFBD>b<EFBFBD><EFBFBD>l----- <20><>3<EFBFBD><33>lLanguage2 Commands <20><>b<EFBFBD><62>l-----");
 | 
								sender.sendMessage("<EFBFBD><EFBFBD>b<EFBFBD><EFBFBD>l----- <20><>3<EFBFBD><33>lLanguage2 Commands <20><>b<EFBFBD><62>l-----");
 | 
				
			||||||
			sender.sendMessage("<EFBFBD><EFBFBD>f");
 | 
								sender.sendMessage("<EFBFBD><EFBFBD>f");
 | 
				
			||||||
			sender.sendMessage("<EFBFBD><EFBFBD>f /language2 send <20><>8[<5B><>7<EFBFBD><37><EFBFBD>ҡ<EFBFBD>8] <20><>8[<5B><>7<EFBFBD><37><EFBFBD>ԡ<EFBFBD>8] <20><>8<<3C><>7<EFBFBD><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8> <20><>6- <20><>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ");
 | 
								sender.sendMessage("<EFBFBD><EFBFBD>f /language2 send <20><>8[<5B><>7<EFBFBD><37><EFBFBD><EFBFBD>/ALL<4C><EFBFBD>8] <20><>8[<5B><>7<EFBFBD><37><EFBFBD>ԡ<EFBFBD>8] <20><>8<<3C><>7<EFBFBD><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8> <20><>6- <20><>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ");
 | 
				
			||||||
			sender.sendMessage("<EFBFBD><EFBFBD>f /language2 reload <20><>6- <20><>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>");
 | 
								sender.sendMessage("<EFBFBD><EFBFBD>f /language2 reload <20><>6- <20><>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>");
 | 
				
			||||||
			sender.sendMessage("<EFBFBD><EFBFBD>f");
 | 
								sender.sendMessage("<EFBFBD><EFBFBD>f");
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
@@ -38,35 +38,41 @@ public class Language2Command implements CommandExecutor {
 | 
				
			|||||||
				MsgUtils.send(sender, "<EFBFBD><EFBFBD>4<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
 | 
									MsgUtils.send(sender, "<EFBFBD><EFBFBD>4<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			else {
 | 
								else {
 | 
				
			||||||
				// <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
									// ʱ<EFBFBD><EFBFBD>
 | 
				
			||||||
				Player player = Bukkit.getPlayerExact(args[1]);
 | 
									long time = System.currentTimeMillis();
 | 
				
			||||||
				if (player == null) {
 | 
									
 | 
				
			||||||
					MsgUtils.send(sender, "<EFBFBD><EFBFBD>4<EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
 | 
									// <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
 | 
				
			||||||
 | 
									Language2Value value = Main.getExampleLangauge2().get(args[2]);
 | 
				
			||||||
 | 
									// <20><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
				
			||||||
 | 
									if (args.length > 3) {
 | 
				
			||||||
 | 
										int i = 0;
 | 
				
			||||||
 | 
										for (String variable : args[3].split("\\|")) {
 | 
				
			||||||
 | 
											value.addPlaceholder("$" + i, variable);
 | 
				
			||||||
 | 
											i++;
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									// <20><><EFBFBD><EFBFBD><EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD>
 | 
				
			||||||
 | 
									if (args[1].equals("ALL")) {
 | 
				
			||||||
 | 
										// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
 | 
				
			||||||
 | 
										value.broadcast();
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
				else {
 | 
									else {
 | 
				
			||||||
					// ʱ<EFBFBD><EFBFBD>
 | 
										// <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
				
			||||||
					long time = System.currentTimeMillis();
 | 
										Player player = Bukkit.getPlayerExact(args[1]);
 | 
				
			||||||
					
 | 
										if (player == null) {
 | 
				
			||||||
					// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
 | 
											MsgUtils.send(sender, "<EFBFBD><EFBFBD>4<EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
 | 
				
			||||||
					Language2Value value = Main.getExampleLangauge2().get(args[2]);
 | 
					 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					// <20><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					 | 
				
			||||||
					if (args.length > 3) {
 | 
					 | 
				
			||||||
						int i = 0;
 | 
					 | 
				
			||||||
						for (String variable : args[3].split("\\|")) {
 | 
					 | 
				
			||||||
							value.addPlaceholder("$" + i, variable);
 | 
					 | 
				
			||||||
							i++;
 | 
					 | 
				
			||||||
						}
 | 
					 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
					
 | 
										else {
 | 
				
			||||||
					// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
 | 
											// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
 | 
				
			||||||
					value.send(player);
 | 
											value.send(player);
 | 
				
			||||||
					
 | 
					 | 
				
			||||||
					// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
					 | 
				
			||||||
					if (sender instanceof Player && ((Player) sender).getItemInHand().getType().equals(Material.COMMAND)) {
 | 
					 | 
				
			||||||
						MsgUtils.send(sender, "<EFBFBD><EFBFBD>7<EFBFBD><EFBFBD>Ϣ<EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD><EFBFBD>ʱ: &f" + (System.currentTimeMillis() - time) + "ms");
 | 
					 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
				
			||||||
 | 
									if (sender instanceof Player && ((Player) sender).getItemInHand().getType().equals(Material.COMMAND)) {
 | 
				
			||||||
 | 
										MsgUtils.send(sender, "<EFBFBD><EFBFBD>7<EFBFBD><EFBFBD>Ϣ<EFBFBD>ѷ<EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD>μ<EFBFBD><CEBC><EFBFBD><EFBFBD><EFBFBD>ʱ: &f" + (System.currentTimeMillis() - time) + "ms");
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		return true;
 | 
							return true;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -12,6 +12,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
 | 
				
			|||||||
import org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder;
 | 
					import org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import me.skymc.taboolib.client.LogClient;
 | 
					import me.skymc.taboolib.client.LogClient;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.message.MsgUtils;
 | 
				
			||||||
import me.skymc.taboolib.methods.MethodsUtils;
 | 
					import me.skymc.taboolib.methods.MethodsUtils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class FileUtils {
 | 
					public class FileUtils {
 | 
				
			||||||
@@ -78,7 +79,7 @@ public class FileUtils {
 | 
				
			|||||||
			bos.close();
 | 
								bos.close();
 | 
				
			||||||
			return new String(bos.toByteArray(), encode);
 | 
								return new String(bos.toByteArray(), encode);
 | 
				
			||||||
		} catch (IOException e) {
 | 
							} catch (IOException e) {
 | 
				
			||||||
			e.printStackTrace();
 | 
								MsgUtils.warn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: &4" + e.getMessage());
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		return null;
 | 
							return null;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -101,7 +102,7 @@ public class FileUtils {
 | 
				
			|||||||
			fin.close();
 | 
								fin.close();
 | 
				
			||||||
			return new String(bos.toByteArray(), encode);
 | 
								return new String(bos.toByteArray(), encode);
 | 
				
			||||||
		} catch (IOException e) {
 | 
							} catch (IOException e) {
 | 
				
			||||||
			e.printStackTrace();
 | 
								MsgUtils.warn("<EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: &4" + e.getMessage());
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		return null;
 | 
							return null;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -123,7 +124,7 @@ public class FileUtils {
 | 
				
			|||||||
			bin.close();
 | 
								bin.close();
 | 
				
			||||||
			return new String(bos.toByteArray(), conn.getContentEncoding() == null ? "UTF-8" : conn.getContentEncoding());
 | 
								return new String(bos.toByteArray(), conn.getContentEncoding() == null ? "UTF-8" : conn.getContentEncoding());
 | 
				
			||||||
		} catch (IOException e) {
 | 
							} catch (IOException e) {
 | 
				
			||||||
			e.printStackTrace();
 | 
								MsgUtils.warn("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʳ<EFBFBD><EFBFBD><EFBFBD>: &4" + e.getMessage());
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		return null;
 | 
							return null;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										28
									
								
								src/main/src/me/skymc/taboolib/listener/ListenerNetWork.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/main/src/me/skymc/taboolib/listener/ListenerNetWork.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
				
			|||||||
 | 
					package me.skymc.taboolib.listener;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.bukkit.event.EventHandler;
 | 
				
			||||||
 | 
					import org.bukkit.event.EventPriority;
 | 
				
			||||||
 | 
					import org.bukkit.event.Listener;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import me.skymc.taboolib.Main;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.message.MsgUtils;
 | 
				
			||||||
 | 
					import pw.yumc.Yum.events.PluginNetworkEvent;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @author sky
 | 
				
			||||||
 | 
					 * @since 2018<31><38>2<EFBFBD><32>23<32><33> <20><><EFBFBD><EFBFBD>11:10:03
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					public class ListenerNetWork implements Listener {
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public static final String GG = "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD>Ϊ<EFBFBD>˷<EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD>ⱻ YUM <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>á<EFBFBD>";
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						@EventHandler (priority = EventPriority.HIGHEST)
 | 
				
			||||||
 | 
						public void onNetWork(PluginNetworkEvent e) {
 | 
				
			||||||
 | 
							if (e.getPlugin() != null && e.getPlugin().equals(Main.getInst())) {
 | 
				
			||||||
 | 
								// ȡ<><C8A1><EFBFBD><EFBFBD>ֹ
 | 
				
			||||||
 | 
								e.setCancelled(false);
 | 
				
			||||||
 | 
								// <20><>̨<EFBFBD><CCA8>ʾ
 | 
				
			||||||
 | 
								MsgUtils.warn("<EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD> &4YUM &c<>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD>ֹ!");
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
package me.skymc.taboolib.string.language2;
 | 
					package me.skymc.taboolib.string.language2;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.ArrayList;
 | 
				
			||||||
import java.util.Arrays;
 | 
					import java.util.Arrays;
 | 
				
			||||||
import java.util.HashMap;
 | 
					import java.util.HashMap;
 | 
				
			||||||
import java.util.LinkedHashMap;
 | 
					import java.util.LinkedHashMap;
 | 
				
			||||||
@@ -199,6 +200,17 @@ public class Language2Value {
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public void broadcast() {
 | 
				
			||||||
 | 
							List<Player> players = new ArrayList<>();
 | 
				
			||||||
 | 
							for (Player player : Bukkit.getOnlinePlayers()) {
 | 
				
			||||||
 | 
								players.add(player);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							send(players);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
	/**
 | 
						/**
 | 
				
			||||||
	 * <20><>ȡ<EFBFBD>ı<EFBFBD>
 | 
						 * <20><>ȡ<EFBFBD>ı<EFBFBD>
 | 
				
			||||||
	 * 
 | 
						 * 
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										56
									
								
								src/main/src/me/skymc/taboolib/update/UpdateTask.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								src/main/src/me/skymc/taboolib/update/UpdateTask.java
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,56 @@
 | 
				
			|||||||
 | 
					package me.skymc.taboolib.update;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.io.File;
 | 
				
			||||||
 | 
					import java.util.regex.Matcher;
 | 
				
			||||||
 | 
					import java.util.regex.Pattern;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import org.bukkit.scheduler.BukkitRunnable;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import me.skymc.taboolib.Main;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.TabooLib;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.fileutils.FileUtils;
 | 
				
			||||||
 | 
					import me.skymc.taboolib.message.MsgUtils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * @author sky
 | 
				
			||||||
 | 
					 * @since 2018<31><38>2<EFBFBD><32>23<32><33> <20><><EFBFBD><EFBFBD>10:39:14
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					public class UpdateTask {
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						/**
 | 
				
			||||||
 | 
						 * <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
				
			||||||
 | 
						 */
 | 
				
			||||||
 | 
						public UpdateTask() {
 | 
				
			||||||
 | 
							new BukkitRunnable() {
 | 
				
			||||||
 | 
								
 | 
				
			||||||
 | 
								@Override
 | 
				
			||||||
 | 
								public void run() {
 | 
				
			||||||
 | 
									// <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
 | 
				
			||||||
 | 
									if (!Main.getInst().getConfig().getBoolean("UPDATE-CHECK")) {
 | 
				
			||||||
 | 
										return;
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
									
 | 
				
			||||||
 | 
									String value = FileUtils.getStringFromURL("https://github.com/Bkm016/TabooLib/releases", 1024);
 | 
				
			||||||
 | 
									Pattern pattern = Pattern.compile("<a href=\"/Bkm016/TabooLib/releases/tag/(\\S+)\">");
 | 
				
			||||||
 | 
									Matcher matcher = pattern.matcher(value);
 | 
				
			||||||
 | 
									if (matcher.find()) {
 | 
				
			||||||
 | 
										// <20><><EFBFBD>°汾
 | 
				
			||||||
 | 
										double newVersion = Double.valueOf(matcher.group(1));
 | 
				
			||||||
 | 
										// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°<EFBFBD>
 | 
				
			||||||
 | 
										if (TabooLib.getPluginVersion() == newVersion) {
 | 
				
			||||||
 | 
											MsgUtils.send("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>°<EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!");
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
										else {
 | 
				
			||||||
 | 
											MsgUtils.send("&8####################################################");
 | 
				
			||||||
 | 
											MsgUtils.send("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µİ汾<EFBFBD><EFBFBD><EFBFBD><EFBFBD>!");
 | 
				
			||||||
 | 
											MsgUtils.send("<EFBFBD><EFBFBD>ǰ<EFBFBD>汾: &f" + TabooLib.getPluginVersion());
 | 
				
			||||||
 | 
											MsgUtils.send("<EFBFBD><EFBFBD><EFBFBD>°汾: &f" + newVersion);
 | 
				
			||||||
 | 
											MsgUtils.send("<EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>ַ: &fhttp://www.mcbbs.net/thread-773065-1-1.html");
 | 
				
			||||||
 | 
											MsgUtils.send("<EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>ַ: &fhttps://github.com/Bkm016/TabooLib/");
 | 
				
			||||||
 | 
											MsgUtils.send("&8####################################################");
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}.runTaskLaterAsynchronously(Main.getInst(), 100);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -17,6 +17,9 @@ DATAURL:
 | 
				
			|||||||
# 启用后将收到来自其他插件的调试信息
 | 
					# 启用后将收到来自其他插件的调试信息
 | 
				
			||||||
DEBUG: false
 | 
					DEBUG: false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# 是否启用更新检测
 | 
				
			||||||
 | 
					UPDATE-CHECK: true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# 是否在关闭服务器时清理玩家数据
 | 
					# 是否在关闭服务器时清理玩家数据
 | 
				
			||||||
# 该配置将在启用数据库储存时失效
 | 
					# 该配置将在启用数据库储存时失效
 | 
				
			||||||
DELETE-DATA: false
 | 
					DELETE-DATA: false
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user