Compare commits
5 Commits
2fbf5cfd7d
...
inside
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3bfa81f94f | ||
|
|
0529706b62 | ||
|
|
f983a1640c | ||
|
|
8c68028924 | ||
|
|
b268a74eeb |
3
.gitignore
vendored
3
.gitignore
vendored
@@ -40,4 +40,5 @@ bin/
|
||||
.vscode/
|
||||
|
||||
### Mac OS ###
|
||||
.DS_Store
|
||||
.DS_Store
|
||||
/AIedit.txt
|
||||
|
||||
6
.idea/misc.xml
generated
6
.idea/misc.xml
generated
@@ -1,6 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||
<component name="JavadocGenerationManager">
|
||||
<option name="OUTPUT_DIRECTORY" value="$PROJECT_DIR$/javadoc" />
|
||||
<option name="OPTION_DOCUMENT_TAG_USE" value="true" />
|
||||
<option name="OPTION_DOCUMENT_TAG_AUTHOR" value="true" />
|
||||
<option name="OPTION_DOCUMENT_TAG_VERSION" value="true" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="ms-21" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
|
||||
@@ -4,7 +4,7 @@ plugins {
|
||||
}
|
||||
|
||||
group = 'com.playerblocklife'
|
||||
version = '2.0.0-1.20.4'
|
||||
version = '3.0.0-experimental-1.20.4'
|
||||
|
||||
sourceCompatibility = 17
|
||||
targetCompatibility = 17
|
||||
|
||||
@@ -5,5 +5,5 @@ org.gradle.caching=true
|
||||
org.gradle.daemon=true
|
||||
|
||||
# ????
|
||||
pluginVersion=2.0.0-1.20.4
|
||||
pluginVersion=2.1.0-1.20.4
|
||||
mcVersion=1.20.4
|
||||
98
javadoc/allclasses-index.html
Normal file
98
javadoc/allclasses-index.html
Normal file
@@ -0,0 +1,98 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>所有类和接口</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="class index">
|
||||
<meta name="generator" content="javadoc/AllClassesIndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="script.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="all-classes-index-page">
|
||||
<script type="text/javascript">var pathtoroot = "./";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="overview-tree.html">树</a></li>
|
||||
<li><a href="index-files/index-1.html">索引</a></li>
|
||||
<li><a href="help-doc.html#all-classes">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="所有类和接口" class="title">所有类和接口</h1>
|
||||
</div>
|
||||
<div id="all-classes-table">
|
||||
<div class="caption"><span>类</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">类</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/AdminCommands.html" title="com.playerblocklife中的类">AdminCommands</a></div>
|
||||
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/BlockBreakListener.html" title="com.playerblocklife中的类">BlockBreakListener</a></div>
|
||||
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/CheckLifeBlocksCommand.html" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a></div>
|
||||
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></div>
|
||||
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
|
||||
<div class="block">配置管理器 - 负责加载、保存和管理插件的配置文件</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></div>
|
||||
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
|
||||
<div class="block">生命值系统 - 负责管理玩家生命值和状态效果</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></div>
|
||||
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></div>
|
||||
<div class="col-last even-row-color all-classes-table all-classes-table-tab2">
|
||||
<div class="block">PlayerBlockLife插件主类 - 玩家生命方块系统的核心控制器</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></div>
|
||||
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
|
||||
<div class="block">玩家方块管理器 - 负责管理玩家生命方块的核心组件</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/PlayerJoinListener.html" title="com.playerblocklife中的类">PlayerJoinListener</a></div>
|
||||
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/PlayerQuitListener.html" title="com.playerblocklife中的类">PlayerQuitListener</a></div>
|
||||
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first even-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/SetLifeBlocksCommand.html" title="com.playerblocklife中的类">SetLifeBlocksCommand</a></div>
|
||||
<div class="col-last even-row-color all-classes-table all-classes-table-tab2"> </div>
|
||||
<div class="col-first odd-row-color all-classes-table all-classes-table-tab2"><a href="com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></div>
|
||||
<div class="col-last odd-row-color all-classes-table all-classes-table-tab2">
|
||||
<div class="block">皮肤管理器 - 负责玩家皮肤的获取、缓存和应用</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
64
javadoc/allpackages-index.html
Normal file
64
javadoc/allpackages-index.html
Normal file
@@ -0,0 +1,64 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>所有程序包</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="package index">
|
||||
<meta name="generator" content="javadoc/AllPackagesIndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="script.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="all-packages-index-page">
|
||||
<script type="text/javascript">var pathtoroot = "./";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="overview-tree.html">树</a></li>
|
||||
<li><a href="index-files/index-1.html">索引</a></li>
|
||||
<li><a href="help-doc.html#all-packages">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="所有程序包" class="title">所有程序包</h1>
|
||||
</div>
|
||||
<div class="caption"><span>程序包概要</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">程序包</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><a href="com/playerblocklife/package-summary.html">com.playerblocklife</a></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
187
javadoc/com/playerblocklife/AdminCommands.html
Normal file
187
javadoc/com/playerblocklife/AdminCommands.html
Normal file
@@ -0,0 +1,187 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>AdminCommands</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: AdminCommands">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/AdminCommands.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 AdminCommands" class="title">类 AdminCommands</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.AdminCommands</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>org.bukkit.command.CommandExecutor</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">AdminCommands</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>
|
||||
implements org.bukkit.command.CommandExecutor</span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">AdminCommands</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand</a><wbr>(org.bukkit.command.CommandSender sender,
|
||||
org.bukkit.command.Command command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> label,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>[] args)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>AdminCommands</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">AdminCommands</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])">
|
||||
<h3>onCommand</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">onCommand</span><wbr><span class="parameters">(org.bukkit.command.CommandSender sender,
|
||||
org.bukkit.command.Command command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> label,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>[] args)</span></div>
|
||||
<dl class="notes">
|
||||
<dt>指定者:</dt>
|
||||
<dd><code>onCommand</code> 在接口中 <code>org.bukkit.command.CommandExecutor</code></dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
186
javadoc/com/playerblocklife/BlockBreakListener.html
Normal file
186
javadoc/com/playerblocklife/BlockBreakListener.html
Normal file
@@ -0,0 +1,186 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>BlockBreakListener</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: BlockBreakListener">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/BlockBreakListener.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 BlockBreakListener" class="title">类 BlockBreakListener</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.BlockBreakListener</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>org.bukkit.event.Listener</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">BlockBreakListener</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>
|
||||
implements org.bukkit.event.Listener</span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">BlockBreakListener</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBlockBreak(org.bukkit.event.block.BlockBreakEvent)" class="member-name-link">onBlockBreak</a><wbr>(org.bukkit.event.block.BlockBreakEvent event)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onBlockPlace(org.bukkit.event.block.BlockPlaceEvent)" class="member-name-link">onBlockPlace</a><wbr>(org.bukkit.event.block.BlockPlaceEvent event)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>BlockBreakListener</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">BlockBreakListener</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onBlockBreak(org.bukkit.event.block.BlockBreakEvent)">
|
||||
<h3>onBlockBreak</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onBlockBreak</span><wbr><span class="parameters">(org.bukkit.event.block.BlockBreakEvent event)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="onBlockPlace(org.bukkit.event.block.BlockPlaceEvent)">
|
||||
<h3>onBlockPlace</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onBlockPlace</span><wbr><span class="parameters">(org.bukkit.event.block.BlockPlaceEvent event)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
187
javadoc/com/playerblocklife/CheckLifeBlocksCommand.html
Normal file
187
javadoc/com/playerblocklife/CheckLifeBlocksCommand.html
Normal file
@@ -0,0 +1,187 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>CheckLifeBlocksCommand</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: CheckLifeBlocksCommand">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/CheckLifeBlocksCommand.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 CheckLifeBlocksCommand" class="title">类 CheckLifeBlocksCommand</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.CheckLifeBlocksCommand</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>org.bukkit.command.CommandExecutor</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">CheckLifeBlocksCommand</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>
|
||||
implements org.bukkit.command.CommandExecutor</span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">CheckLifeBlocksCommand</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand</a><wbr>(org.bukkit.command.CommandSender sender,
|
||||
org.bukkit.command.Command command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> label,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>[] args)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>CheckLifeBlocksCommand</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">CheckLifeBlocksCommand</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])">
|
||||
<h3>onCommand</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">onCommand</span><wbr><span class="parameters">(org.bukkit.command.CommandSender sender,
|
||||
org.bukkit.command.Command command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> label,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>[] args)</span></div>
|
||||
<dl class="notes">
|
||||
<dt>指定者:</dt>
|
||||
<dd><code>onCommand</code> 在接口中 <code>org.bukkit.command.CommandExecutor</code></dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
669
javadoc/com/playerblocklife/ConfigManager.html
Normal file
669
javadoc/com/playerblocklife/ConfigManager.html
Normal file
@@ -0,0 +1,669 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>ConfigManager</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: ConfigManager">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/ConfigManager.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 ConfigManager" class="title">类 ConfigManager</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.ConfigManager</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">ConfigManager</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></span></div>
|
||||
<div class="block">配置管理器 - 负责加载、保存和管理插件的配置文件
|
||||
|
||||
<p>主要功能包括:
|
||||
<ul>
|
||||
<li>加载和验证配置文件</li>
|
||||
<li>配置版本检查和自动更新</li>
|
||||
<li>提供类型安全的配置项访问方法</li>
|
||||
<li>处理配置文件的保存和重载</li>
|
||||
<li>管理SkinsRestorer插件集成配置</li>
|
||||
<li>支持多种皮肤来源的优先级配置</li>
|
||||
</ul>
|
||||
|
||||
<p><b>SkinsRestorer配置支持:</b>
|
||||
<ul>
|
||||
<li><code>skin.source</code>:皮肤来源优先级(skinsrestorer/player_profile/local_cache)</li>
|
||||
<li><code>skin.use-skinsrestorer</code>:是否启用SkinsRestorer支持</li>
|
||||
<li><code>skin.cache.expire_days</code>:皮肤缓存过期时间</li>
|
||||
<li>默认配置已优化,优先使用SkinsRestorer以支持离线服务器</li>
|
||||
</ul>
|
||||
</p></div>
|
||||
<dl class="notes">
|
||||
<dt>从以下版本开始:</dt>
|
||||
<dd>1.0.0</dd>
|
||||
<dt>版本:</dt>
|
||||
<dd>2.1.0</dd>
|
||||
<dt>作者:</dt>
|
||||
<dd>xiaobai</dd>
|
||||
</dl>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">ConfigManager</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color">
|
||||
<div class="block">构造一个新的配置管理器</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAutoSaveInterval()" class="member-name-link">getAutoSaveInterval</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBlockMaterial()" class="member-name-link">getBlockMaterial</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBlocksPerPlayer()" class="member-name-link">getBlocksPerPlayer</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBroadcastRange()" class="member-name-link">getBroadcastRange</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCacheExpireDays()" class="member-name-link">getCacheExpireDays</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.configuration.file.FileConfiguration</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getConfig()" class="member-name-link">getConfig</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取配置对象</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDepth()" class="member-name-link">getDepth</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExpRewardAmount()" class="member-name-link">getExpRewardAmount</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getExternalMessageFileName()" class="member-name-link">getExternalMessageFileName</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMaxAttempts()" class="member-name-link">getMaxAttempts</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMessage(java.lang.String,java.lang.String)" class="member-name-link">getMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMinDistance()" class="member-name-link">getMinDistance</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOnFailureAction()" class="member-name-link">getOnFailureAction</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSkinSource()" class="member-name-link">getSkinSource</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取皮肤来源配置</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSpreadRange()" class="member-name-link">getSpreadRange</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getStorageType()" class="member-name-link">getStorageType</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isAdminOnly(java.lang.String)" class="member-name-link">isAdminOnly</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isAdminUseAllowed(java.lang.String)" class="member-name-link">isAdminUseAllowed</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isAutoGenerationEnabled()" class="member-name-link">isAutoGenerationEnabled</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isAutoSaveEnabled()" class="member-name-link">isAutoSaveEnabled</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isBecomeSpectator()" class="member-name-link">isBecomeSpectator</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isBroadcastOnBlockBreak()" class="member-name-link">isBroadcastOnBlockBreak</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isBroadcastOnPlayerDeath()" class="member-name-link">isBroadcastOnPlayerDeath</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isCommandEnabled(java.lang.String)" class="member-name-link">isCommandEnabled</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isDieWhenBlocksGone()" class="member-name-link">isDieWhenBlocksGone</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isGiveExpReward()" class="member-name-link">isGiveExpReward</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isHealthSystemEnabled()" class="member-name-link">isHealthSystemEnabled</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isProtectFromExplosions()" class="member-name-link">isProtectFromExplosions</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isProtectFromFire()" class="member-name-link">isProtectFromFire</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isProtectFromPistons()" class="member-name-link">isProtectFromPistons</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isRequireOpenSky()" class="member-name-link">isRequireOpenSky</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isSelfUseAllowed(java.lang.String)" class="member-name-link">isSelfUseAllowed</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isSkinSystemEnabled()" class="member-name-link">isSkinSystemEnabled</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadConfig()" class="member-name-link">loadConfig</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">加载插件配置</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#reloadConfig()" class="member-name-link">reloadConfig</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">重新加载配置文件</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#saveConfig()" class="member-name-link">saveConfig</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">保存当前配置到文件</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#useExternalMessageFile()" class="member-name-link">useExternalMessageFile</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#useSkinsRestorer()" class="member-name-link">useSkinsRestorer</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">检查是否启用SkinsRestorer插件支持</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>ConfigManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">ConfigManager</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
<div class="block">构造一个新的配置管理器</div>
|
||||
<dl class="notes">
|
||||
<dt>参数:</dt>
|
||||
<dd><code>plugin</code> - 插件主类实例,用于访问插件相关功能</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="loadConfig()">
|
||||
<h3>loadConfig</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">loadConfig</span>()</div>
|
||||
<div class="block">加载插件配置
|
||||
|
||||
<p>执行以下操作:
|
||||
<ol>
|
||||
<li>确保插件数据文件夹存在</li>
|
||||
<li>如果配置文件不存在,从JAR中复制默认配置</li>
|
||||
<li>调用reloadConfig()重新加载配置</li>
|
||||
</ol></div>
|
||||
<dl class="notes">
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><a href="#reloadConfig()"><code>reloadConfig()</code></a></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="reloadConfig()">
|
||||
<h3>reloadConfig</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">reloadConfig</span>()</div>
|
||||
<div class="block">重新加载配置文件
|
||||
|
||||
<p>执行以下操作:
|
||||
<ol>
|
||||
<li>从磁盘重新加载配置文件</li>
|
||||
<li>加载JAR中的默认配置作为后备</li>
|
||||
<li>检查配置版本并进行必要的更新</li>
|
||||
</ol></div>
|
||||
<dl class="notes">
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><code>checkConfigVersion()</code></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="saveConfig()">
|
||||
<h3>saveConfig</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">saveConfig</span>()</div>
|
||||
<div class="block">保存当前配置到文件
|
||||
|
||||
<p>将内存中的配置数据写入到config.yml文件中。
|
||||
如果保存失败,会记录错误日志。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>抛出:</dt>
|
||||
<dd><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/io/IOException.html" title="java.io中的类或接口" class="external-link">IOException</a></code> - 如果文件写入失败</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getConfig()">
|
||||
<h3>getConfig</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">org.bukkit.configuration.file.FileConfiguration</span> <span class="element-name">getConfig</span>()</div>
|
||||
<div class="block">获取配置对象
|
||||
|
||||
<p>如果配置对象为null,会自动调用reloadConfig()加载配置。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>返回:</dt>
|
||||
<dd>当前的FileConfiguration配置对象</dd>
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><a href="#reloadConfig()"><code>reloadConfig()</code></a></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getBlocksPerPlayer()">
|
||||
<h3>getBlocksPerPlayer</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getBlocksPerPlayer</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getSpreadRange()">
|
||||
<h3>getSpreadRange</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getSpreadRange</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getMinDistance()">
|
||||
<h3>getMinDistance</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getMinDistance</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getDepth()">
|
||||
<h3>getDepth</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getDepth</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getBlockMaterial()">
|
||||
<h3>getBlockMaterial</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getBlockMaterial</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isDieWhenBlocksGone()">
|
||||
<h3>isDieWhenBlocksGone</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isDieWhenBlocksGone</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isBecomeSpectator()">
|
||||
<h3>isBecomeSpectator</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isBecomeSpectator</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isHealthSystemEnabled()">
|
||||
<h3>isHealthSystemEnabled</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isHealthSystemEnabled</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isSkinSystemEnabled()">
|
||||
<h3>isSkinSystemEnabled</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isSkinSystemEnabled</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getSkinSource()">
|
||||
<h3>getSkinSource</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getSkinSource</span>()</div>
|
||||
<div class="block">获取皮肤来源配置
|
||||
|
||||
<p>支持的皮肤来源:
|
||||
<ul>
|
||||
<li><b>skinsrestorer</b>:优先从SkinsRestorer插件获取皮肤纹理数据
|
||||
<ul>
|
||||
<li>推荐用于离线服务器</li>
|
||||
<li>支持玩家自定义皮肤</li>
|
||||
<li>避免默认Steve皮肤问题</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><b>player_profile</b>:优先使用Bukkit的PlayerProfile API
|
||||
<ul>
|
||||
<li>需要玩家在线验证</li>
|
||||
<li>适合在线服务器</li>
|
||||
<li>支持Mojang官方皮肤</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><b>local_cache</b>:优先从本地缓存加载皮肤数据
|
||||
<ul>
|
||||
<li>减少网络请求</li>
|
||||
<li>提高加载速度</li>
|
||||
<li>支持离线使用</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>默认配置已将此值设为"skinsrestorer",以优化离线服务器体验。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>返回:</dt>
|
||||
<dd>皮肤来源配置值</dd>
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><a href="#useSkinsRestorer()"><code>useSkinsRestorer()</code></a></li>
|
||||
<li><a href="SkinManager.html" title="com.playerblocklife中的类"><code>#loadPlayerSkinAsync()</code></a></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="useSkinsRestorer()">
|
||||
<h3>useSkinsRestorer</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">useSkinsRestorer</span>()</div>
|
||||
<div class="block">检查是否启用SkinsRestorer插件支持
|
||||
|
||||
<p>当此方法返回true时,插件将:
|
||||
<ul>
|
||||
<li>优先从SkinsRestorer插件获取玩家皮肤纹理</li>
|
||||
<li>支持离线服务器获取玩家自定义皮肤</li>
|
||||
<li>避免方块总是显示默认Steve皮肤的问题</li>
|
||||
<li>使用反射安全调用SkinsRestorer API,无需硬依赖</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>默认配置已将此值设为true,以优化离线服务器体验。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>返回:</dt>
|
||||
<dd>如果启用SkinsRestorer支持返回true,否则返回false</dd>
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><a href="#getSkinSource()"><code>getSkinSource()</code></a></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getCacheExpireDays()">
|
||||
<h3>getCacheExpireDays</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getCacheExpireDays</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isAutoSaveEnabled()">
|
||||
<h3>isAutoSaveEnabled</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isAutoSaveEnabled</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getAutoSaveInterval()">
|
||||
<h3>getAutoSaveInterval</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getAutoSaveInterval</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getStorageType()">
|
||||
<h3>getStorageType</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getStorageType</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isBroadcastOnBlockBreak()">
|
||||
<h3>isBroadcastOnBlockBreak</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isBroadcastOnBlockBreak</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isBroadcastOnPlayerDeath()">
|
||||
<h3>isBroadcastOnPlayerDeath</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isBroadcastOnPlayerDeath</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getBroadcastRange()">
|
||||
<h3>getBroadcastRange</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getBroadcastRange</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isGiveExpReward()">
|
||||
<h3>isGiveExpReward</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isGiveExpReward</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getExpRewardAmount()">
|
||||
<h3>getExpRewardAmount</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getExpRewardAmount</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isProtectFromExplosions()">
|
||||
<h3>isProtectFromExplosions</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isProtectFromExplosions</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isProtectFromFire()">
|
||||
<h3>isProtectFromFire</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isProtectFromFire</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isProtectFromPistons()">
|
||||
<h3>isProtectFromPistons</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isProtectFromPistons</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isAutoGenerationEnabled()">
|
||||
<h3>isAutoGenerationEnabled</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isAutoGenerationEnabled</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isRequireOpenSky()">
|
||||
<h3>isRequireOpenSky</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isRequireOpenSky</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getMaxAttempts()">
|
||||
<h3>getMaxAttempts</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getMaxAttempts</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getOnFailureAction()">
|
||||
<h3>getOnFailureAction</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getOnFailureAction</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isCommandEnabled(java.lang.String)">
|
||||
<h3>isCommandEnabled</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isCommandEnabled</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isSelfUseAllowed(java.lang.String)">
|
||||
<h3>isSelfUseAllowed</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isSelfUseAllowed</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isAdminUseAllowed(java.lang.String)">
|
||||
<h3>isAdminUseAllowed</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isAdminUseAllowed</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isAdminOnly(java.lang.String)">
|
||||
<h3>isAdminOnly</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isAdminOnly</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> commandName)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="useExternalMessageFile()">
|
||||
<h3>useExternalMessageFile</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">useExternalMessageFile</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getExternalMessageFileName()">
|
||||
<h3>getExternalMessageFileName</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getExternalMessageFileName</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getMessage(java.lang.String,java.lang.String)">
|
||||
<h3>getMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
256
javadoc/com/playerblocklife/LifeSystem.html
Normal file
256
javadoc/com/playerblocklife/LifeSystem.html
Normal file
@@ -0,0 +1,256 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>LifeSystem</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: LifeSystem">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/LifeSystem.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 LifeSystem" class="title">类 LifeSystem</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.LifeSystem</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">LifeSystem</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></span></div>
|
||||
<div class="block">生命值系统 - 负责管理玩家生命值和状态效果
|
||||
|
||||
<p>根据玩家剩余生命方块数量计算生命值,并应用相应的状态效果:
|
||||
<ul>
|
||||
<li>监控玩家剩余方块数量变化</li>
|
||||
<li>计算对应的生命值比例</li>
|
||||
<li>应用虚弱、缓慢、失明等负面效果</li>
|
||||
<li>处理玩家淘汰和复活逻辑</li>
|
||||
<li>提供生命值相关的音效和视觉反馈</li>
|
||||
</ul>
|
||||
|
||||
<p>生命值计算公式:
|
||||
<pre>
|
||||
5个方块 → 20点生命值(满血)
|
||||
4个方块 → 16点生命值
|
||||
3个方块 → 12点生命值
|
||||
2个方块 → 8点生命值
|
||||
1个方块 → 4点生命值
|
||||
0个方块 → 0点生命值(淘汰)
|
||||
</pre></div>
|
||||
<dl class="notes">
|
||||
<dt>从以下版本开始:</dt>
|
||||
<dd>1.0.0</dd>
|
||||
<dt>版本:</dt>
|
||||
<dd>2.1.0</dd>
|
||||
<dt>作者:</dt>
|
||||
<dd>xiaobai</dd>
|
||||
</dl>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">LifeSystem</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkAllPlayers()" class="member-name-link">checkAllPlayers</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#checkPlayerHealth(org.bukkit.entity.Player)" class="member-name-link">checkPlayerHealth</a><wbr>(org.bukkit.entity.Player player)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="java.lang中的类或接口" class="external-link">Integer</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPlayerHealth(java.util.UUID)" class="member-name-link">getPlayerHealth</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#handlePlayerDeath(java.util.UUID)" class="member-name-link">handlePlayerDeath</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isPlayerAlive(java.util.UUID)" class="member-name-link">isPlayerAlive</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#revivePlayer(org.bukkit.entity.Player)" class="member-name-link">revivePlayer</a><wbr>(org.bukkit.entity.Player player)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setPlayerHealth(java.util.UUID,int)" class="member-name-link">setPlayerHealth</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId,
|
||||
int health)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>LifeSystem</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">LifeSystem</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="checkAllPlayers()">
|
||||
<h3>checkAllPlayers</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">checkAllPlayers</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="checkPlayerHealth(org.bukkit.entity.Player)">
|
||||
<h3>checkPlayerHealth</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">checkPlayerHealth</span><wbr><span class="parameters">(org.bukkit.entity.Player player)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="handlePlayerDeath(java.util.UUID)">
|
||||
<h3>handlePlayerDeath</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">handlePlayerDeath</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getPlayerHealth(java.util.UUID)">
|
||||
<h3>getPlayerHealth</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="java.lang中的类或接口" class="external-link">Integer</a></span> <span class="element-name">getPlayerHealth</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="setPlayerHealth(java.util.UUID,int)">
|
||||
<h3>setPlayerHealth</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">setPlayerHealth</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId,
|
||||
int health)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isPlayerAlive(java.util.UUID)">
|
||||
<h3>isPlayerAlive</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isPlayerAlive</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="revivePlayer(org.bukkit.entity.Player)">
|
||||
<h3>revivePlayer</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">revivePlayer</span><wbr><span class="parameters">(org.bukkit.entity.Player player)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
299
javadoc/com/playerblocklife/MessageManager.html
Normal file
299
javadoc/com/playerblocklife/MessageManager.html
Normal file
@@ -0,0 +1,299 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>MessageManager</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: MessageManager">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/MessageManager.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 MessageManager" class="title">类 MessageManager</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.MessageManager</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">MessageManager</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">MessageManager</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBroadcastMessage(java.lang.String,java.lang.String)" class="member-name-link">getBroadcastMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取广播消息</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCommandMessage(java.lang.String,java.lang.String,java.lang.String)" class="member-name-link">getCommandMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取命令消息</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getConsoleMessage(java.lang.String,java.lang.String)" class="member-name-link">getConsoleMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取控制台消息</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFormattedMessage(java.lang.String,java.lang.String,java.util.Map)" class="member-name-link">getFormattedMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>> variables)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取格式化消息(替换变量)</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getGameMessage(java.lang.String,java.lang.String)" class="member-name-link">getGameMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取游戏内消息</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMessage(java.lang.String,java.lang.String)" class="member-name-link">getMessage</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取消息</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMessageFilePath()" class="member-name-link">getMessageFilePath</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取消息文件路径</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasExternalMessageFile()" class="member-name-link">hasExternalMessageFile</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">检查消息文件是否存在</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadMessages()" class="member-name-link">loadMessages</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">加载消息配置</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#reloadMessages()" class="member-name-link">reloadMessages</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">重新加载消息配置</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>MessageManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">MessageManager</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="loadMessages()">
|
||||
<h3>loadMessages</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">loadMessages</span>()</div>
|
||||
<div class="block">加载消息配置</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="reloadMessages()">
|
||||
<h3>reloadMessages</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">reloadMessages</span>()</div>
|
||||
<div class="block">重新加载消息配置</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getMessage(java.lang.String,java.lang.String)">
|
||||
<h3>getMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</span></div>
|
||||
<div class="block">获取消息</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getFormattedMessage(java.lang.String,java.lang.String,java.util.Map)">
|
||||
<h3>getFormattedMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getFormattedMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>> variables)</span></div>
|
||||
<div class="block">获取格式化消息(替换变量)</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getConsoleMessage(java.lang.String,java.lang.String)">
|
||||
<h3>getConsoleMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getConsoleMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</span></div>
|
||||
<div class="block">获取控制台消息</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getGameMessage(java.lang.String,java.lang.String)">
|
||||
<h3>getGameMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getGameMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</span></div>
|
||||
<div class="block">获取游戏内消息</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getCommandMessage(java.lang.String,java.lang.String,java.lang.String)">
|
||||
<h3>getCommandMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getCommandMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</span></div>
|
||||
<div class="block">获取命令消息</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getBroadcastMessage(java.lang.String,java.lang.String)">
|
||||
<h3>getBroadcastMessage</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getBroadcastMessage</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> path,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> defaultValue)</span></div>
|
||||
<div class="block">获取广播消息</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="hasExternalMessageFile()">
|
||||
<h3>hasExternalMessageFile</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">hasExternalMessageFile</span>()</div>
|
||||
<div class="block">检查消息文件是否存在</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getMessageFilePath()">
|
||||
<h3>getMessageFilePath</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a></span> <span class="element-name">getMessageFilePath</span>()</div>
|
||||
<div class="block">获取消息文件路径</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
401
javadoc/com/playerblocklife/PlayerBlockLife.html
Normal file
401
javadoc/com/playerblocklife/PlayerBlockLife.html
Normal file
@@ -0,0 +1,401 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>PlayerBlockLife</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: PlayerBlockLife">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/PlayerBlockLife.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 PlayerBlockLife" class="title">类 PlayerBlockLife</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">org.bukkit.plugin.PluginBase
|
||||
<div class="inheritance">org.bukkit.plugin.java.JavaPlugin
|
||||
<div class="inheritance">com.playerblocklife.PlayerBlockLife</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>io.papermc.paper.plugin.lifecycle.event.LifecycleEventOwner</code>, <code>org.bukkit.command.CommandExecutor</code>, <code>org.bukkit.command.TabCompleter</code>, <code>org.bukkit.command.TabExecutor</code>, <code>org.bukkit.plugin.Plugin</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PlayerBlockLife</span>
|
||||
<span class="extends-implements">extends org.bukkit.plugin.java.JavaPlugin</span></div>
|
||||
<div class="block">PlayerBlockLife插件主类 - 玩家生命方块系统的核心控制器
|
||||
|
||||
<p>这个插件为Minecraft服务器添加了一个独特的游戏机制:每个玩家拥有一定数量的生命方块,
|
||||
这些方块使用玩家的皮肤作为材质。当其他玩家挖光某个玩家的所有生命方块时,该玩家会被淘汰。</p>
|
||||
|
||||
<p>主要功能:
|
||||
<ul>
|
||||
<li>管理玩家生命方块的生成和销毁</li>
|
||||
<li>处理玩家皮肤的获取和应用</li>
|
||||
<li>监控玩家生命值状态</li>
|
||||
<li>提供完整的命令和权限系统</li>
|
||||
<li>支持配置热重载和数据持久化</li>
|
||||
</ul></div>
|
||||
<dl class="notes">
|
||||
<dt>从以下版本开始:</dt>
|
||||
<dd>1.0.0</dd>
|
||||
<dt>版本:</dt>
|
||||
<dd>3.0.0-experimental-1.20.4</dd>
|
||||
<dt>作者:</dt>
|
||||
<dd>xiaobai</dd>
|
||||
</dl>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">PlayerBlockLife</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">静态方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBlockManager()" class="member-name-link">getBlockManager</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getConfigManager()" class="member-name-link">getConfigManager</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getInstance()" class="member-name-link">getInstance</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
|
||||
<div class="block">获取插件单例实例</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLifeSystem()" class="member-name-link">getLifeSystem</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMessageManager()" class="member-name-link">getMessageManager</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSkinManager()" class="member-name-link">getSkinManager</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#logError(java.lang.String,java.lang.Throwable)" class="member-name-link">logError</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> message,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Throwable.html" title="java.lang中的类或接口" class="external-link">Throwable</a> throwable)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#logInfo(java.lang.String)" class="member-name-link">logInfo</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> message)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#logWarning(java.lang.String)" class="member-name-link">logWarning</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> message)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onDisable()" class="member-name-link">onDisable</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">插件禁用时调用,执行清理操作</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onEnable()" class="member-name-link">onEnable</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">插件启用时调用,执行初始化操作</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#reloadConfig()" class="member-name-link">reloadConfig</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">重写 reloadConfig 方法,避免循环依赖</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#reloadPluginConfig()" class="member-name-link">reloadPluginConfig</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">插件的完整重载方法(用于命令)</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-org.bukkit.plugin.java.JavaPlugin">从类继承的方法 org.bukkit.plugin.java.JavaPlugin</h3>
|
||||
<code>getClassLoader, getCommand, getConfig, getDataFolder, getDefaultBiomeProvider, getDefaultWorldGenerator, getDescription, getFile, getLifecycleManager, getLogger, getPlugin, getPluginLoader, getPluginMeta, getProvidingPlugin, getResource, getServer, getTextResource, init, init, isEnabled, isNaggable, onCommand, onLoad, onTabComplete, saveConfig, saveDefaultConfig, saveResource, setEnabled, setNaggable, toString</code></div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-org.bukkit.plugin.PluginBase">从类继承的方法 org.bukkit.plugin.PluginBase</h3>
|
||||
<code>equals, getName, hashCode</code></div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-org.bukkit.plugin.Plugin">从接口继承的方法 org.bukkit.plugin.Plugin</h3>
|
||||
<code>getComponentLogger, getLog4JLogger, getSLF4JLogger</code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>()">
|
||||
<h3>PlayerBlockLife</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">PlayerBlockLife</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onEnable()">
|
||||
<h3>onEnable</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onEnable</span>()</div>
|
||||
<div class="block">插件启用时调用,执行初始化操作
|
||||
|
||||
<p>初始化流程:
|
||||
<ol>
|
||||
<li>保存默认配置文件</li>
|
||||
<li>初始化所有管理器(注意依赖顺序)</li>
|
||||
<li>加载配置和消息数据</li>
|
||||
<li>注册事件监听器</li>
|
||||
<li>注册命令执行器</li>
|
||||
<li>加载玩家数据和皮肤缓存</li>
|
||||
<li>启动定时任务</li>
|
||||
</ol></div>
|
||||
<dl class="notes">
|
||||
<dt>指定者:</dt>
|
||||
<dd><code>onEnable</code> 在接口中 <code>org.bukkit.plugin.Plugin</code></dd>
|
||||
<dt>覆盖:</dt>
|
||||
<dd><code>onEnable</code> 在类中 <code>org.bukkit.plugin.java.JavaPlugin</code></dd>
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><a href="#onDisable()"><code>onDisable()</code></a></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="onDisable()">
|
||||
<h3>onDisable</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onDisable</span>()</div>
|
||||
<div class="block">插件禁用时调用,执行清理操作
|
||||
|
||||
<p>执行以下清理操作:
|
||||
<ul>
|
||||
<li>保存玩家方块数据到文件</li>
|
||||
<li>保存皮肤缓存数据</li>
|
||||
<li>记录插件禁用日志</li>
|
||||
</ul></div>
|
||||
<dl class="notes">
|
||||
<dt>指定者:</dt>
|
||||
<dd><code>onDisable</code> 在接口中 <code>org.bukkit.plugin.Plugin</code></dd>
|
||||
<dt>覆盖:</dt>
|
||||
<dd><code>onDisable</code> 在类中 <code>org.bukkit.plugin.java.JavaPlugin</code></dd>
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list">
|
||||
<li><a href="#onEnable()"><code>onEnable()</code></a></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="reloadConfig()">
|
||||
<h3>reloadConfig</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">reloadConfig</span>()</div>
|
||||
<div class="block">重写 reloadConfig 方法,避免循环依赖</div>
|
||||
<dl class="notes">
|
||||
<dt>指定者:</dt>
|
||||
<dd><code>reloadConfig</code> 在接口中 <code>org.bukkit.plugin.Plugin</code></dd>
|
||||
<dt>覆盖:</dt>
|
||||
<dd><code>reloadConfig</code> 在类中 <code>org.bukkit.plugin.java.JavaPlugin</code></dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="reloadPluginConfig()">
|
||||
<h3>reloadPluginConfig</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">reloadPluginConfig</span>()</div>
|
||||
<div class="block">插件的完整重载方法(用于命令)
|
||||
|
||||
<p>重新加载所有插件配置和数据,包括:
|
||||
<ul>
|
||||
<li>主配置文件 (config.yml)</li>
|
||||
<li>消息配置文件 (messages.yml)</li>
|
||||
<li>玩家方块数据</li>
|
||||
<li>皮肤缓存数据</li>
|
||||
</ul>
|
||||
|
||||
<p>这个方法通常由管理员通过/pblreload命令调用。</p></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getInstance()">
|
||||
<h3>getInstance</h3>
|
||||
<div class="member-signature"><span class="modifiers">public static</span> <span class="return-type"><a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></span> <span class="element-name">getInstance</span>()</div>
|
||||
<div class="block">获取插件单例实例
|
||||
|
||||
<p>提供全局访问点,允许其他类访问插件主实例。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>返回:</dt>
|
||||
<dd>PlayerBlockLife插件实例</dd>
|
||||
<dt>抛出:</dt>
|
||||
<dd><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/IllegalStateException.html" title="java.lang中的类或接口" class="external-link">IllegalStateException</a></code> - 如果插件尚未启用(实例为null)</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getBlockManager()">
|
||||
<h3>getBlockManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></span> <span class="element-name">getBlockManager</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getSkinManager()">
|
||||
<h3>getSkinManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></span> <span class="element-name">getSkinManager</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getLifeSystem()">
|
||||
<h3>getLifeSystem</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></span> <span class="element-name">getLifeSystem</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getConfigManager()">
|
||||
<h3>getConfigManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></span> <span class="element-name">getConfigManager</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getMessageManager()">
|
||||
<h3>getMessageManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></span> <span class="element-name">getMessageManager</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="logInfo(java.lang.String)">
|
||||
<h3>logInfo</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">logInfo</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> message)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="logWarning(java.lang.String)">
|
||||
<h3>logWarning</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">logWarning</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> message)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="logError(java.lang.String,java.lang.Throwable)">
|
||||
<h3>logError</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">logError</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> message,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Throwable.html" title="java.lang中的类或接口" class="external-link">Throwable</a> throwable)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
472
javadoc/com/playerblocklife/PlayerBlockManager.html
Normal file
472
javadoc/com/playerblocklife/PlayerBlockManager.html
Normal file
@@ -0,0 +1,472 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>PlayerBlockManager</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: PlayerBlockManager">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/PlayerBlockManager.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 PlayerBlockManager" class="title">类 PlayerBlockManager</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.PlayerBlockManager</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PlayerBlockManager</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></span></div>
|
||||
<div class="block">玩家方块管理器 - 负责管理玩家生命方块的核心组件
|
||||
|
||||
<p>主要职责:
|
||||
<ul>
|
||||
<li>生成和放置玩家生命方块</li>
|
||||
<li>管理方块位置和所有者映射关系</li>
|
||||
<li>处理方块破坏和恢复逻辑</li>
|
||||
<li>提供方块数据持久化存储</li>
|
||||
<li>支持方块位置查询和验证</li>
|
||||
<li>与SkinManager协同工作,确保方块正确显示玩家皮肤</li>
|
||||
</ul>
|
||||
|
||||
<p><b>SkinsRestorer集成特性:</b>
|
||||
<ul>
|
||||
<li>通过SkinManager获取SkinsRestorer提供的玩家皮肤纹理</li>
|
||||
<li>确保离线服务器上的方块显示正确的自定义皮肤</li>
|
||||
<li>支持异步皮肤加载,避免方块放置阻塞</li>
|
||||
<li>提供皮肤加载状态检查,确保皮肤就绪后再放置方块</li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>使用并发安全的数据结构确保多线程环境下的数据一致性。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>从以下版本开始:</dt>
|
||||
<dd>1.0.0</dd>
|
||||
<dt>版本:</dt>
|
||||
<dd>2.1.0</dd>
|
||||
<dt>作者:</dt>
|
||||
<dd>xiaobai</dd>
|
||||
</dl>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife,com.playerblocklife.SkinManager)" class="member-name-link">PlayerBlockManager</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin,
|
||||
<a href="SkinManager.html" title="com.playerblocklife中的类">SkinManager</a> skinManager)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#clearPlayerBlocks(java.util.UUID)" class="member-name-link">clearPlayerBlocks</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">清除玩家的所有生命方块</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#generateLifeBlocksForPlayer(org.bukkit.entity.Player,int,int,boolean,int)" class="member-name-link">generateLifeBlocksForPlayer</a><wbr>(org.bukkit.entity.Player player,
|
||||
int blockAmount,
|
||||
int spreadRange,
|
||||
boolean requireOpenSky,
|
||||
int maxAttempts)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">为玩家生成指定数量的生命方块</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><wbr><org.bukkit.Location,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAllBlockOwners()" class="member-name-link">getAllBlockOwners</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取所有方块的位置和所有者</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><wbr><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="java.util中的类或接口" class="external-link">List</a><org.bukkit.Location>></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAllPlayerBlocks()" class="member-name-link">getAllPlayerBlocks</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取所有玩家的方块数据</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getBlockOwner(org.bukkit.Location)" class="member-name-link">getBlockOwner</a><wbr>(org.bukkit.Location location)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">检查方块是否属于某个玩家</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.Location</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getNearestBlock(org.bukkit.entity.Player)" class="member-name-link">getNearestBlock</a><wbr>(org.bukkit.entity.Player player)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取距离玩家最近的方块</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="java.util中的类或接口" class="external-link">List</a><wbr><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPlayerBlockLocations(java.util.UUID)" class="member-name-link">getPlayerBlockLocations</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取玩家的生命方块位置列表(用于显示)</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="java.util中的类或接口" class="external-link">List</a><wbr><org.bukkit.Location></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPlayerBlocks(java.util.UUID)" class="member-name-link">getPlayerBlocks</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取玩家的所有生命方块位置</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPlayerBlocksCount()" class="member-name-link">getPlayerBlocksCount</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取已注册玩家的数量</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRemainingBlocks(java.util.UUID)" class="member-name-link">getRemainingBlocks</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取玩家剩余方块数量</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><wbr><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getStats()" class="member-name-link">getStats</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取所有生命方块的统计信息</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTotalBlocksCount()" class="member-name-link">getTotalBlocksCount</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">获取总方块数量</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#hasLifeBlocks(java.util.UUID)" class="member-name-link">hasLifeBlocks</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">检查玩家是否有生命方块</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isLifeBlock(org.bukkit.Location)" class="member-name-link">isLifeBlock</a><wbr>(org.bukkit.Location location)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">检查位置是否包含生命方块</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadData()" class="member-name-link">loadData</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">加载数据</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#regeneratePlayerBlocks(org.bukkit.entity.Player)" class="member-name-link">regeneratePlayerBlocks</a><wbr>(org.bukkit.entity.Player player)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">重新生成玩家的生命方块</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#removeBlock(org.bukkit.Location,org.bukkit.entity.Player)" class="member-name-link">removeBlock</a><wbr>(org.bukkit.Location location,
|
||||
org.bukkit.entity.Player breaker)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">移除方块(当被挖掘时)</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#saveData()" class="member-name-link">saveData</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">保存数据</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setLifeBlocks(org.bukkit.entity.Player,org.bukkit.Location)" class="member-name-link">setLifeBlocks</a><wbr>(org.bukkit.entity.Player player,
|
||||
org.bukkit.Location center)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">为玩家设置生命方块(兼容旧方法)</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife,com.playerblocklife.SkinManager)">
|
||||
<h3>PlayerBlockManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">PlayerBlockManager</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin,
|
||||
<a href="SkinManager.html" title="com.playerblocklife中的类">SkinManager</a> skinManager)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="setLifeBlocks(org.bukkit.entity.Player,org.bukkit.Location)">
|
||||
<h3>setLifeBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">setLifeBlocks</span><wbr><span class="parameters">(org.bukkit.entity.Player player,
|
||||
org.bukkit.Location center)</span></div>
|
||||
<div class="block">为玩家设置生命方块(兼容旧方法)</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="generateLifeBlocksForPlayer(org.bukkit.entity.Player,int,int,boolean,int)">
|
||||
<h3>generateLifeBlocksForPlayer</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">generateLifeBlocksForPlayer</span><wbr><span class="parameters">(org.bukkit.entity.Player player,
|
||||
int blockAmount,
|
||||
int spreadRange,
|
||||
boolean requireOpenSky,
|
||||
int maxAttempts)</span></div>
|
||||
<div class="block">为玩家生成指定数量的生命方块
|
||||
|
||||
<p>此方法负责生成玩家的生命方块,包括以下步骤:
|
||||
<ol>
|
||||
<li>检查玩家是否已有生命方块</li>
|
||||
<li>验证玩家皮肤是否已从SkinsRestorer或其他来源加载完成</li>
|
||||
<li>在指定范围内寻找合适的放置位置</li>
|
||||
<li>放置带有玩家皮肤纹理的玩家头颅方块</li>
|
||||
<li>记录方块位置和所有者关系</li>
|
||||
<li>保存数据并返回生成结果</li>
|
||||
</ol>
|
||||
</p>
|
||||
|
||||
<p><b>皮肤加载检查:</b>
|
||||
<ul>
|
||||
<li>调用skinManager.isSkinLoaded()检查皮肤是否就绪</li>
|
||||
<li>如果皮肤未加载,方块生成将失败</li>
|
||||
<li>确保离线服务器通过SkinsRestorer获取的皮肤能正确应用</li>
|
||||
<li>避免放置默认Steve皮肤的方块</li>
|
||||
</ul>
|
||||
</p></div>
|
||||
<dl class="notes">
|
||||
<dt>参数:</dt>
|
||||
<dd><code>player</code> - 目标玩家</dd>
|
||||
<dd><code>blockAmount</code> - 要生成的方块数量</dd>
|
||||
<dd><code>spreadRange</code> - 生成范围(以玩家为中心的正方形边长的一半)</dd>
|
||||
<dd><code>requireOpenSky</code> - 是否需要开阔天空(上方无方块覆盖)</dd>
|
||||
<dd><code>maxAttempts</code> - 寻找合适位置的最大尝试次数</dd>
|
||||
<dt>返回:</dt>
|
||||
<dd>生成成功返回true,失败返回false</dd>
|
||||
<dt>另请参阅:</dt>
|
||||
<dd>
|
||||
<ul class="tag-list-long">
|
||||
<li><a href="SkinManager.html#isSkinLoaded(java.util.UUID)"><code>SkinManager.isSkinLoaded(UUID)</code></a></li>
|
||||
<li><code>SkinManager.getSkinFromSkinsRestorer(Player)</code></li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getBlockOwner(org.bukkit.Location)">
|
||||
<h3>getBlockOwner</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a></span> <span class="element-name">getBlockOwner</span><wbr><span class="parameters">(org.bukkit.Location location)</span></div>
|
||||
<div class="block">检查方块是否属于某个玩家</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="removeBlock(org.bukkit.Location,org.bukkit.entity.Player)">
|
||||
<h3>removeBlock</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">removeBlock</span><wbr><span class="parameters">(org.bukkit.Location location,
|
||||
org.bukkit.entity.Player breaker)</span></div>
|
||||
<div class="block">移除方块(当被挖掘时)</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getRemainingBlocks(java.util.UUID)">
|
||||
<h3>getRemainingBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getRemainingBlocks</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
<div class="block">获取玩家剩余方块数量</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="hasLifeBlocks(java.util.UUID)">
|
||||
<h3>hasLifeBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">hasLifeBlocks</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
<div class="block">检查玩家是否有生命方块</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getPlayerBlocks(java.util.UUID)">
|
||||
<h3>getPlayerBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="java.util中的类或接口" class="external-link">List</a><org.bukkit.Location></span> <span class="element-name">getPlayerBlocks</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
<div class="block">获取玩家的所有生命方块位置</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="clearPlayerBlocks(java.util.UUID)">
|
||||
<h3>clearPlayerBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">clearPlayerBlocks</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
<div class="block">清除玩家的所有生命方块</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="regeneratePlayerBlocks(org.bukkit.entity.Player)">
|
||||
<h3>regeneratePlayerBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">regeneratePlayerBlocks</span><wbr><span class="parameters">(org.bukkit.entity.Player player)</span></div>
|
||||
<div class="block">重新生成玩家的生命方块</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getPlayerBlocksCount()">
|
||||
<h3>getPlayerBlocksCount</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getPlayerBlocksCount</span>()</div>
|
||||
<div class="block">获取已注册玩家的数量</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getTotalBlocksCount()">
|
||||
<h3>getTotalBlocksCount</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">int</span> <span class="element-name">getTotalBlocksCount</span>()</div>
|
||||
<div class="block">获取总方块数量</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="loadData()">
|
||||
<h3>loadData</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">loadData</span>()</div>
|
||||
<div class="block">加载数据</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="saveData()">
|
||||
<h3>saveData</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">saveData</span>()</div>
|
||||
<div class="block">保存数据</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getAllPlayerBlocks()">
|
||||
<h3>getAllPlayerBlocks</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="java.util中的类或接口" class="external-link">List</a><org.bukkit.Location>></span> <span class="element-name">getAllPlayerBlocks</span>()</div>
|
||||
<div class="block">获取所有玩家的方块数据</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getAllBlockOwners()">
|
||||
<h3>getAllBlockOwners</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><org.bukkit.Location,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>></span> <span class="element-name">getAllBlockOwners</span>()</div>
|
||||
<div class="block">获取所有方块的位置和所有者</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isLifeBlock(org.bukkit.Location)">
|
||||
<h3>isLifeBlock</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isLifeBlock</span><wbr><span class="parameters">(org.bukkit.Location location)</span></div>
|
||||
<div class="block">检查位置是否包含生命方块</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getPlayerBlockLocations(java.util.UUID)">
|
||||
<h3>getPlayerBlockLocations</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/List.html" title="java.util中的类或接口" class="external-link">List</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>></span> <span class="element-name">getPlayerBlockLocations</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
<div class="block">获取玩家的生命方块位置列表(用于显示)</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getNearestBlock(org.bukkit.entity.Player)">
|
||||
<h3>getNearestBlock</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">org.bukkit.Location</span> <span class="element-name">getNearestBlock</span><wbr><span class="parameters">(org.bukkit.entity.Player player)</span></div>
|
||||
<div class="block">获取距离玩家最近的方块</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getStats()">
|
||||
<h3>getStats</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>></span> <span class="element-name">getStats</span>()</div>
|
||||
<div class="block">获取所有生命方块的统计信息</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
186
javadoc/com/playerblocklife/PlayerJoinListener.html
Normal file
186
javadoc/com/playerblocklife/PlayerJoinListener.html
Normal file
@@ -0,0 +1,186 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>PlayerJoinListener</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: PlayerJoinListener">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/PlayerJoinListener.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 PlayerJoinListener" class="title">类 PlayerJoinListener</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.PlayerJoinListener</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>org.bukkit.event.Listener</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PlayerJoinListener</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>
|
||||
implements org.bukkit.event.Listener</span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">PlayerJoinListener</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent)" class="member-name-link">onPlayerJoin</a><wbr>(org.bukkit.event.player.PlayerJoinEvent event)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onPlayerRespawn(org.bukkit.event.player.PlayerRespawnEvent)" class="member-name-link">onPlayerRespawn</a><wbr>(org.bukkit.event.player.PlayerRespawnEvent event)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>PlayerJoinListener</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">PlayerJoinListener</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent)">
|
||||
<h3>onPlayerJoin</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onPlayerJoin</span><wbr><span class="parameters">(org.bukkit.event.player.PlayerJoinEvent event)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="onPlayerRespawn(org.bukkit.event.player.PlayerRespawnEvent)">
|
||||
<h3>onPlayerRespawn</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onPlayerRespawn</span><wbr><span class="parameters">(org.bukkit.event.player.PlayerRespawnEvent event)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
177
javadoc/com/playerblocklife/PlayerQuitListener.html
Normal file
177
javadoc/com/playerblocklife/PlayerQuitListener.html
Normal file
@@ -0,0 +1,177 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>PlayerQuitListener</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: PlayerQuitListener">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/PlayerQuitListener.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 PlayerQuitListener" class="title">类 PlayerQuitListener</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.PlayerQuitListener</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>org.bukkit.event.Listener</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PlayerQuitListener</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>
|
||||
implements org.bukkit.event.Listener</span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">PlayerQuitListener</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onPlayerQuit(org.bukkit.event.player.PlayerQuitEvent)" class="member-name-link">onPlayerQuit</a><wbr>(org.bukkit.event.player.PlayerQuitEvent event)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>PlayerQuitListener</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">PlayerQuitListener</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onPlayerQuit(org.bukkit.event.player.PlayerQuitEvent)">
|
||||
<h3>onPlayerQuit</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">onPlayerQuit</span><wbr><span class="parameters">(org.bukkit.event.player.PlayerQuitEvent event)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
187
javadoc/com/playerblocklife/SetLifeBlocksCommand.html
Normal file
187
javadoc/com/playerblocklife/SetLifeBlocksCommand.html
Normal file
@@ -0,0 +1,187 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>SetLifeBlocksCommand</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: SetLifeBlocksCommand">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/SetLifeBlocksCommand.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 SetLifeBlocksCommand" class="title">类 SetLifeBlocksCommand</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.SetLifeBlocksCommand</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<dl class="notes">
|
||||
<dt>所有已实现的接口:</dt>
|
||||
<dd><code>org.bukkit.command.CommandExecutor</code></dd>
|
||||
</dl>
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">SetLifeBlocksCommand</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a>
|
||||
implements org.bukkit.command.CommandExecutor</span></div>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">SetLifeBlocksCommand</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand</a><wbr>(org.bukkit.command.CommandSender sender,
|
||||
org.bukkit.command.Command command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> label,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>[] args)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>SetLifeBlocksCommand</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">SetLifeBlocksCommand</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String[])">
|
||||
<h3>onCommand</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">onCommand</span><wbr><span class="parameters">(org.bukkit.command.CommandSender sender,
|
||||
org.bukkit.command.Command command,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> label,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>[] args)</span></div>
|
||||
<dl class="notes">
|
||||
<dt>指定者:</dt>
|
||||
<dd><code>onCommand</code> 在接口中 <code>org.bukkit.command.CommandExecutor</code></dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
296
javadoc/com/playerblocklife/SkinManager.html
Normal file
296
javadoc/com/playerblocklife/SkinManager.html
Normal file
@@ -0,0 +1,296 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>SkinManager</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife, class: SkinManager">
|
||||
<meta name="generator" content="javadoc/ClassWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li class="nav-bar-cell1-rev">类</li>
|
||||
<li><a href="class-use/SkinManager.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#class">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>概要:</p>
|
||||
<ul>
|
||||
<li>嵌套</li>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-summary">构造器</a></li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<p>详细资料:</p>
|
||||
<ul>
|
||||
<li>字段</li>
|
||||
<li><a href="#constructor-detail">构造器</a></li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>概要: </li>
|
||||
<li>嵌套 | </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-summary">构造器</a> | </li>
|
||||
<li><a href="#method-summary">方法</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list">
|
||||
<li>详细资料: </li>
|
||||
<li>字段 | </li>
|
||||
<li><a href="#constructor-detail">构造器</a> | </li>
|
||||
<li><a href="#method-detail">方法</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<!-- ======== START OF CLASS DATA ======== -->
|
||||
<div class="header">
|
||||
<div class="sub-title"><span class="package-label-in-type">程序包</span> <a href="package-summary.html">com.playerblocklife</a></div>
|
||||
<h1 title="类 SkinManager" class="title">类 SkinManager</h1>
|
||||
</div>
|
||||
<div class="inheritance" title="继承树"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">java.lang.Object</a>
|
||||
<div class="inheritance">com.playerblocklife.SkinManager</div>
|
||||
</div>
|
||||
<section class="class-description" id="class-description">
|
||||
<hr>
|
||||
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">SkinManager</span>
|
||||
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></span></div>
|
||||
<div class="block">皮肤管理器 - 负责玩家皮肤的获取、缓存和应用
|
||||
|
||||
<p>主要功能:
|
||||
<ul>
|
||||
<li>从多种来源获取玩家皮肤数据(SkinsRestorer插件、PlayerProfile、本地缓存)</li>
|
||||
<li>皮肤数据Base64编码和缓存管理</li>
|
||||
<li>自定义模型数据分配和管理</li>
|
||||
<li>异步皮肤加载避免阻塞主线程</li>
|
||||
<li>皮肤缓存过期清理</li>
|
||||
<li>完整的SkinsRestorer插件集成支持</li>
|
||||
</ul>
|
||||
|
||||
<p>皮肤获取优先级(根据配置的source字段):
|
||||
<ol>
|
||||
<li><b>skinsrestorer</b>:优先从SkinsRestorer插件获取皮肤纹理数据</li>
|
||||
<li><b>player_profile</b>:优先使用Bukkit的PlayerProfile API</li>
|
||||
<li><b>local_cache</b>:优先从本地缓存加载</li>
|
||||
<li>默认Steve皮肤(所有来源都失败时的备用)</li>
|
||||
</ol>
|
||||
|
||||
<p><b>SkinsRestorer集成特性:</b>
|
||||
<ul>
|
||||
<li>自动检测SkinsRestorer插件是否安装</li>
|
||||
<li>使用反射安全调用SkinsRestorer API,避免硬依赖</li>
|
||||
<li>获取完整的皮肤纹理数据(value和signature)</li>
|
||||
<li>支持离线服务器,避免默认Steve皮肤问题</li>
|
||||
<li>优雅降级:SkinsRestorer失败时自动回退到其他来源</li>
|
||||
</ul>
|
||||
|
||||
<p>皮肤缓存默认保留7天,过期后自动重新获取。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>从以下版本开始:</dt>
|
||||
<dd>1.0.0</dd>
|
||||
<dt>版本:</dt>
|
||||
<dd>2.1.0</dd>
|
||||
<dt>作者:</dt>
|
||||
<dd>xiaobai</dd>
|
||||
</dl>
|
||||
</section>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||
<li>
|
||||
<section class="constructor-summary" id="constructor-summary">
|
||||
<h2>构造器概要</h2>
|
||||
<div class="caption"><span>构造器</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">SkinManager</a><wbr>(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ========== METHOD SUMMARY =========== -->
|
||||
<li>
|
||||
<section class="method-summary" id="method-summary">
|
||||
<h2>方法概要</h2>
|
||||
<div id="method-summary-table">
|
||||
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">所有方法</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">实例方法</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">具体方法</button></div>
|
||||
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#cleanupOldCache()" class="member-name-link">cleanupOldCache</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>org.bukkit.inventory.ItemStack</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createPlayerHead(java.util.UUID,java.lang.String)" class="member-name-link">createPlayerHead</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> playerName)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
|
||||
<div class="block">创建带有玩家皮肤的头颅物品</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><wbr><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="java.lang中的类或接口" class="external-link">Integer</a>></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAllCustomModelData()" class="member-name-link">getAllCustomModelData</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><wbr><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>></code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAllSkinData()" class="member-name-link">getAllSkinData</a>()</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="java.lang中的类或接口" class="external-link">Integer</a></code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCustomModelData(java.util.UUID)" class="member-name-link">getCustomModelData</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isSkinLoaded(java.util.UUID)" class="member-name-link">isSkinLoaded</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadAllSkins()" class="member-name-link">loadAllSkins</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#loadPlayerSkinAsync(org.bukkit.entity.Player)" class="member-name-link">loadPlayerSkinAsync</a><wbr>(org.bukkit.entity.Player player)</code></div>
|
||||
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
|
||||
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#saveSkinData()" class="member-name-link">saveSkinData</a>()</code></div>
|
||||
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"> </div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="inherited-list">
|
||||
<h3 id="methods-inherited-from-class-java.lang.Object">从类继承的方法 java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="java.lang中的类或接口" class="external-link">Object</a></h3>
|
||||
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="java.lang中的类或接口" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="java.lang中的类或接口" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="java.lang中的类或接口" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="java.lang中的类或接口" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="java.lang中的类或接口" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="java.lang中的类或接口" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="java.lang中的类或接口" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#toString()" title="java.lang中的类或接口" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="java.lang中的类或接口" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="java.lang中的类或接口" class="external-link">wait</a></code></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="details">
|
||||
<ul class="details-list">
|
||||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||
<li>
|
||||
<section class="constructor-details" id="constructor-detail">
|
||||
<h2>构造器详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="<init>(com.playerblocklife.PlayerBlockLife)">
|
||||
<h3>SkinManager</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="element-name">SkinManager</span><wbr><span class="parameters">(<a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
<!-- ============ METHOD DETAIL ========== -->
|
||||
<li>
|
||||
<section class="method-details" id="method-detail">
|
||||
<h2>方法详细资料</h2>
|
||||
<ul class="member-list">
|
||||
<li>
|
||||
<section class="detail" id="loadAllSkins()">
|
||||
<h3>loadAllSkins</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">loadAllSkins</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="loadPlayerSkinAsync(org.bukkit.entity.Player)">
|
||||
<h3>loadPlayerSkinAsync</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">loadPlayerSkinAsync</span><wbr><span class="parameters">(org.bukkit.entity.Player player)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="createPlayerHead(java.util.UUID,java.lang.String)">
|
||||
<h3>createPlayerHead</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">org.bukkit.inventory.ItemStack</span> <span class="element-name">createPlayerHead</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId,
|
||||
<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a> playerName)</span></div>
|
||||
<div class="block">创建带有玩家皮肤的头颅物品
|
||||
|
||||
<p>使用Base64纹理数据创建自定义玩家头颅,支持离线服务器皮肤显示。</p></div>
|
||||
<dl class="notes">
|
||||
<dt>参数:</dt>
|
||||
<dd><code>playerId</code> - 玩家UUID</dd>
|
||||
<dd><code>playerName</code> - 玩家名称</dd>
|
||||
<dt>返回:</dt>
|
||||
<dd>带有玩家皮肤的玩家头颅物品</dd>
|
||||
</dl>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="isSkinLoaded(java.util.UUID)">
|
||||
<h3>isSkinLoaded</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">boolean</span> <span class="element-name">isSkinLoaded</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getCustomModelData(java.util.UUID)">
|
||||
<h3>getCustomModelData</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="java.lang中的类或接口" class="external-link">Integer</a></span> <span class="element-name">getCustomModelData</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a> playerId)</span></div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getAllSkinData()">
|
||||
<h3>getAllSkinData</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="java.lang中的类或接口" class="external-link">String</a>></span> <span class="element-name">getAllSkinData</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="getAllCustomModelData()">
|
||||
<h3>getAllCustomModelData</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Map.html" title="java.util中的类或接口" class="external-link">Map</a><<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/UUID.html" title="java.util中的类或接口" class="external-link">UUID</a>,<wbr><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Integer.html" title="java.lang中的类或接口" class="external-link">Integer</a>></span> <span class="element-name">getAllCustomModelData</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="saveSkinData()">
|
||||
<h3>saveSkinData</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">saveSkinData</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
<li>
|
||||
<section class="detail" id="cleanupOldCache()">
|
||||
<h3>cleanupOldCache</h3>
|
||||
<div class="member-signature"><span class="modifiers">public</span> <span class="return-type">void</span> <span class="element-name">cleanupOldCache</span>()</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
<!-- ========= END OF CLASS DATA ========= -->
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
57
javadoc/com/playerblocklife/class-use/AdminCommands.html
Normal file
57
javadoc/com/playerblocklife/class-use/AdminCommands.html
Normal file
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.AdminCommands的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: AdminCommands">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../AdminCommands.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.AdminCommands" class="title">类的使用<br>com.playerblocklife.AdminCommands</h1>
|
||||
</div>
|
||||
没有com.playerblocklife.AdminCommands的用法</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.BlockBreakListener的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: BlockBreakListener">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../BlockBreakListener.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.BlockBreakListener" class="title">类的使用<br>com.playerblocklife.BlockBreakListener</h1>
|
||||
</div>
|
||||
没有com.playerblocklife.BlockBreakListener的用法</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.CheckLifeBlocksCommand的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: CheckLifeBlocksCommand">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../CheckLifeBlocksCommand.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.CheckLifeBlocksCommand" class="title">类的使用<br>com.playerblocklife.CheckLifeBlocksCommand</h1>
|
||||
</div>
|
||||
没有com.playerblocklife.CheckLifeBlocksCommand的用法</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
75
javadoc/com/playerblocklife/class-use/ConfigManager.html
Normal file
75
javadoc/com/playerblocklife/class-use/ConfigManager.html
Normal file
@@ -0,0 +1,75 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.ConfigManager的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: ConfigManager">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../ConfigManager.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.ConfigManager" class="title">类的使用<br>com.playerblocklife.ConfigManager</h1>
|
||||
</div>
|
||||
<section class="class-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<h2><a href="../package-summary.html">com.playerblocklife</a>中<a href="../ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a>的使用</h2>
|
||||
<div class="caption"><span>返回<a href="../ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a>的<a href="../package-summary.html">com.playerblocklife</a>中的方法</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code><a href="../ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></code></div>
|
||||
<div class="col-second even-row-color"><span class="type-name-label">PlayerBlockLife.</span><code><a href="../PlayerBlockLife.html#getConfigManager()" class="member-name-link">getConfigManager</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
75
javadoc/com/playerblocklife/class-use/LifeSystem.html
Normal file
75
javadoc/com/playerblocklife/class-use/LifeSystem.html
Normal file
@@ -0,0 +1,75 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.LifeSystem的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: LifeSystem">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../LifeSystem.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.LifeSystem" class="title">类的使用<br>com.playerblocklife.LifeSystem</h1>
|
||||
</div>
|
||||
<section class="class-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<h2><a href="../package-summary.html">com.playerblocklife</a>中<a href="../LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a>的使用</h2>
|
||||
<div class="caption"><span>返回<a href="../LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a>的<a href="../package-summary.html">com.playerblocklife</a>中的方法</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code><a href="../LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></code></div>
|
||||
<div class="col-second even-row-color"><span class="type-name-label">PlayerBlockLife.</span><code><a href="../PlayerBlockLife.html#getLifeSystem()" class="member-name-link">getLifeSystem</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
75
javadoc/com/playerblocklife/class-use/MessageManager.html
Normal file
75
javadoc/com/playerblocklife/class-use/MessageManager.html
Normal file
@@ -0,0 +1,75 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.MessageManager的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: MessageManager">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../MessageManager.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.MessageManager" class="title">类的使用<br>com.playerblocklife.MessageManager</h1>
|
||||
</div>
|
||||
<section class="class-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<h2><a href="../package-summary.html">com.playerblocklife</a>中<a href="../MessageManager.html" title="com.playerblocklife中的类">MessageManager</a>的使用</h2>
|
||||
<div class="caption"><span>返回<a href="../MessageManager.html" title="com.playerblocklife中的类">MessageManager</a>的<a href="../package-summary.html">com.playerblocklife</a>中的方法</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code><a href="../MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></code></div>
|
||||
<div class="col-second even-row-color"><span class="type-name-label">PlayerBlockLife.</span><code><a href="../PlayerBlockLife.html#getMessageManager()" class="member-name-link">getMessageManager</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
119
javadoc/com/playerblocklife/class-use/PlayerBlockLife.html
Normal file
119
javadoc/com/playerblocklife/class-use/PlayerBlockLife.html
Normal file
@@ -0,0 +1,119 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.PlayerBlockLife的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: PlayerBlockLife">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.PlayerBlockLife" class="title">类的使用<br>com.playerblocklife.PlayerBlockLife</h1>
|
||||
</div>
|
||||
<section class="class-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<h2><a href="../package-summary.html">com.playerblocklife</a>中<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a>的使用</h2>
|
||||
<div class="caption"><span>返回<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a>的<a href="../package-summary.html">com.playerblocklife</a>中的方法</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code>static <a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></code></div>
|
||||
<div class="col-second even-row-color"><span class="type-name-label">PlayerBlockLife.</span><code><a href="../PlayerBlockLife.html#getInstance()" class="member-name-link">getInstance</a>()</code></div>
|
||||
<div class="col-last even-row-color">
|
||||
<div class="block">获取插件单例实例</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="caption"><span>参数类型为<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a>的<a href="../package-summary.html">com.playerblocklife</a>中的构造器</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">限定符</div>
|
||||
<div class="table-header col-second">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../AdminCommands.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">AdminCommands</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
<div class="col-first odd-row-color"><code> </code></div>
|
||||
<div class="col-second odd-row-color"><code><a href="../BlockBreakListener.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">BlockBreakListener</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last odd-row-color"> </div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../CheckLifeBlocksCommand.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">CheckLifeBlocksCommand</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
<div class="col-first odd-row-color"><code> </code></div>
|
||||
<div class="col-second odd-row-color"><code><a href="../ConfigManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">ConfigManager</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last odd-row-color">
|
||||
<div class="block">构造一个新的配置管理器</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../LifeSystem.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">LifeSystem</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
<div class="col-first odd-row-color"><code> </code></div>
|
||||
<div class="col-second odd-row-color"><code><a href="../MessageManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">MessageManager</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last odd-row-color"> </div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../PlayerBlockManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife,com.playerblocklife.SkinManager)" class="member-name-link">PlayerBlockManager</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin,
|
||||
<a href="../SkinManager.html" title="com.playerblocklife中的类">SkinManager</a> skinManager)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
<div class="col-first odd-row-color"><code> </code></div>
|
||||
<div class="col-second odd-row-color"><code><a href="../PlayerJoinListener.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">PlayerJoinListener</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last odd-row-color"> </div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../PlayerQuitListener.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">PlayerQuitListener</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
<div class="col-first odd-row-color"><code> </code></div>
|
||||
<div class="col-second odd-row-color"><code><a href="../SetLifeBlocksCommand.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">SetLifeBlocksCommand</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last odd-row-color"> </div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../SkinManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">SkinManager</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,75 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.PlayerBlockManager的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: PlayerBlockManager">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../PlayerBlockManager.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.PlayerBlockManager" class="title">类的使用<br>com.playerblocklife.PlayerBlockManager</h1>
|
||||
</div>
|
||||
<section class="class-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<h2><a href="../package-summary.html">com.playerblocklife</a>中<a href="../PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a>的使用</h2>
|
||||
<div class="caption"><span>返回<a href="../PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a>的<a href="../package-summary.html">com.playerblocklife</a>中的方法</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code><a href="../PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></code></div>
|
||||
<div class="col-second even-row-color"><span class="type-name-label">PlayerBlockLife.</span><code><a href="../PlayerBlockLife.html#getBlockManager()" class="member-name-link">getBlockManager</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.PlayerJoinListener的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: PlayerJoinListener">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../PlayerJoinListener.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.PlayerJoinListener" class="title">类的使用<br>com.playerblocklife.PlayerJoinListener</h1>
|
||||
</div>
|
||||
没有com.playerblocklife.PlayerJoinListener的用法</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.PlayerQuitListener的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: PlayerQuitListener">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../PlayerQuitListener.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.PlayerQuitListener" class="title">类的使用<br>com.playerblocklife.PlayerQuitListener</h1>
|
||||
</div>
|
||||
没有com.playerblocklife.PlayerQuitListener的用法</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.SetLifeBlocksCommand的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: SetLifeBlocksCommand">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../SetLifeBlocksCommand.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.SetLifeBlocksCommand" class="title">类的使用<br>com.playerblocklife.SetLifeBlocksCommand</h1>
|
||||
</div>
|
||||
没有com.playerblocklife.SetLifeBlocksCommand的用法</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
85
javadoc/com/playerblocklife/class-use/SkinManager.html
Normal file
85
javadoc/com/playerblocklife/class-use/SkinManager.html
Normal file
@@ -0,0 +1,85 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类 com.playerblocklife.SkinManager的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife, class: SkinManager">
|
||||
<meta name="generator" content="javadoc/ClassUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../../script.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="class-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../package-summary.html">程序包</a></li>
|
||||
<li><a href="../SkinManager.html" title="com.playerblocklife中的类">类</a></li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="../package-tree.html">树</a></li>
|
||||
<li><a href="../../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="类的使用 com.playerblocklife.SkinManager" class="title">类的使用<br>com.playerblocklife.SkinManager</h1>
|
||||
</div>
|
||||
<section class="class-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<h2><a href="../package-summary.html">com.playerblocklife</a>中<a href="../SkinManager.html" title="com.playerblocklife中的类">SkinManager</a>的使用</h2>
|
||||
<div class="caption"><span>返回<a href="../SkinManager.html" title="com.playerblocklife中的类">SkinManager</a>的<a href="../package-summary.html">com.playerblocklife</a>中的方法</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">修饰符和类型</div>
|
||||
<div class="table-header col-second">方法</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code><a href="../SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></code></div>
|
||||
<div class="col-second even-row-color"><span class="type-name-label">PlayerBlockLife.</span><code><a href="../PlayerBlockLife.html#getSkinManager()" class="member-name-link">getSkinManager</a>()</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
<div class="caption"><span>参数类型为<a href="../SkinManager.html" title="com.playerblocklife中的类">SkinManager</a>的<a href="../package-summary.html">com.playerblocklife</a>中的构造器</span></div>
|
||||
<div class="summary-table three-column-summary">
|
||||
<div class="table-header col-first">限定符</div>
|
||||
<div class="table-header col-second">构造器</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><code> </code></div>
|
||||
<div class="col-second even-row-color"><code><a href="../PlayerBlockManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife,com.playerblocklife.SkinManager)" class="member-name-link">PlayerBlockManager</a><wbr>(<a href="../PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a> plugin,
|
||||
<a href="../SkinManager.html" title="com.playerblocklife中的类">SkinManager</a> skinManager)</code></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
123
javadoc/com/playerblocklife/package-summary.html
Normal file
123
javadoc/com/playerblocklife/package-summary.html
Normal file
@@ -0,0 +1,123 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>com.playerblocklife</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="declaration: package: com.playerblocklife">
|
||||
<meta name="generator" content="javadoc/PackageWriterImpl">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="package-declaration-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li class="nav-bar-cell1-rev">程序包</li>
|
||||
<li>类</li>
|
||||
<li><a href="package-use.html">使用</a></li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#package">帮助</a></li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>程序包:</p>
|
||||
<ul>
|
||||
<li>说明</li>
|
||||
<li>相关程序包</li>
|
||||
<li><a href="#class-summary">类和接口</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>程序包: </li>
|
||||
<li>说明 | </li>
|
||||
<li>相关程序包 | </li>
|
||||
<li><a href="#class-summary">类和接口</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="程序包 com.playerblocklife" class="title">程序包 com.playerblocklife</h1>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="package-signature">package <span class="element-name">com.playerblocklife</span></div>
|
||||
<section class="summary">
|
||||
<ul class="summary-list">
|
||||
<li>
|
||||
<div id="class-summary">
|
||||
<div class="caption"><span>类</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">类</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="AdminCommands.html" title="com.playerblocklife中的类">AdminCommands</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="BlockBreakListener.html" title="com.playerblocklife中的类">BlockBreakListener</a></div>
|
||||
<div class="col-last odd-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="CheckLifeBlocksCommand.html" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></div>
|
||||
<div class="col-last odd-row-color class-summary class-summary-tab2">
|
||||
<div class="block">配置管理器 - 负责加载、保存和管理插件的配置文件</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2">
|
||||
<div class="block">生命值系统 - 负责管理玩家生命值和状态效果</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></div>
|
||||
<div class="col-last odd-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2">
|
||||
<div class="block">PlayerBlockLife插件主类 - 玩家生命方块系统的核心控制器</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></div>
|
||||
<div class="col-last odd-row-color class-summary class-summary-tab2">
|
||||
<div class="block">玩家方块管理器 - 负责管理玩家生命方块的核心组件</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="PlayerJoinListener.html" title="com.playerblocklife中的类">PlayerJoinListener</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="PlayerQuitListener.html" title="com.playerblocklife中的类">PlayerQuitListener</a></div>
|
||||
<div class="col-last odd-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first even-row-color class-summary class-summary-tab2"><a href="SetLifeBlocksCommand.html" title="com.playerblocklife中的类">SetLifeBlocksCommand</a></div>
|
||||
<div class="col-last even-row-color class-summary class-summary-tab2"> </div>
|
||||
<div class="col-first odd-row-color class-summary class-summary-tab2"><a href="SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></div>
|
||||
<div class="col-last odd-row-color class-summary class-summary-tab2">
|
||||
<div class="block">皮肤管理器 - 负责玩家皮肤的获取、缓存和应用</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
86
javadoc/com/playerblocklife/package-tree.html
Normal file
86
javadoc/com/playerblocklife/package-tree.html
Normal file
@@ -0,0 +1,86 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>com.playerblocklife 类分层结构</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="tree: package: com.playerblocklife">
|
||||
<meta name="generator" content="javadoc/PackageTreeWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="package-tree-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li class="nav-bar-cell1-rev">树</li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#tree">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 class="title">程序包com.playerblocklife的分层结构</h1>
|
||||
</div>
|
||||
<section class="hierarchy">
|
||||
<h2 title="类分层结构">类分层结构</h2>
|
||||
<ul>
|
||||
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="java.lang中的类或接口">Object</a>
|
||||
<ul>
|
||||
<li class="circle">com.playerblocklife.<a href="AdminCommands.html" class="type-name-link" title="com.playerblocklife中的类">AdminCommands</a> (implements org.bukkit.command.CommandExecutor)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="BlockBreakListener.html" class="type-name-link" title="com.playerblocklife中的类">BlockBreakListener</a> (implements org.bukkit.event.Listener)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="CheckLifeBlocksCommand.html" class="type-name-link" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a> (implements org.bukkit.command.CommandExecutor)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="ConfigManager.html" class="type-name-link" title="com.playerblocklife中的类">ConfigManager</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="LifeSystem.html" class="type-name-link" title="com.playerblocklife中的类">LifeSystem</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="MessageManager.html" class="type-name-link" title="com.playerblocklife中的类">MessageManager</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="PlayerBlockManager.html" class="type-name-link" title="com.playerblocklife中的类">PlayerBlockManager</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="PlayerJoinListener.html" class="type-name-link" title="com.playerblocklife中的类">PlayerJoinListener</a> (implements org.bukkit.event.Listener)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="PlayerQuitListener.html" class="type-name-link" title="com.playerblocklife中的类">PlayerQuitListener</a> (implements org.bukkit.event.Listener)</li>
|
||||
<li class="circle">org.bukkit.plugin.PluginBase (implements org.bukkit.plugin.Plugin)
|
||||
<ul>
|
||||
<li class="circle">org.bukkit.plugin.java.JavaPlugin
|
||||
<ul>
|
||||
<li class="circle">com.playerblocklife.<a href="PlayerBlockLife.html" class="type-name-link" title="com.playerblocklife中的类">PlayerBlockLife</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="circle">com.playerblocklife.<a href="SetLifeBlocksCommand.html" class="type-name-link" title="com.playerblocklife中的类">SetLifeBlocksCommand</a> (implements org.bukkit.command.CommandExecutor)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="SkinManager.html" class="type-name-link" title="com.playerblocklife中的类">SkinManager</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
92
javadoc/com/playerblocklife/package-use.html
Normal file
92
javadoc/com/playerblocklife/package-use.html
Normal file
@@ -0,0 +1,92 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>程序包 com.playerblocklife的使用</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="use: package: com.playerblocklife">
|
||||
<meta name="generator" content="javadoc/PackageUseWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../../script.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="package-use-page">
|
||||
<script type="text/javascript">var pathtoroot = "../../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li class="nav-bar-cell1-rev">使用</li>
|
||||
<li><a href="package-tree.html">树</a></li>
|
||||
<li><a href="../../index-files/index-1.html">索引</a></li>
|
||||
<li><a href="../../help-doc.html#use">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 title="程序包的使用 com.playerblocklife" class="title">程序包的使用<br>com.playerblocklife</h1>
|
||||
</div>
|
||||
<section class="package-uses">
|
||||
<ul class="block-list">
|
||||
<li>
|
||||
<section class="detail" id="com.playerblocklife">
|
||||
<div class="caption"><span><a href="package-summary.html">com.playerblocklife</a>使用的<a href="package-summary.html">com.playerblocklife</a>中的类</span></div>
|
||||
<div class="summary-table two-column-summary">
|
||||
<div class="table-header col-first">类</div>
|
||||
<div class="table-header col-last">说明</div>
|
||||
<div class="col-first even-row-color"><a href="class-use/ConfigManager.html#com.playerblocklife">ConfigManager</a></div>
|
||||
<div class="col-last even-row-color">
|
||||
<div class="block">配置管理器 - 负责加载、保存和管理插件的配置文件</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color"><a href="class-use/LifeSystem.html#com.playerblocklife">LifeSystem</a></div>
|
||||
<div class="col-last odd-row-color">
|
||||
<div class="block">生命值系统 - 负责管理玩家生命值和状态效果</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color"><a href="class-use/MessageManager.html#com.playerblocklife">MessageManager</a></div>
|
||||
<div class="col-last even-row-color"> </div>
|
||||
<div class="col-first odd-row-color"><a href="class-use/PlayerBlockLife.html#com.playerblocklife">PlayerBlockLife</a></div>
|
||||
<div class="col-last odd-row-color">
|
||||
<div class="block">PlayerBlockLife插件主类 - 玩家生命方块系统的核心控制器</div>
|
||||
</div>
|
||||
<div class="col-first even-row-color"><a href="class-use/PlayerBlockManager.html#com.playerblocklife">PlayerBlockManager</a></div>
|
||||
<div class="col-last even-row-color">
|
||||
<div class="block">玩家方块管理器 - 负责管理玩家生命方块的核心组件</div>
|
||||
</div>
|
||||
<div class="col-first odd-row-color"><a href="class-use/SkinManager.html#com.playerblocklife">SkinManager</a></div>
|
||||
<div class="col-last odd-row-color">
|
||||
<div class="block">皮肤管理器 - 负责玩家皮肤的获取、缓存和应用</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
33
javadoc/copy.svg
Normal file
33
javadoc/copy.svg
Normal file
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
Copyright (c) 2021, Oracle and/or its affiliates. All rights reserved.
|
||||
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
|
||||
This code is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License version 2 only, as
|
||||
published by the Free Software Foundation. Oracle designates this
|
||||
particular file as subject to the "Classpath" exception as provided
|
||||
by Oracle in the LICENSE file that accompanied this code.
|
||||
|
||||
This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
version 2 for more details (a copy is included in the LICENSE file that
|
||||
accompanied this code).
|
||||
|
||||
You should have received a copy of the GNU General Public License version
|
||||
2 along with this work; if not, write to the Free Software Foundation,
|
||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
or visit www.oracle.com if you need additional information or have any
|
||||
questions.
|
||||
-->
|
||||
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 380 460" fill="#505050">
|
||||
<path
|
||||
d="M 346,8 H 108 C 90,8 75,23 75,41 v 316 c 0,18 15,33 33,33 h 238 c 18,0 33,-15 33,-33 V 41 C 379,23 364,8 346,8 Z m -8,344 H 116 c -2,0 -3,-1 -3,-3 V 49 c 0,-2 1,-3 3,-3 h 222 c 2,0 3,1 3,3 v 300 h 10e-4 c 0,2 -1,3 -3,3 z"/>
|
||||
<path
|
||||
d="m 290,389 v 26 h 10e-4 c 0,2 -1,3 -3,3 H 49 c -2,0 -3,-1 -3,-3 V 99 c 0,-2 1,-3 3,-3 h 27 v 0 l -5e-4,-38 H 41 C 23,58 8,73 8,91 v 332 c 10e-4,18 15,33 33,33 h 254 c 18,0 33,-15 33,-33 v -34"/>
|
||||
</svg>
|
||||
1
javadoc/element-list
Normal file
1
javadoc/element-list
Normal file
@@ -0,0 +1 @@
|
||||
com.playerblocklife
|
||||
183
javadoc/help-doc.html
Normal file
183
javadoc/help-doc.html
Normal file
@@ -0,0 +1,183 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>API 帮助</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="help">
|
||||
<meta name="generator" content="javadoc/HelpWriter">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="script.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="help-page">
|
||||
<script type="text/javascript">var pathtoroot = "./";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="overview-tree.html">树</a></li>
|
||||
<li><a href="index-files/index-1.html">索引</a></li>
|
||||
<li class="nav-bar-cell1-rev">帮助</li>
|
||||
</ul>
|
||||
<ul class="sub-nav-list-small">
|
||||
<li>
|
||||
<p>帮助:</p>
|
||||
<ul>
|
||||
<li><a href="#help-navigation">导航</a></li>
|
||||
<li><a href="#help-pages">页</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list">
|
||||
<ul class="sub-nav-list">
|
||||
<li>帮助: </li>
|
||||
<li><a href="#help-navigation">导航</a> | </li>
|
||||
<li><a href="#help-pages">页</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="nav-list-search"><a href="search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<h1 class="title">JavaDoc 帮助</h1>
|
||||
<ul class="help-toc">
|
||||
<li><a href="#help-navigation">导航</a>:
|
||||
<ul class="help-subtoc">
|
||||
<li><a href="#search">搜索</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#help-pages">页面类型</a>:
|
||||
<ul class="help-subtoc">
|
||||
<li><a href="#package">程序包</a></li>
|
||||
<li><a href="#class">类或接口</a></li>
|
||||
<li><a href="#doc-file">其他文件</a></li>
|
||||
<li><a href="#use">使用</a></li>
|
||||
<li><a href="#tree">树 (类分层结构)</a></li>
|
||||
<li><a href="#all-packages">所有程序包</a></li>
|
||||
<li><a href="#all-classes">所有类和接口</a></li>
|
||||
<li><a href="#index">索引</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<hr>
|
||||
<div class="sub-title">
|
||||
<h2 id="help-navigation">导航</h2>
|
||||
从 <a href="index.html">概览</a> 页开始,您可以使用每页中的链接以及每页顶部导航栏中的链接来浏览文档。 使用 <a href="index-files/index-1.html">索引</a> 和搜索框可以导航到特定声明和概要页,包括:<a href="allpackages-index.html">所有程序包</a>, <a href="allclasses-index.html">所有类和接口</a>
|
||||
<section class="help-section" id="search">
|
||||
<h3>搜索</h3>
|
||||
<p>可以搜索模块、程序包、类型、字段、方法、系统属性以及 API 中定义的其他术语的定义。可以使用部分或完整名称搜索这些项,(可选)也可以使用“驼峰大小写式”缩写,或使用空格分隔的多个搜索词进行搜索。一些示例:</p>
|
||||
<ul class="help-section-list">
|
||||
<li><code>"j.l.obj"</code> 匹配 "java.lang.Object"</li>
|
||||
<li><code>"InpStr"</code> 匹配 "java.io.InputStream"</li>
|
||||
<li><code>"math exact long"</code> 匹配 "java.lang.Math.absExact(long)"</li>
|
||||
</ul>
|
||||
<p>有关搜索功能的完整说明,请参阅 <a href="https://docs.oracle.com/en/java/javase/21/docs/specs/javadoc/javadoc-search-spec.html">Javadoc 搜索规范</a>。</p>
|
||||
</section>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="sub-title">
|
||||
<h2 id="help-pages">页面类型</h2>
|
||||
以下各部分介绍了此集合中不同类型的页面。
|
||||
<section class="help-section" id="package">
|
||||
<h3>程序包</h3>
|
||||
<p>每个程序包都有一页,其中包含它的类和接口的列表及其概要。这些页可以包含以下类别:</p>
|
||||
<ul class="help-section-list">
|
||||
<li>接口</li>
|
||||
<li>类</li>
|
||||
<li>枚举类</li>
|
||||
<li>异常错误类</li>
|
||||
<li>批注接口</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="help-section" id="class">
|
||||
<h3>类或接口</h3>
|
||||
<p>每个类、接口、嵌套类和嵌套接口都有自己独立的页面。如果这些部分中每个部分的条目为空或不适用,则省略这些条目。</p>
|
||||
<ul class="help-section-list">
|
||||
<li>类继承图</li>
|
||||
<li>直接子类</li>
|
||||
<li>所有已知子接口</li>
|
||||
<li>所有已知实现类</li>
|
||||
<li>类或接口声明</li>
|
||||
<li>类或接口说明</li>
|
||||
</ul>
|
||||
<br>
|
||||
<ul class="help-section-list">
|
||||
<li>嵌套类概要</li>
|
||||
<li>枚举常量概要</li>
|
||||
<li>字段概要</li>
|
||||
<li>属性概要</li>
|
||||
<li>构造器概要</li>
|
||||
<li>方法概要</li>
|
||||
<li>必需元素概要</li>
|
||||
<li>可选元素概要</li>
|
||||
</ul>
|
||||
<br>
|
||||
<ul class="help-section-list">
|
||||
<li>枚举常量详细资料</li>
|
||||
<li>字段详细资料</li>
|
||||
<li>属性详细资料</li>
|
||||
<li>构造器详细资料</li>
|
||||
<li>方法详细资料</li>
|
||||
<li>元素详细资料</li>
|
||||
</ul>
|
||||
<p><span class="help-note">注:</span> 批注接口有必需的元素和可选的元素,但没有方法。 只有枚举类有枚举常量。 记录类的组件显示为记录类声明的一部分。 属性是 JavaFX 的一个特性。</p>
|
||||
<p>概要条目按字母顺序排列,而详细说明则按其在源代码中出现的顺序排列。这有助于保持程序员所建立的逻辑分组。</p>
|
||||
</section>
|
||||
<section class="help-section" id="doc-file">
|
||||
<h3>其他文件</h3>
|
||||
<p>程序包和模块所包含的页面中可能带有与附近声明相关的附加信息。</p>
|
||||
</section>
|
||||
<section class="help-section" id="use">
|
||||
<h3>使用</h3>
|
||||
<p>每个已文档化的程序包、类和接口都有各自的“使用”页面。此页面介绍了使用给定类或程序包的任何部分的程序包、类、方法、构造器和字段。对于给定的类或接口 A,其“使用”页面包含 A 的子类、声明为 A 的字段、返回 A 的方法,以及带有类型为 A 的参数的方法和构造器。访问此页面的方法是:首先转至程序包、类或接口,然后单击导航栏中的“使用”链接。</p>
|
||||
</section>
|
||||
<section class="help-section" id="tree">
|
||||
<h3>树 (类分层结构)</h3>
|
||||
<p>对于所有程序包,都有一个 <a href="overview-tree.html">类分层结构</a> 页,以及每个程序包的分层结构。每个分层结构页都包含类的列表和接口的列表。从 <code>java.lang.Object</code> 开始,按继承结构对类进行排列。接口不从 <code>java.lang.Object</code> 继承。</p>
|
||||
<ul class="help-section-list">
|
||||
<li>查看“概览”页面时,单击“树”将显示所有程序包的分层结构。</li>
|
||||
<li>查看特定程序包、类或接口页时,单击“树”将仅显示该程序包的分层结构。</li>
|
||||
</ul>
|
||||
</section>
|
||||
<section class="help-section" id="all-packages">
|
||||
<h3>所有程序包</h3>
|
||||
<p><a href="allpackages-index.html">所有程序包</a> 包含文档中所有程序包的按字母顺序排列的索引。</p>
|
||||
</section>
|
||||
<section class="help-section" id="all-classes">
|
||||
<h3>所有类和接口</h3>
|
||||
<p><a href="allclasses-index.html">所有类和接口</a> 包含文档中所有类和接口(包括批注接口、枚举类和记录类)的按字母顺序排列的索引。</p>
|
||||
</section>
|
||||
<section class="help-section" id="index">
|
||||
<h3>索引</h3>
|
||||
<p><a href="index-files/index-1.html">索引</a> 包含文档中所有类、接口、构造器、方法和字段的按字母顺序排列的索引,以及概要页(例如 <a href="allpackages-index.html">所有程序包</a>, <a href="allclasses-index.html">所有类和接口</a>)。</p>
|
||||
</section>
|
||||
</div>
|
||||
<hr>
|
||||
<span class="help-footnote">此帮助文件适用于由标准 doclet 生成的 API 文档。</span></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
65
javadoc/index-files/index-1.html
Normal file
65
javadoc/index-files/index-1.html
Normal file
@@ -0,0 +1,65 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>A - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: A">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:A">A</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/AdminCommands.html" class="type-name-link" title="com.playerblocklife中的类">AdminCommands</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/AdminCommands.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">AdminCommands(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/AdminCommands.html" title="com.playerblocklife中的类">AdminCommands</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
81
javadoc/index-files/index-10.html
Normal file
81
javadoc/index-files/index-10.html
Normal file
@@ -0,0 +1,81 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>P - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: P">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:P">P</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html" class="type-name-link" title="com.playerblocklife中的类">PlayerBlockLife</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd>
|
||||
<div class="block">PlayerBlockLife插件主类 - 玩家生命方块系统的核心控制器</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#%3Cinit%3E()" class="member-name-link">PlayerBlockLife()</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html" class="type-name-link" title="com.playerblocklife中的类">PlayerBlockManager</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd>
|
||||
<div class="block">玩家方块管理器 - 负责管理玩家生命方块的核心组件</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife,com.playerblocklife.SkinManager)" class="member-name-link">PlayerBlockManager(PlayerBlockLife, SkinManager)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerJoinListener.html" class="type-name-link" title="com.playerblocklife中的类">PlayerJoinListener</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerJoinListener.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">PlayerJoinListener(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/PlayerJoinListener.html" title="com.playerblocklife中的类">PlayerJoinListener</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerQuitListener.html" class="type-name-link" title="com.playerblocklife中的类">PlayerQuitListener</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerQuitListener.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">PlayerQuitListener(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/PlayerQuitListener.html" title="com.playerblocklife中的类">PlayerQuitListener</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
87
javadoc/index-files/index-11.html
Normal file
87
javadoc/index-files/index-11.html
Normal file
@@ -0,0 +1,87 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>R - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: R">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:R">R</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#regeneratePlayerBlocks(org.bukkit.entity.Player)" class="member-name-link">regeneratePlayerBlocks(Player)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">重新生成玩家的生命方块</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#reloadConfig()" class="member-name-link">reloadConfig()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">重新加载配置文件</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#reloadConfig()" class="member-name-link">reloadConfig()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd>
|
||||
<div class="block">重写 reloadConfig 方法,避免循环依赖</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#reloadMessages()" class="member-name-link">reloadMessages()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">重新加载消息配置</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#reloadPluginConfig()" class="member-name-link">reloadPluginConfig()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd>
|
||||
<div class="block">插件的完整重载方法(用于命令)</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#removeBlock(org.bukkit.Location,org.bukkit.entity.Player)" class="member-name-link">removeBlock(Location, Player)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">移除方块(当被挖掘时)</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#revivePlayer(org.bukkit.entity.Player)" class="member-name-link">revivePlayer(Player)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
87
javadoc/index-files/index-12.html
Normal file
87
javadoc/index-files/index-12.html
Normal file
@@ -0,0 +1,87 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>S - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: S">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:S">S</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#saveConfig()" class="member-name-link">saveConfig()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">保存当前配置到文件</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#saveData()" class="member-name-link">saveData()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">保存数据</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#saveSkinData()" class="member-name-link">saveSkinData()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#setLifeBlocks(org.bukkit.entity.Player,org.bukkit.Location)" class="member-name-link">setLifeBlocks(Player, Location)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">为玩家设置生命方块(兼容旧方法)</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SetLifeBlocksCommand.html" class="type-name-link" title="com.playerblocklife中的类">SetLifeBlocksCommand</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/SetLifeBlocksCommand.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">SetLifeBlocksCommand(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/SetLifeBlocksCommand.html" title="com.playerblocklife中的类">SetLifeBlocksCommand</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#setPlayerHealth(java.util.UUID,int)" class="member-name-link">setPlayerHealth(UUID, int)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html" class="type-name-link" title="com.playerblocklife中的类">SkinManager</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd>
|
||||
<div class="block">皮肤管理器 - 负责玩家皮肤的获取、缓存和应用</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">SkinManager(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
67
javadoc/index-files/index-13.html
Normal file
67
javadoc/index-files/index-13.html
Normal file
@@ -0,0 +1,67 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>U - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: U">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:U">U</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#useExternalMessageFile()" class="member-name-link">useExternalMessageFile()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#useSkinsRestorer()" class="member-name-link">useSkinsRestorer()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">检查是否启用SkinsRestorer插件支持</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
65
javadoc/index-files/index-2.html
Normal file
65
javadoc/index-files/index-2.html
Normal file
@@ -0,0 +1,65 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>B - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: B">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:B">B</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/BlockBreakListener.html" class="type-name-link" title="com.playerblocklife中的类">BlockBreakListener</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/BlockBreakListener.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">BlockBreakListener(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/BlockBreakListener.html" title="com.playerblocklife中的类">BlockBreakListener</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
89
javadoc/index-files/index-3.html
Normal file
89
javadoc/index-files/index-3.html
Normal file
@@ -0,0 +1,89 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>C - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: C">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:C">C</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#checkAllPlayers()" class="member-name-link">checkAllPlayers()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/CheckLifeBlocksCommand.html" class="type-name-link" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/CheckLifeBlocksCommand.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">CheckLifeBlocksCommand(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/CheckLifeBlocksCommand.html" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#checkPlayerHealth(org.bukkit.entity.Player)" class="member-name-link">checkPlayerHealth(Player)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#cleanupOldCache()" class="member-name-link">cleanupOldCache()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#clearPlayerBlocks(java.util.UUID)" class="member-name-link">clearPlayerBlocks(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">清除玩家的所有生命方块</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a> - 程序包 com.playerblocklife</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html" class="type-name-link" title="com.playerblocklife中的类">ConfigManager</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd>
|
||||
<div class="block">配置管理器 - 负责加载、保存和管理插件的配置文件</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">ConfigManager(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">构造一个新的配置管理器</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#createPlayerHead(java.util.UUID,java.lang.String)" class="member-name-link">createPlayerHead(UUID, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">创建带有玩家皮肤的头颅物品</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
191
javadoc/index-files/index-4.html
Normal file
191
javadoc/index-files/index-4.html
Normal file
@@ -0,0 +1,191 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>G - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: G">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:G">G</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#generateLifeBlocksForPlayer(org.bukkit.entity.Player,int,int,boolean,int)" class="member-name-link">generateLifeBlocksForPlayer(Player, int, int, boolean, int)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">为玩家生成指定数量的生命方块</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getAllBlockOwners()" class="member-name-link">getAllBlockOwners()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取所有方块的位置和所有者</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#getAllCustomModelData()" class="member-name-link">getAllCustomModelData()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getAllPlayerBlocks()" class="member-name-link">getAllPlayerBlocks()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取所有玩家的方块数据</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#getAllSkinData()" class="member-name-link">getAllSkinData()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getAutoSaveInterval()" class="member-name-link">getAutoSaveInterval()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#getBlockManager()" class="member-name-link">getBlockManager()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getBlockMaterial()" class="member-name-link">getBlockMaterial()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getBlockOwner(org.bukkit.Location)" class="member-name-link">getBlockOwner(Location)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">检查方块是否属于某个玩家</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getBlocksPerPlayer()" class="member-name-link">getBlocksPerPlayer()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getBroadcastMessage(java.lang.String,java.lang.String)" class="member-name-link">getBroadcastMessage(String, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取广播消息</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getBroadcastRange()" class="member-name-link">getBroadcastRange()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getCacheExpireDays()" class="member-name-link">getCacheExpireDays()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getCommandMessage(java.lang.String,java.lang.String,java.lang.String)" class="member-name-link">getCommandMessage(String, String, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取命令消息</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getConfig()" class="member-name-link">getConfig()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取配置对象</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#getConfigManager()" class="member-name-link">getConfigManager()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getConsoleMessage(java.lang.String,java.lang.String)" class="member-name-link">getConsoleMessage(String, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取控制台消息</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#getCustomModelData(java.util.UUID)" class="member-name-link">getCustomModelData(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getDepth()" class="member-name-link">getDepth()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getExpRewardAmount()" class="member-name-link">getExpRewardAmount()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getExternalMessageFileName()" class="member-name-link">getExternalMessageFileName()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getFormattedMessage(java.lang.String,java.lang.String,java.util.Map)" class="member-name-link">getFormattedMessage(String, String, Map<String, String>)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取格式化消息(替换变量)</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getGameMessage(java.lang.String,java.lang.String)" class="member-name-link">getGameMessage(String, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取游戏内消息</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#getInstance()" class="member-name-link">getInstance()</a> - 类中的静态方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取插件单例实例</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#getLifeSystem()" class="member-name-link">getLifeSystem()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getMaxAttempts()" class="member-name-link">getMaxAttempts()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getMessage(java.lang.String,java.lang.String)" class="member-name-link">getMessage(String, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getMessage(java.lang.String,java.lang.String)" class="member-name-link">getMessage(String, String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取消息</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#getMessageFilePath()" class="member-name-link">getMessageFilePath()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取消息文件路径</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#getMessageManager()" class="member-name-link">getMessageManager()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getMinDistance()" class="member-name-link">getMinDistance()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getNearestBlock(org.bukkit.entity.Player)" class="member-name-link">getNearestBlock(Player)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取距离玩家最近的方块</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getOnFailureAction()" class="member-name-link">getOnFailureAction()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getPlayerBlockLocations(java.util.UUID)" class="member-name-link">getPlayerBlockLocations(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取玩家的生命方块位置列表(用于显示)</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getPlayerBlocks(java.util.UUID)" class="member-name-link">getPlayerBlocks(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取玩家的所有生命方块位置</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getPlayerBlocksCount()" class="member-name-link">getPlayerBlocksCount()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取已注册玩家的数量</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#getPlayerHealth(java.util.UUID)" class="member-name-link">getPlayerHealth(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getRemainingBlocks(java.util.UUID)" class="member-name-link">getRemainingBlocks(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取玩家剩余方块数量</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#getSkinManager()" class="member-name-link">getSkinManager()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getSkinSource()" class="member-name-link">getSkinSource()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取皮肤来源配置</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getSpreadRange()" class="member-name-link">getSpreadRange()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getStats()" class="member-name-link">getStats()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取所有生命方块的统计信息</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#getStorageType()" class="member-name-link">getStorageType()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#getTotalBlocksCount()" class="member-name-link">getTotalBlocksCount()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">获取总方块数量</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
javadoc/index-files/index-5.html
Normal file
71
javadoc/index-files/index-5.html
Normal file
@@ -0,0 +1,71 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>H - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: H">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:H">H</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#handlePlayerDeath(java.util.UUID)" class="member-name-link">handlePlayerDeath(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#hasExternalMessageFile()" class="member-name-link">hasExternalMessageFile()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">检查消息文件是否存在</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#hasLifeBlocks(java.util.UUID)" class="member-name-link">hasLifeBlocks(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">检查玩家是否有生命方块</div>
|
||||
</dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
103
javadoc/index-files/index-6.html
Normal file
103
javadoc/index-files/index-6.html
Normal file
@@ -0,0 +1,103 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>I - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: I">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:I">I</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isAdminOnly(java.lang.String)" class="member-name-link">isAdminOnly(String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isAdminUseAllowed(java.lang.String)" class="member-name-link">isAdminUseAllowed(String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isAutoGenerationEnabled()" class="member-name-link">isAutoGenerationEnabled()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isAutoSaveEnabled()" class="member-name-link">isAutoSaveEnabled()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isBecomeSpectator()" class="member-name-link">isBecomeSpectator()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isBroadcastOnBlockBreak()" class="member-name-link">isBroadcastOnBlockBreak()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isBroadcastOnPlayerDeath()" class="member-name-link">isBroadcastOnPlayerDeath()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isCommandEnabled(java.lang.String)" class="member-name-link">isCommandEnabled(String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isDieWhenBlocksGone()" class="member-name-link">isDieWhenBlocksGone()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isGiveExpReward()" class="member-name-link">isGiveExpReward()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isHealthSystemEnabled()" class="member-name-link">isHealthSystemEnabled()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#isLifeBlock(org.bukkit.Location)" class="member-name-link">isLifeBlock(Location)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">检查位置是否包含生命方块</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#isPlayerAlive(java.util.UUID)" class="member-name-link">isPlayerAlive(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isProtectFromExplosions()" class="member-name-link">isProtectFromExplosions()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isProtectFromFire()" class="member-name-link">isProtectFromFire()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isProtectFromPistons()" class="member-name-link">isProtectFromPistons()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isRequireOpenSky()" class="member-name-link">isRequireOpenSky()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isSelfUseAllowed(java.lang.String)" class="member-name-link">isSelfUseAllowed(String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#isSkinLoaded(java.util.UUID)" class="member-name-link">isSkinLoaded(UUID)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#isSkinSystemEnabled()" class="member-name-link">isSkinSystemEnabled()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
89
javadoc/index-files/index-7.html
Normal file
89
javadoc/index-files/index-7.html
Normal file
@@ -0,0 +1,89 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>L - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: L">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:L">L</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html" class="type-name-link" title="com.playerblocklife中的类">LifeSystem</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd>
|
||||
<div class="block">生命值系统 - 负责管理玩家生命值和状态效果</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/LifeSystem.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">LifeSystem(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/LifeSystem.html" title="com.playerblocklife中的类">LifeSystem</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#loadAllSkins()" class="member-name-link">loadAllSkins()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/ConfigManager.html#loadConfig()" class="member-name-link">loadConfig()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/ConfigManager.html" title="com.playerblocklife中的类">ConfigManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">加载插件配置</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockManager.html#loadData()" class="member-name-link">loadData()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockManager.html" title="com.playerblocklife中的类">PlayerBlockManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">加载数据</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#loadMessages()" class="member-name-link">loadMessages()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd>
|
||||
<div class="block">加载消息配置</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/SkinManager.html#loadPlayerSkinAsync(org.bukkit.entity.Player)" class="member-name-link">loadPlayerSkinAsync(Player)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SkinManager.html" title="com.playerblocklife中的类">SkinManager</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#logError(java.lang.String,java.lang.Throwable)" class="member-name-link">logError(String, Throwable)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#logInfo(java.lang.String)" class="member-name-link">logInfo(String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#logWarning(java.lang.String)" class="member-name-link">logWarning(String)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
65
javadoc/index-files/index-8.html
Normal file
65
javadoc/index-files/index-8.html
Normal file
@@ -0,0 +1,65 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>M - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: M">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:M">M</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html" class="type-name-link" title="com.playerblocklife中的类">MessageManager</a> - <a href="../com/playerblocklife/package-summary.html">com.playerblocklife</a>中的类</dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/MessageManager.html#%3Cinit%3E(com.playerblocklife.PlayerBlockLife)" class="member-name-link">MessageManager(PlayerBlockLife)</a> - 类的构造器 com.playerblocklife.<a href="../com/playerblocklife/MessageManager.html" title="com.playerblocklife中的类">MessageManager</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
85
javadoc/index-files/index-9.html
Normal file
85
javadoc/index-files/index-9.html
Normal file
@@ -0,0 +1,85 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>O - 索引</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index: O">
|
||||
<meta name="generator" content="javadoc/IndexWriter">
|
||||
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="../script.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="index-page">
|
||||
<script type="text/javascript">var pathtoroot = "../";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="../com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="../overview-tree.html">树</a></li>
|
||||
<li class="nav-bar-cell1-rev">索引</li>
|
||||
<li><a href="../help-doc.html#index">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1>索引</h1>
|
||||
</div>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a>
|
||||
<h2 class="title" id="I:O">O</h2>
|
||||
<dl class="index">
|
||||
<dt><a href="../com/playerblocklife/BlockBreakListener.html#onBlockBreak(org.bukkit.event.block.BlockBreakEvent)" class="member-name-link">onBlockBreak(BlockBreakEvent)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/BlockBreakListener.html" title="com.playerblocklife中的类">BlockBreakListener</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/BlockBreakListener.html#onBlockPlace(org.bukkit.event.block.BlockPlaceEvent)" class="member-name-link">onBlockPlace(BlockPlaceEvent)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/BlockBreakListener.html" title="com.playerblocklife中的类">BlockBreakListener</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/AdminCommands.html#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand(CommandSender, Command, String, String[])</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/AdminCommands.html" title="com.playerblocklife中的类">AdminCommands</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/CheckLifeBlocksCommand.html#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand(CommandSender, Command, String, String[])</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/CheckLifeBlocksCommand.html" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/SetLifeBlocksCommand.html#onCommand(org.bukkit.command.CommandSender,org.bukkit.command.Command,java.lang.String,java.lang.String%5B%5D)" class="member-name-link">onCommand(CommandSender, Command, String, String[])</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/SetLifeBlocksCommand.html" title="com.playerblocklife中的类">SetLifeBlocksCommand</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#onDisable()" class="member-name-link">onDisable()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd>
|
||||
<div class="block">插件禁用时调用,执行清理操作</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerBlockLife.html#onEnable()" class="member-name-link">onEnable()</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerBlockLife.html" title="com.playerblocklife中的类">PlayerBlockLife</a></dt>
|
||||
<dd>
|
||||
<div class="block">插件启用时调用,执行初始化操作</div>
|
||||
</dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerJoinListener.html#onPlayerJoin(org.bukkit.event.player.PlayerJoinEvent)" class="member-name-link">onPlayerJoin(PlayerJoinEvent)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerJoinListener.html" title="com.playerblocklife中的类">PlayerJoinListener</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerQuitListener.html#onPlayerQuit(org.bukkit.event.player.PlayerQuitEvent)" class="member-name-link">onPlayerQuit(PlayerQuitEvent)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerQuitListener.html" title="com.playerblocklife中的类">PlayerQuitListener</a></dt>
|
||||
<dd> </dd>
|
||||
<dt><a href="../com/playerblocklife/PlayerJoinListener.html#onPlayerRespawn(org.bukkit.event.player.PlayerRespawnEvent)" class="member-name-link">onPlayerRespawn(PlayerRespawnEvent)</a> - 类中的方法 com.playerblocklife.<a href="../com/playerblocklife/PlayerJoinListener.html" title="com.playerblocklife中的类">PlayerJoinListener</a></dt>
|
||||
<dd> </dd>
|
||||
</dl>
|
||||
<a href="index-1.html">A</a> <a href="index-2.html">B</a> <a href="index-3.html">C</a> <a href="index-4.html">G</a> <a href="index-5.html">H</a> <a href="index-6.html">I</a> <a href="index-7.html">L</a> <a href="index-8.html">M</a> <a href="index-9.html">O</a> <a href="index-10.html">P</a> <a href="index-11.html">R</a> <a href="index-12.html">S</a> <a href="index-13.html">U</a> <br><a href="../allpackages-index.html">所有程序包</a><span class="vertical-separator">|</span><a href="../allclasses-index.html">所有类和接口</a></main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
26
javadoc/index.html
Normal file
26
javadoc/index.html
Normal file
@@ -0,0 +1,26 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>生成的文档 (无标题)</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="index redirect">
|
||||
<meta name="generator" content="javadoc/IndexRedirectWriter">
|
||||
<link rel="canonical" href="com/playerblocklife/package-summary.html">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<script type="text/javascript">window.location.replace('com/playerblocklife/package-summary.html')</script>
|
||||
<noscript>
|
||||
<meta http-equiv="Refresh" content="0;com/playerblocklife/package-summary.html">
|
||||
</noscript>
|
||||
</head>
|
||||
<body class="index-redirect-page">
|
||||
<main role="main">
|
||||
<noscript>
|
||||
<p>您的浏览器已禁用 JavaScript。</p>
|
||||
</noscript>
|
||||
<p><a href="com/playerblocklife/package-summary.html">com/playerblocklife/package-summary.html</a></p>
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
||||
1
javadoc/legal/ADDITIONAL_LICENSE_INFO
Normal file
1
javadoc/legal/ADDITIONAL_LICENSE_INFO
Normal file
@@ -0,0 +1 @@
|
||||
Please see ..\java.base\ADDITIONAL_LICENSE_INFO
|
||||
1
javadoc/legal/ASSEMBLY_EXCEPTION
Normal file
1
javadoc/legal/ASSEMBLY_EXCEPTION
Normal file
@@ -0,0 +1 @@
|
||||
Please see ..\java.base\ASSEMBLY_EXCEPTION
|
||||
1
javadoc/legal/LICENSE
Normal file
1
javadoc/legal/LICENSE
Normal file
@@ -0,0 +1 @@
|
||||
Please see ..\java.base\LICENSE
|
||||
26
javadoc/legal/jquery.md
Normal file
26
javadoc/legal/jquery.md
Normal file
@@ -0,0 +1,26 @@
|
||||
## jQuery v3.7.1
|
||||
|
||||
### jQuery License
|
||||
```
|
||||
jQuery v 3.7.1
|
||||
Copyright OpenJS Foundation and other contributors, https://openjsf.org/
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
```
|
||||
49
javadoc/legal/jqueryUI.md
Normal file
49
javadoc/legal/jqueryUI.md
Normal file
@@ -0,0 +1,49 @@
|
||||
## jQuery UI v1.14.1
|
||||
|
||||
### jQuery UI License
|
||||
```
|
||||
Copyright OpenJS Foundation and other contributors, https://openjsf.org/
|
||||
|
||||
This software consists of voluntary contributions made by many
|
||||
individuals. For exact contribution history, see the revision history
|
||||
available at https://github.com/jquery/jquery-ui
|
||||
|
||||
The following license applies to all parts of this software except as
|
||||
documented below:
|
||||
|
||||
====
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
====
|
||||
|
||||
Copyright and related rights for sample code are waived via CC0. Sample
|
||||
code is defined as all source code contained within the demos directory.
|
||||
|
||||
CC0: http://creativecommons.org/publicdomain/zero/1.0/
|
||||
|
||||
====
|
||||
|
||||
All files located in the node_modules and external directories are
|
||||
externally maintained libraries used by this software which have their
|
||||
own licenses; we recommend you read them, as their terms may differ from
|
||||
the terms above.
|
||||
|
||||
```
|
||||
31
javadoc/link.svg
Normal file
31
javadoc/link.svg
Normal file
@@ -0,0 +1,31 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
|
||||
This code is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License version 2 only, as
|
||||
published by the Free Software Foundation. Oracle designates this
|
||||
particular file as subject to the "Classpath" exception as provided
|
||||
by Oracle in the LICENSE file that accompanied this code.
|
||||
|
||||
This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
version 2 for more details (a copy is included in the LICENSE file that
|
||||
accompanied this code).
|
||||
|
||||
You should have received a copy of the GNU General Public License version
|
||||
2 along with this work; if not, write to the Free Software Foundation,
|
||||
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
or visit www.oracle.com if you need additional information or have any
|
||||
questions.
|
||||
-->
|
||||
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" fill="#505050">
|
||||
<path d="M32 239.3c18.2 16.7 57.1 15.4 74.5-1.7l30.9-32c8.3-8.8 4.8-15.1.7-19.9-4.7-3-12-8.1-20.4.5l-29.4 29.6a29.4 29.4 0 0 1-39.4.9l-8-7c-8.8-9.4-11-28.3-.8-38.8l49.8-51.3c7.2-6.6 21.3-10 36.1-2.4 6.9 5.4 15.6 15.7 26 6.2 9.9-11.2 2.9-20.4-10-29.3-18.7-12.6-52-14.8-70.4 3.8L17 154.2c-20 20.2-11.3 58 1.7 71.5a69 69 0 0 0 13.2 13.6z"/>
|
||||
<path d="M223.2 17.5c-18.4-16.6-57.3-15.3-74.6 2l-30.8 31.9c-8.3 9-4.8 15.2-.7 20 4.8 3 12.1 8 20.5-.6 4.8-5 29.3-29.6 29.3-29.6a29.4 29.4 0 0 1 39.4-1l8 6.8c8.8 9.5 11 28.3.9 38.9l-49.6 51.4c-7.2 6.7-21.3 10.1-36.1 2.6-7-5.4-15.7-15.7-26.1-6.2-9.8 11.2-2.8 20.4 10.2 29.3 18.7 12.5 52 14.7 70.3-4l54.4-56.5c20-20.3 11.2-58-1.9-71.5a69 69 0 0 0-13.2-13.5Z"/>
|
||||
</svg>
|
||||
1
javadoc/member-search-index.js
Normal file
1
javadoc/member-search-index.js
Normal file
File diff suppressed because one or more lines are too long
1
javadoc/module-search-index.js
Normal file
1
javadoc/module-search-index.js
Normal file
@@ -0,0 +1 @@
|
||||
moduleSearchIndex = [];updateSearchResults();
|
||||
90
javadoc/overview-tree.html
Normal file
90
javadoc/overview-tree.html
Normal file
@@ -0,0 +1,90 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>类分层结构</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="class tree">
|
||||
<meta name="generator" content="javadoc/TreeWriter">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="script.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="tree-page">
|
||||
<script type="text/javascript">var pathtoroot = "./";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li>程序包</li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li class="nav-bar-cell1-rev">树</li>
|
||||
<li><a href="index-files/index-1.html">索引</a></li>
|
||||
<li><a href="help-doc.html#tree">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
<div class="nav-list-search"><a href="search.html">SEARCH</a>
|
||||
<input type="text" id="search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="reset-button" disabled value="reset">
|
||||
</div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<div class="header">
|
||||
<h1 class="title">所有程序包的分层结构</h1>
|
||||
</div>
|
||||
<span class="package-hierarchy-label">程序包分层结构:</span>
|
||||
<ul class="horizontal contents-list">
|
||||
<li><a href="com/playerblocklife/package-tree.html">com.playerblocklife</a></li>
|
||||
</ul>
|
||||
<section class="hierarchy">
|
||||
<h2 title="类分层结构">类分层结构</h2>
|
||||
<ul>
|
||||
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" class="type-name-link external-link" title="java.lang中的类或接口">Object</a>
|
||||
<ul>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/AdminCommands.html" class="type-name-link" title="com.playerblocklife中的类">AdminCommands</a> (implements org.bukkit.command.CommandExecutor)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/BlockBreakListener.html" class="type-name-link" title="com.playerblocklife中的类">BlockBreakListener</a> (implements org.bukkit.event.Listener)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/CheckLifeBlocksCommand.html" class="type-name-link" title="com.playerblocklife中的类">CheckLifeBlocksCommand</a> (implements org.bukkit.command.CommandExecutor)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/ConfigManager.html" class="type-name-link" title="com.playerblocklife中的类">ConfigManager</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/LifeSystem.html" class="type-name-link" title="com.playerblocklife中的类">LifeSystem</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/MessageManager.html" class="type-name-link" title="com.playerblocklife中的类">MessageManager</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/PlayerBlockManager.html" class="type-name-link" title="com.playerblocklife中的类">PlayerBlockManager</a></li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/PlayerJoinListener.html" class="type-name-link" title="com.playerblocklife中的类">PlayerJoinListener</a> (implements org.bukkit.event.Listener)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/PlayerQuitListener.html" class="type-name-link" title="com.playerblocklife中的类">PlayerQuitListener</a> (implements org.bukkit.event.Listener)</li>
|
||||
<li class="circle">org.bukkit.plugin.PluginBase (implements org.bukkit.plugin.Plugin)
|
||||
<ul>
|
||||
<li class="circle">org.bukkit.plugin.java.JavaPlugin
|
||||
<ul>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/PlayerBlockLife.html" class="type-name-link" title="com.playerblocklife中的类">PlayerBlockLife</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/SetLifeBlocksCommand.html" class="type-name-link" title="com.playerblocklife中的类">SetLifeBlocksCommand</a> (implements org.bukkit.command.CommandExecutor)</li>
|
||||
<li class="circle">com.playerblocklife.<a href="com/playerblocklife/SkinManager.html" class="type-name-link" title="com.playerblocklife中的类">SkinManager</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
1
javadoc/package-search-index.js
Normal file
1
javadoc/package-search-index.js
Normal file
@@ -0,0 +1 @@
|
||||
packageSearchIndex = [{"l":"com.playerblocklife"},{"l":"所有程序包","u":"allpackages-index.html"}];updateSearchResults();
|
||||
BIN
javadoc/resources/glass.png
Normal file
BIN
javadoc/resources/glass.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 499 B |
BIN
javadoc/resources/x.png
Normal file
BIN
javadoc/resources/x.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 394 B |
2
javadoc/script-dir/jquery-3.7.1.min.js
vendored
Normal file
2
javadoc/script-dir/jquery-3.7.1.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
6
javadoc/script-dir/jquery-ui.min.css
vendored
Normal file
6
javadoc/script-dir/jquery-ui.min.css
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
/*! jQuery UI - v1.14.1 - 2025-01-13
|
||||
* https://jqueryui.com
|
||||
* Includes: core.css, autocomplete.css, menu.css
|
||||
* Copyright OpenJS Foundation and other contributors; Licensed MIT */
|
||||
|
||||
.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}
|
||||
6
javadoc/script-dir/jquery-ui.min.js
vendored
Normal file
6
javadoc/script-dir/jquery-ui.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
253
javadoc/script.js
Normal file
253
javadoc/script.js
Normal file
@@ -0,0 +1,253 @@
|
||||
/*
|
||||
* Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
var moduleSearchIndex;
|
||||
var packageSearchIndex;
|
||||
var typeSearchIndex;
|
||||
var memberSearchIndex;
|
||||
var tagSearchIndex;
|
||||
|
||||
var oddRowColor = "odd-row-color";
|
||||
var evenRowColor = "even-row-color";
|
||||
var sortAsc = "sort-asc";
|
||||
var sortDesc = "sort-desc";
|
||||
var tableTab = "table-tab";
|
||||
var activeTableTab = "active-table-tab";
|
||||
|
||||
function loadScripts(doc, tag) {
|
||||
createElem(doc, tag, 'search.js');
|
||||
|
||||
createElem(doc, tag, 'module-search-index.js');
|
||||
createElem(doc, tag, 'package-search-index.js');
|
||||
createElem(doc, tag, 'type-search-index.js');
|
||||
createElem(doc, tag, 'member-search-index.js');
|
||||
createElem(doc, tag, 'tag-search-index.js');
|
||||
}
|
||||
|
||||
function createElem(doc, tag, path) {
|
||||
var script = doc.createElement(tag);
|
||||
var scriptElement = doc.getElementsByTagName(tag)[0];
|
||||
script.src = pathtoroot + path;
|
||||
scriptElement.parentNode.insertBefore(script, scriptElement);
|
||||
}
|
||||
|
||||
// Helper for making content containing release names comparable lexicographically
|
||||
function makeComparable(s) {
|
||||
return s.toLowerCase().replace(/(\d+)/g,
|
||||
function(n, m) {
|
||||
return ("000" + m).slice(-4);
|
||||
});
|
||||
}
|
||||
|
||||
// Switches between two styles depending on a condition
|
||||
function toggleStyle(classList, condition, trueStyle, falseStyle) {
|
||||
if (condition) {
|
||||
classList.remove(falseStyle);
|
||||
classList.add(trueStyle);
|
||||
} else {
|
||||
classList.remove(trueStyle);
|
||||
classList.add(falseStyle);
|
||||
}
|
||||
}
|
||||
|
||||
// Sorts the rows in a table lexicographically by the content of a specific column
|
||||
function sortTable(header, columnIndex, columns) {
|
||||
var container = header.parentElement;
|
||||
var descending = header.classList.contains(sortAsc);
|
||||
container.querySelectorAll("div.table-header").forEach(
|
||||
function(header) {
|
||||
header.classList.remove(sortAsc);
|
||||
header.classList.remove(sortDesc);
|
||||
}
|
||||
)
|
||||
var cells = container.children;
|
||||
var rows = [];
|
||||
for (var i = columns; i < cells.length; i += columns) {
|
||||
rows.push(Array.prototype.slice.call(cells, i, i + columns));
|
||||
}
|
||||
var comparator = function(a, b) {
|
||||
var ka = makeComparable(a[columnIndex].textContent);
|
||||
var kb = makeComparable(b[columnIndex].textContent);
|
||||
if (ka < kb)
|
||||
return descending ? 1 : -1;
|
||||
if (ka > kb)
|
||||
return descending ? -1 : 1;
|
||||
return 0;
|
||||
};
|
||||
var sorted = rows.sort(comparator);
|
||||
var visible = 0;
|
||||
sorted.forEach(function(row) {
|
||||
if (row[0].style.display !== 'none') {
|
||||
var isEvenRow = visible++ % 2 === 0;
|
||||
}
|
||||
row.forEach(function(cell) {
|
||||
toggleStyle(cell.classList, isEvenRow, evenRowColor, oddRowColor);
|
||||
container.appendChild(cell);
|
||||
})
|
||||
});
|
||||
toggleStyle(header.classList, descending, sortDesc, sortAsc);
|
||||
}
|
||||
|
||||
// Toggles the visibility of a table category in all tables in a page
|
||||
function toggleGlobal(checkbox, selected, columns) {
|
||||
var display = checkbox.checked ? '' : 'none';
|
||||
document.querySelectorAll("div.table-tabs").forEach(function(t) {
|
||||
var id = t.parentElement.getAttribute("id");
|
||||
var selectedClass = id + "-tab" + selected;
|
||||
// if selected is empty string it selects all uncategorized entries
|
||||
var selectUncategorized = !Boolean(selected);
|
||||
var visible = 0;
|
||||
document.querySelectorAll('div.' + id)
|
||||
.forEach(function(elem) {
|
||||
if (selectUncategorized) {
|
||||
if (elem.className.indexOf(selectedClass) === -1) {
|
||||
elem.style.display = display;
|
||||
}
|
||||
} else if (elem.classList.contains(selectedClass)) {
|
||||
elem.style.display = display;
|
||||
}
|
||||
if (elem.style.display === '') {
|
||||
var isEvenRow = visible++ % (columns * 2) < columns;
|
||||
toggleStyle(elem.classList, isEvenRow, evenRowColor, oddRowColor);
|
||||
}
|
||||
});
|
||||
var displaySection = visible === 0 ? 'none' : '';
|
||||
t.parentElement.style.display = displaySection;
|
||||
document.querySelector("li#contents-" + id).style.display = displaySection;
|
||||
})
|
||||
}
|
||||
|
||||
// Shows the elements of a table belonging to a specific category
|
||||
function show(tableId, selected, columns) {
|
||||
if (tableId !== selected) {
|
||||
document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')')
|
||||
.forEach(function(elem) {
|
||||
elem.style.display = 'none';
|
||||
});
|
||||
}
|
||||
document.querySelectorAll('div.' + selected)
|
||||
.forEach(function(elem, index) {
|
||||
elem.style.display = '';
|
||||
var isEvenRow = index % (columns * 2) < columns;
|
||||
toggleStyle(elem.classList, isEvenRow, evenRowColor, oddRowColor);
|
||||
});
|
||||
updateTabs(tableId, selected);
|
||||
}
|
||||
|
||||
function updateTabs(tableId, selected) {
|
||||
document.getElementById(tableId + '.tabpanel')
|
||||
.setAttribute('aria-labelledby', selected);
|
||||
document.querySelectorAll('button[id^="' + tableId + '"]')
|
||||
.forEach(function(tab, index) {
|
||||
if (selected === tab.id || (tableId === selected && index === 0)) {
|
||||
tab.className = activeTableTab;
|
||||
tab.setAttribute('aria-selected', true);
|
||||
tab.setAttribute('tabindex',0);
|
||||
} else {
|
||||
tab.className = tableTab;
|
||||
tab.setAttribute('aria-selected', false);
|
||||
tab.setAttribute('tabindex',-1);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function switchTab(e) {
|
||||
var selected = document.querySelector('[aria-selected=true]');
|
||||
if (selected) {
|
||||
if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) {
|
||||
// left or up arrow key pressed: move focus to previous tab
|
||||
selected.previousSibling.click();
|
||||
selected.previousSibling.focus();
|
||||
e.preventDefault();
|
||||
} else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) {
|
||||
// right or down arrow key pressed: move focus to next tab
|
||||
selected.nextSibling.click();
|
||||
selected.nextSibling.focus();
|
||||
e.preventDefault();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var updateSearchResults = function() {};
|
||||
|
||||
function indexFilesLoaded() {
|
||||
return moduleSearchIndex
|
||||
&& packageSearchIndex
|
||||
&& typeSearchIndex
|
||||
&& memberSearchIndex
|
||||
&& tagSearchIndex;
|
||||
}
|
||||
// Copy the contents of the local snippet to the clipboard
|
||||
function copySnippet(button) {
|
||||
copyToClipboard(button.nextElementSibling.innerText);
|
||||
switchCopyLabel(button, button.firstElementChild);
|
||||
}
|
||||
function copyToClipboard(content) {
|
||||
var textarea = document.createElement("textarea");
|
||||
textarea.style.height = 0;
|
||||
document.body.appendChild(textarea);
|
||||
textarea.value = content;
|
||||
textarea.select();
|
||||
document.execCommand("copy");
|
||||
document.body.removeChild(textarea);
|
||||
}
|
||||
function switchCopyLabel(button, span) {
|
||||
var copied = span.getAttribute("data-copied");
|
||||
button.classList.add("visible");
|
||||
var initialLabel = span.innerHTML;
|
||||
span.innerHTML = copied;
|
||||
setTimeout(function() {
|
||||
button.classList.remove("visible");
|
||||
setTimeout(function() {
|
||||
if (initialLabel !== copied) {
|
||||
span.innerHTML = initialLabel;
|
||||
}
|
||||
}, 100);
|
||||
}, 1900);
|
||||
}
|
||||
// Workaround for scroll position not being included in browser history (8249133)
|
||||
document.addEventListener("DOMContentLoaded", function(e) {
|
||||
var contentDiv = document.querySelector("div.flex-content");
|
||||
window.addEventListener("popstate", function(e) {
|
||||
if (e.state !== null) {
|
||||
contentDiv.scrollTop = e.state;
|
||||
}
|
||||
});
|
||||
window.addEventListener("hashchange", function(e) {
|
||||
history.replaceState(contentDiv.scrollTop, document.title);
|
||||
});
|
||||
var timeoutId;
|
||||
contentDiv.addEventListener("scroll", function(e) {
|
||||
if (timeoutId) {
|
||||
clearTimeout(timeoutId);
|
||||
}
|
||||
timeoutId = setTimeout(function() {
|
||||
history.replaceState(contentDiv.scrollTop, document.title);
|
||||
}, 100);
|
||||
});
|
||||
if (!location.hash) {
|
||||
history.replaceState(contentDiv.scrollTop, document.title);
|
||||
}
|
||||
});
|
||||
284
javadoc/search-page.js
Normal file
284
javadoc/search-page.js
Normal file
@@ -0,0 +1,284 @@
|
||||
/*
|
||||
* Copyright (c) 2022, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
$(function() {
|
||||
var copy = $("#page-search-copy");
|
||||
var expand = $("#page-search-expand");
|
||||
var searchLink = $("span#page-search-link");
|
||||
var redirect = $("input#search-redirect");
|
||||
function setSearchUrlTemplate() {
|
||||
var href = document.location.href.split(/[#?]/)[0];
|
||||
href += "?q=" + "%s";
|
||||
if (redirect.is(":checked")) {
|
||||
href += "&r=1";
|
||||
}
|
||||
searchLink.html(href);
|
||||
copy[0].onmouseenter();
|
||||
}
|
||||
function copyLink(e) {
|
||||
copyToClipboard(this.previousSibling.innerText);
|
||||
switchCopyLabel(this, this.lastElementChild);
|
||||
}
|
||||
copy.click(copyLink);
|
||||
copy[0].onmouseenter = function() {};
|
||||
redirect.click(setSearchUrlTemplate);
|
||||
setSearchUrlTemplate();
|
||||
copy.prop("disabled", false);
|
||||
redirect.prop("disabled", false);
|
||||
expand.click(function (e) {
|
||||
var searchInfo = $("div.page-search-info");
|
||||
if(this.parentElement.hasAttribute("open")) {
|
||||
searchInfo.attr("style", "border-width: 0;");
|
||||
} else {
|
||||
searchInfo.attr("style", "border-width: 1px;").height(searchInfo.prop("scrollHeight"));
|
||||
}
|
||||
});
|
||||
});
|
||||
$(window).on("load", function() {
|
||||
var input = $("#page-search-input");
|
||||
var reset = $("#page-search-reset");
|
||||
var notify = $("#page-search-notify");
|
||||
var resultSection = $("div#result-section");
|
||||
var resultContainer = $("div#result-container");
|
||||
var searchTerm = "";
|
||||
var activeTab = "";
|
||||
var fixedTab = false;
|
||||
var visibleTabs = [];
|
||||
var feelingLucky = false;
|
||||
function renderResults(result) {
|
||||
if (!result.length) {
|
||||
notify.html(messages.noResult);
|
||||
} else if (result.length === 1) {
|
||||
notify.html(messages.oneResult);
|
||||
} else {
|
||||
notify.html(messages.manyResults.replace("{0}", result.length));
|
||||
}
|
||||
resultContainer.empty();
|
||||
var r = {
|
||||
"types": [],
|
||||
"members": [],
|
||||
"packages": [],
|
||||
"modules": [],
|
||||
"searchTags": []
|
||||
};
|
||||
for (var i in result) {
|
||||
var item = result[i];
|
||||
var arr = r[item.category];
|
||||
arr.push(item);
|
||||
}
|
||||
if (!activeTab || r[activeTab].length === 0 || !fixedTab) {
|
||||
Object.keys(r).reduce(function(prev, curr) {
|
||||
if (r[curr].length > 0 && r[curr][0].score > prev) {
|
||||
activeTab = curr;
|
||||
return r[curr][0].score;
|
||||
}
|
||||
return prev;
|
||||
}, 0);
|
||||
}
|
||||
if (feelingLucky && activeTab) {
|
||||
notify.html(messages.redirecting)
|
||||
var firstItem = r[activeTab][0];
|
||||
window.location = getURL(firstItem.indexItem, firstItem.category);
|
||||
return;
|
||||
}
|
||||
if (result.length > 20) {
|
||||
if (searchTerm[searchTerm.length - 1] === ".") {
|
||||
if (activeTab === "types" && r["members"].length > r["types"].length) {
|
||||
activeTab = "members";
|
||||
} else if (activeTab === "packages" && r["types"].length > r["packages"].length) {
|
||||
activeTab = "types";
|
||||
}
|
||||
}
|
||||
}
|
||||
var categoryCount = Object.keys(r).reduce(function(prev, curr) {
|
||||
return prev + (r[curr].length > 0 ? 1 : 0);
|
||||
}, 0);
|
||||
visibleTabs = [];
|
||||
var tabContainer = $("<div class='table-tabs'></div>").appendTo(resultContainer);
|
||||
for (var key in r) {
|
||||
var id = "#result-tab-" + key.replace("searchTags", "search_tags");
|
||||
if (r[key].length) {
|
||||
var count = r[key].length >= 1000 ? "999+" : r[key].length;
|
||||
if (result.length > 20 && categoryCount > 1) {
|
||||
var button = $("<button id='result-tab-" + key
|
||||
+ "' class='page-search-header'><span>" + categories[key] + "</span>"
|
||||
+ "<span style='font-weight: normal'> (" + count + ")</span></button>").appendTo(tabContainer);
|
||||
button.click(key, function(e) {
|
||||
fixedTab = true;
|
||||
renderResult(e.data, $(this));
|
||||
});
|
||||
visibleTabs.push(key);
|
||||
} else {
|
||||
$("<span class='page-search-header active-table-tab'>" + categories[key]
|
||||
+ "<span style='font-weight: normal'> (" + count + ")</span></span>").appendTo(tabContainer);
|
||||
renderTable(key, r[key]).appendTo(resultContainer);
|
||||
tabContainer = $("<div class='table-tabs'></div>").appendTo(resultContainer);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if (activeTab && result.length > 20 && categoryCount > 1) {
|
||||
$("button#result-tab-" + activeTab).addClass("active-table-tab");
|
||||
renderTable(activeTab, r[activeTab]).appendTo(resultContainer);
|
||||
}
|
||||
resultSection.show();
|
||||
function renderResult(category, button) {
|
||||
activeTab = category;
|
||||
setSearchUrl();
|
||||
resultContainer.find("div.summary-table").remove();
|
||||
renderTable(activeTab, r[activeTab]).appendTo(resultContainer);
|
||||
button.siblings().removeClass("active-table-tab");
|
||||
button.addClass("active-table-tab");
|
||||
}
|
||||
}
|
||||
function selectTab(category) {
|
||||
$("button#result-tab-" + category).click();
|
||||
}
|
||||
function renderTable(category, items) {
|
||||
var table = $("<div class='summary-table'>")
|
||||
.addClass(category === "modules"
|
||||
? "one-column-search-results"
|
||||
: "two-column-search-results");
|
||||
var col1, col2;
|
||||
if (category === "modules") {
|
||||
col1 = "Module";
|
||||
} else if (category === "packages") {
|
||||
col1 = "Module";
|
||||
col2 = "Package";
|
||||
} else if (category === "types") {
|
||||
col1 = "Package";
|
||||
col2 = "Class"
|
||||
} else if (category === "members") {
|
||||
col1 = "Class";
|
||||
col2 = "Member";
|
||||
} else if (category === "searchTags") {
|
||||
col1 = "Location";
|
||||
col2 = "Name";
|
||||
}
|
||||
$("<div class='table-header col-plain'>" + col1 + "</div>").appendTo(table);
|
||||
if (category !== "modules") {
|
||||
$("<div class='table-header col-plain'>" + col2 + "</div>").appendTo(table);
|
||||
}
|
||||
$.each(items, function(index, item) {
|
||||
var rowColor = index % 2 ? "odd-row-color" : "even-row-color";
|
||||
renderItem(item, table, rowColor);
|
||||
});
|
||||
return table;
|
||||
}
|
||||
function renderItem(item, table, rowColor) {
|
||||
var label = getHighlightedText(item.input, item.boundaries, item.prefix.length, item.input.length);
|
||||
var link = $("<a/>")
|
||||
.attr("href", getURL(item.indexItem, item.category))
|
||||
.attr("tabindex", "0")
|
||||
.addClass("search-result-link")
|
||||
.html(label);
|
||||
var container = getHighlightedText(item.input, item.boundaries, 0, item.prefix.length - 1);
|
||||
if (item.category === "searchTags") {
|
||||
container = item.indexItem.h || "";
|
||||
}
|
||||
if (item.category !== "modules") {
|
||||
$("<div/>").html(container).addClass("col-plain").addClass(rowColor).appendTo(table);
|
||||
}
|
||||
$("<div/>").html(link).addClass("col-last").addClass(rowColor).appendTo(table);
|
||||
}
|
||||
var timeout;
|
||||
function schedulePageSearch() {
|
||||
if (timeout) {
|
||||
clearTimeout(timeout);
|
||||
}
|
||||
timeout = setTimeout(function () {
|
||||
doPageSearch()
|
||||
}, 100);
|
||||
}
|
||||
function doPageSearch() {
|
||||
setSearchUrl();
|
||||
var term = searchTerm = input.val().trim();
|
||||
if (term === "") {
|
||||
notify.html(messages.enterTerm);
|
||||
activeTab = "";
|
||||
fixedTab = false;
|
||||
resultContainer.empty();
|
||||
resultSection.hide();
|
||||
} else {
|
||||
notify.html(messages.searching);
|
||||
doSearch({ term: term, maxResults: 1200 }, renderResults);
|
||||
}
|
||||
}
|
||||
function setSearchUrl() {
|
||||
var query = input.val().trim();
|
||||
var url = document.location.pathname;
|
||||
if (query) {
|
||||
url += "?q=" + encodeURI(query);
|
||||
if (activeTab && fixedTab) {
|
||||
url += "&c=" + activeTab;
|
||||
}
|
||||
}
|
||||
history.replaceState({query: query}, "", url);
|
||||
}
|
||||
input.on("input", function(e) {
|
||||
feelingLucky = false;
|
||||
schedulePageSearch();
|
||||
});
|
||||
$(document).keydown(function(e) {
|
||||
if ((e.ctrlKey || e.metaKey) && (e.key === "ArrowLeft" || e.key === "ArrowRight")) {
|
||||
if (activeTab && visibleTabs.length > 1) {
|
||||
var idx = visibleTabs.indexOf(activeTab);
|
||||
idx += e.key === "ArrowLeft" ? visibleTabs.length - 1 : 1;
|
||||
selectTab(visibleTabs[idx % visibleTabs.length]);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
reset.click(function() {
|
||||
notify.html(messages.enterTerm);
|
||||
resultSection.hide();
|
||||
activeTab = "";
|
||||
fixedTab = false;
|
||||
resultContainer.empty();
|
||||
input.val('').focus();
|
||||
setSearchUrl();
|
||||
});
|
||||
input.prop("disabled", false);
|
||||
reset.prop("disabled", false);
|
||||
|
||||
var urlParams = new URLSearchParams(window.location.search);
|
||||
if (urlParams.has("q")) {
|
||||
input.val(urlParams.get("q"))
|
||||
}
|
||||
if (urlParams.has("c")) {
|
||||
activeTab = urlParams.get("c");
|
||||
fixedTab = true;
|
||||
}
|
||||
if (urlParams.get("r")) {
|
||||
feelingLucky = true;
|
||||
}
|
||||
if (input.val()) {
|
||||
doPageSearch();
|
||||
} else {
|
||||
notify.html(messages.enterTerm);
|
||||
}
|
||||
input.select().focus();
|
||||
});
|
||||
72
javadoc/search.html
Normal file
72
javadoc/search.html
Normal file
@@ -0,0 +1,72 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (21) on Sat Feb 14 20:12:07 CST 2026 -->
|
||||
<title>搜索</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta name="dc.created" content="2026-02-14">
|
||||
<meta name="description" content="search">
|
||||
<meta name="generator" content="javadoc/SearchWriter">
|
||||
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
|
||||
<link rel="stylesheet" type="text/css" href="script-dir/jquery-ui.min.css" title="Style">
|
||||
<script type="text/javascript" src="script.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-3.7.1.min.js"></script>
|
||||
<script type="text/javascript" src="script-dir/jquery-ui.min.js"></script>
|
||||
</head>
|
||||
<body class="search-page">
|
||||
<script type="text/javascript">var pathtoroot = "./";
|
||||
loadScripts(document, 'script');</script>
|
||||
<noscript>
|
||||
<div>您的浏览器已禁用 JavaScript。</div>
|
||||
</noscript>
|
||||
<div class="flex-box">
|
||||
<header role="banner" class="flex-header">
|
||||
<nav role="navigation">
|
||||
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="切换导航链接"><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span><span class="nav-bar-toggle-icon"> </span></button>
|
||||
<div class="skip-nav"><a href="#skip-navbar-top" title="跳过导航链接">跳过导航链接</a></div>
|
||||
<ul id="navbar-top-firstrow" class="nav-list" title="导航">
|
||||
<li><a href="com/playerblocklife/package-summary.html">程序包</a></li>
|
||||
<li>类</li>
|
||||
<li>使用</li>
|
||||
<li><a href="overview-tree.html">树</a></li>
|
||||
<li><a href="index-files/index-1.html">索引</a></li>
|
||||
<li><a href="help-doc.html#search">帮助</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="sub-nav">
|
||||
<div id="navbar-sub-list"></div>
|
||||
</div>
|
||||
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||
<span class="skip-nav" id="skip-navbar-top"></span></nav>
|
||||
</header>
|
||||
<div class="flex-content">
|
||||
<main role="main">
|
||||
<h1 class="title">搜索</h1>
|
||||
<div>
|
||||
<input type="text" id="page-search-input" disabled placeholder="搜索">
|
||||
<input type="reset" id="page-search-reset" disabled value="重置" style="margin: 6px;">
|
||||
<details class="page-search-details">
|
||||
<summary id="page-search-expand">其他资源</summary>
|
||||
</details>
|
||||
</div>
|
||||
<div class="page-search-info">
|
||||
<p><a href="help-doc.html#search">帮助页</a> 介绍了 JavaDoc 搜索的范围和语法。</p>
|
||||
<p>您可以使用 <ctrl> 或 <cmd> 键与左箭头和右箭头键组合在此页面中的结果选项卡之间切换。</p>
|
||||
<p>下面的 URL 模板可用于在支持此功能的浏览器中将此页面配置为搜索引擎。已经对其进行了测试以在 Google Chrome 和 Mozilla Firefox 中使用。请注意,其他浏览器可能不支持此功能或需要不同的 URL 格式。</p>
|
||||
<span id="page-search-link">link</span><button class="copy" aria-label="复制 URL" id="page-search-copy"><img src="copy.svg" alt="复制 URL"><span data-copied="已复制!">复制</span></button>
|
||||
<p>
|
||||
<input type="checkbox" id="search-redirect" disabled>
|
||||
<label for="search-redirect">重定向到第一个结果</label></p>
|
||||
</div>
|
||||
<p id="page-search-notify">正在加载搜索索引...</p>
|
||||
<div id="result-section" style="display: none;">
|
||||
<div id="result-container"></div>
|
||||
<script type="text/javascript" src="search-page.js"></script>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
458
javadoc/search.js
Normal file
458
javadoc/search.js
Normal file
@@ -0,0 +1,458 @@
|
||||
/*
|
||||
* Copyright (c) 2015, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
"use strict";
|
||||
const messages = {
|
||||
enterTerm: "输入搜索词",
|
||||
noResult: "未找到结果",
|
||||
oneResult: "找到一个结果",
|
||||
manyResults: "找到 {0} 个结果",
|
||||
loading: "正在加载搜索索引...",
|
||||
searching: "正在搜索...",
|
||||
redirecting: "正在重定向到第一个结果...",
|
||||
linkIcon: "链接图标",
|
||||
linkToSection: "链接到此节"
|
||||
}
|
||||
const categories = {
|
||||
modules: "模块",
|
||||
packages: "程序包",
|
||||
types: "类和接口",
|
||||
members: "成员",
|
||||
searchTags: "搜索标记"
|
||||
};
|
||||
const highlight = "<span class='result-highlight'>$&</span>";
|
||||
const NO_MATCH = {};
|
||||
const MAX_RESULTS = 300;
|
||||
function checkUnnamed(name, separator) {
|
||||
return name === "<Unnamed>" || !name ? "" : name + separator;
|
||||
}
|
||||
function escapeHtml(str) {
|
||||
return str.replace(/</g, "<").replace(/>/g, ">");
|
||||
}
|
||||
function getHighlightedText(str, boundaries, from, to) {
|
||||
var start = from;
|
||||
var text = "";
|
||||
for (var i = 0; i < boundaries.length; i += 2) {
|
||||
var b0 = boundaries[i];
|
||||
var b1 = boundaries[i + 1];
|
||||
if (b0 >= to || b1 <= from) {
|
||||
continue;
|
||||
}
|
||||
text += escapeHtml(str.slice(start, Math.max(start, b0)));
|
||||
text += "<span class='result-highlight'>";
|
||||
text += escapeHtml(str.slice(Math.max(start, b0), Math.min(to, b1)));
|
||||
text += "</span>";
|
||||
start = Math.min(to, b1);
|
||||
}
|
||||
text += escapeHtml(str.slice(start, to));
|
||||
return text;
|
||||
}
|
||||
function getURLPrefix(item, category) {
|
||||
var urlPrefix = "";
|
||||
var slash = "/";
|
||||
if (category === "modules") {
|
||||
return item.l + slash;
|
||||
} else if (category === "packages" && item.m) {
|
||||
return item.m + slash;
|
||||
} else if (category === "types" || category === "members") {
|
||||
if (item.m) {
|
||||
urlPrefix = item.m + slash;
|
||||
} else {
|
||||
$.each(packageSearchIndex, function(index, it) {
|
||||
if (it.m && item.p === it.l) {
|
||||
urlPrefix = it.m + slash;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
return urlPrefix;
|
||||
}
|
||||
function getURL(item, category) {
|
||||
if (item.url) {
|
||||
return item.url;
|
||||
}
|
||||
var url = getURLPrefix(item, category);
|
||||
if (category === "modules") {
|
||||
url += "module-summary.html";
|
||||
} else if (category === "packages") {
|
||||
if (item.u) {
|
||||
url = item.u;
|
||||
} else {
|
||||
url += item.l.replace(/\./g, '/') + "/package-summary.html";
|
||||
}
|
||||
} else if (category === "types") {
|
||||
if (item.u) {
|
||||
url = item.u;
|
||||
} else {
|
||||
url += checkUnnamed(item.p, "/").replace(/\./g, '/') + item.l + ".html";
|
||||
}
|
||||
} else if (category === "members") {
|
||||
url += checkUnnamed(item.p, "/").replace(/\./g, '/') + item.c + ".html" + "#";
|
||||
if (item.u) {
|
||||
url += item.u;
|
||||
} else {
|
||||
url += item.l;
|
||||
}
|
||||
} else if (category === "searchTags") {
|
||||
url += item.u;
|
||||
}
|
||||
item.url = url;
|
||||
return url;
|
||||
}
|
||||
function createMatcher(term, camelCase) {
|
||||
if (camelCase && !isUpperCase(term)) {
|
||||
return null; // no need for camel-case matcher for lower case query
|
||||
}
|
||||
var pattern = "";
|
||||
var upperCase = [];
|
||||
term.trim().split(/\s+/).forEach(function(w, index, array) {
|
||||
var tokens = w.split(/(?=[A-Z,.()<>?[\/])/);
|
||||
for (var i = 0; i < tokens.length; i++) {
|
||||
var s = tokens[i];
|
||||
// ',' and '?' are the only delimiters commonly followed by space in java signatures
|
||||
pattern += "(" + $.ui.autocomplete.escapeRegex(s).replace(/[,?]/g, "$&\\s*?") + ")";
|
||||
upperCase.push(false);
|
||||
var isWordToken = /\w$/.test(s);
|
||||
if (isWordToken) {
|
||||
if (i === tokens.length - 1 && index < array.length - 1) {
|
||||
// space in query string matches all delimiters
|
||||
pattern += "(.*?)";
|
||||
upperCase.push(isUpperCase(s[0]));
|
||||
} else {
|
||||
if (!camelCase && isUpperCase(s) && s.length === 1) {
|
||||
pattern += "()";
|
||||
} else {
|
||||
pattern += "([a-z0-9$<>?[\\]]*?)";
|
||||
}
|
||||
upperCase.push(isUpperCase(s[0]));
|
||||
}
|
||||
} else {
|
||||
pattern += "()";
|
||||
upperCase.push(false);
|
||||
}
|
||||
}
|
||||
});
|
||||
var re = new RegExp(pattern, "gi");
|
||||
re.upperCase = upperCase;
|
||||
return re;
|
||||
}
|
||||
function findMatch(matcher, input, startOfName, endOfName) {
|
||||
var from = startOfName;
|
||||
matcher.lastIndex = from;
|
||||
var match = matcher.exec(input);
|
||||
// Expand search area until we get a valid result or reach the beginning of the string
|
||||
while (!match || match.index + match[0].length < startOfName || endOfName < match.index) {
|
||||
if (from === 0) {
|
||||
return NO_MATCH;
|
||||
}
|
||||
from = input.lastIndexOf(".", from - 2) + 1;
|
||||
matcher.lastIndex = from;
|
||||
match = matcher.exec(input);
|
||||
}
|
||||
var boundaries = [];
|
||||
var matchEnd = match.index + match[0].length;
|
||||
var score = 5;
|
||||
var start = match.index;
|
||||
var prevEnd = -1;
|
||||
for (var i = 1; i < match.length; i += 2) {
|
||||
var isUpper = isUpperCase(input[start]);
|
||||
var isMatcherUpper = matcher.upperCase[i];
|
||||
// capturing groups come in pairs, match and non-match
|
||||
boundaries.push(start, start + match[i].length);
|
||||
// make sure groups are anchored on a left word boundary
|
||||
var prevChar = input[start - 1] || "";
|
||||
var nextChar = input[start + 1] || "";
|
||||
if (start !== 0 && !/[\W_]/.test(prevChar) && !/[\W_]/.test(input[start])) {
|
||||
if (isUpper && (isLowerCase(prevChar) || isLowerCase(nextChar))) {
|
||||
score -= 0.1;
|
||||
} else if (isMatcherUpper && start === prevEnd) {
|
||||
score -= isUpper ? 0.1 : 1.0;
|
||||
} else {
|
||||
return NO_MATCH;
|
||||
}
|
||||
}
|
||||
prevEnd = start + match[i].length;
|
||||
start += match[i].length + match[i + 1].length;
|
||||
|
||||
// lower score for parts of the name that are missing
|
||||
if (match[i + 1] && prevEnd < endOfName) {
|
||||
score -= rateNoise(match[i + 1]);
|
||||
}
|
||||
}
|
||||
// lower score if a type name contains unmatched camel-case parts
|
||||
if (input[matchEnd - 1] !== "." && endOfName > matchEnd)
|
||||
score -= rateNoise(input.slice(matchEnd, endOfName));
|
||||
score -= rateNoise(input.slice(0, Math.max(startOfName, match.index)));
|
||||
|
||||
if (score <= 0) {
|
||||
return NO_MATCH;
|
||||
}
|
||||
return {
|
||||
input: input,
|
||||
score: score,
|
||||
boundaries: boundaries
|
||||
};
|
||||
}
|
||||
function isUpperCase(s) {
|
||||
return s !== s.toLowerCase();
|
||||
}
|
||||
function isLowerCase(s) {
|
||||
return s !== s.toUpperCase();
|
||||
}
|
||||
function rateNoise(str) {
|
||||
return (str.match(/([.(])/g) || []).length / 5
|
||||
+ (str.match(/([A-Z]+)/g) || []).length / 10
|
||||
+ str.length / 20;
|
||||
}
|
||||
function doSearch(request, response) {
|
||||
var term = request.term.trim();
|
||||
var maxResults = request.maxResults || MAX_RESULTS;
|
||||
if (term.length === 0) {
|
||||
return this.close();
|
||||
}
|
||||
var matcher = {
|
||||
plainMatcher: createMatcher(term, false),
|
||||
camelCaseMatcher: createMatcher(term, true)
|
||||
}
|
||||
var indexLoaded = indexFilesLoaded();
|
||||
|
||||
function getPrefix(item, category) {
|
||||
switch (category) {
|
||||
case "packages":
|
||||
return checkUnnamed(item.m, "/");
|
||||
case "types":
|
||||
return checkUnnamed(item.p, ".");
|
||||
case "members":
|
||||
return checkUnnamed(item.p, ".") + item.c + ".";
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
}
|
||||
function useQualifiedName(category) {
|
||||
switch (category) {
|
||||
case "packages":
|
||||
return /[\s/]/.test(term);
|
||||
case "types":
|
||||
case "members":
|
||||
return /[\s.]/.test(term);
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
function searchIndex(indexArray, category) {
|
||||
var matches = [];
|
||||
if (!indexArray) {
|
||||
if (!indexLoaded) {
|
||||
matches.push({ l: messages.loading, category: category });
|
||||
}
|
||||
return matches;
|
||||
}
|
||||
$.each(indexArray, function (i, item) {
|
||||
var prefix = getPrefix(item, category);
|
||||
var simpleName = item.l;
|
||||
var qualifiedName = prefix + simpleName;
|
||||
var useQualified = useQualifiedName(category);
|
||||
var input = useQualified ? qualifiedName : simpleName;
|
||||
var startOfName = useQualified ? prefix.length : 0;
|
||||
var endOfName = category === "members" && input.indexOf("(", startOfName) > -1
|
||||
? input.indexOf("(", startOfName) : input.length;
|
||||
var m = findMatch(matcher.plainMatcher, input, startOfName, endOfName);
|
||||
if (m === NO_MATCH && matcher.camelCaseMatcher) {
|
||||
m = findMatch(matcher.camelCaseMatcher, input, startOfName, endOfName);
|
||||
}
|
||||
if (m !== NO_MATCH) {
|
||||
m.indexItem = item;
|
||||
m.prefix = prefix;
|
||||
m.category = category;
|
||||
if (!useQualified) {
|
||||
m.input = qualifiedName;
|
||||
m.boundaries = m.boundaries.map(function(b) {
|
||||
return b + prefix.length;
|
||||
});
|
||||
}
|
||||
matches.push(m);
|
||||
}
|
||||
return true;
|
||||
});
|
||||
return matches.sort(function(e1, e2) {
|
||||
return e2.score - e1.score;
|
||||
}).slice(0, maxResults);
|
||||
}
|
||||
|
||||
var result = searchIndex(moduleSearchIndex, "modules")
|
||||
.concat(searchIndex(packageSearchIndex, "packages"))
|
||||
.concat(searchIndex(typeSearchIndex, "types"))
|
||||
.concat(searchIndex(memberSearchIndex, "members"))
|
||||
.concat(searchIndex(tagSearchIndex, "searchTags"));
|
||||
|
||||
if (!indexLoaded) {
|
||||
updateSearchResults = function() {
|
||||
doSearch(request, response);
|
||||
}
|
||||
} else {
|
||||
updateSearchResults = function() {};
|
||||
}
|
||||
response(result);
|
||||
}
|
||||
// JQuery search menu implementation
|
||||
$.widget("custom.catcomplete", $.ui.autocomplete, {
|
||||
_create: function() {
|
||||
this._super();
|
||||
this.widget().menu("option", "items", "> .result-item");
|
||||
// workaround for search result scrolling
|
||||
this.menu._scrollIntoView = function _scrollIntoView( item ) {
|
||||
var borderTop, paddingTop, offset, scroll, elementHeight, itemHeight;
|
||||
if ( this._hasScroll() ) {
|
||||
borderTop = parseFloat( $.css( this.activeMenu[ 0 ], "borderTopWidth" ) ) || 0;
|
||||
paddingTop = parseFloat( $.css( this.activeMenu[ 0 ], "paddingTop" ) ) || 0;
|
||||
offset = item.offset().top - this.activeMenu.offset().top - borderTop - paddingTop;
|
||||
scroll = this.activeMenu.scrollTop();
|
||||
elementHeight = this.activeMenu.height() - 26;
|
||||
itemHeight = item.outerHeight();
|
||||
|
||||
if ( offset < 0 ) {
|
||||
this.activeMenu.scrollTop( scroll + offset );
|
||||
} else if ( offset + itemHeight > elementHeight ) {
|
||||
this.activeMenu.scrollTop( scroll + offset - elementHeight + itemHeight );
|
||||
}
|
||||
}
|
||||
};
|
||||
},
|
||||
_renderMenu: function(ul, items) {
|
||||
var currentCategory = "";
|
||||
var widget = this;
|
||||
widget.menu.bindings = $();
|
||||
$.each(items, function(index, item) {
|
||||
if (item.category && item.category !== currentCategory) {
|
||||
ul.append("<li class='ui-autocomplete-category'>" + categories[item.category] + "</li>");
|
||||
currentCategory = item.category;
|
||||
}
|
||||
var li = widget._renderItemData(ul, item);
|
||||
if (item.category) {
|
||||
li.attr("aria-label", categories[item.category] + " : " + item.l);
|
||||
} else {
|
||||
li.attr("aria-label", item.l);
|
||||
}
|
||||
li.attr("class", "result-item");
|
||||
});
|
||||
ul.append("<li class='ui-static-link'><a href='" + pathtoroot + "search.html?q="
|
||||
+ encodeURI(widget.term) + "'>Go to search page</a></li>");
|
||||
},
|
||||
_renderItem: function(ul, item) {
|
||||
var li = $("<li/>").appendTo(ul);
|
||||
var div = $("<div/>").appendTo(li);
|
||||
var label = item.l
|
||||
? item.l
|
||||
: getHighlightedText(item.input, item.boundaries, 0, item.input.length);
|
||||
var idx = item.indexItem;
|
||||
if (item.category === "searchTags" && idx && idx.h) {
|
||||
if (idx.d) {
|
||||
div.html(label + "<span class='search-tag-holder-result'> (" + idx.h + ")</span><br><span class='search-tag-desc-result'>"
|
||||
+ idx.d + "</span><br>");
|
||||
} else {
|
||||
div.html(label + "<span class='search-tag-holder-result'> (" + idx.h + ")</span>");
|
||||
}
|
||||
} else {
|
||||
div.html(label);
|
||||
}
|
||||
return li;
|
||||
}
|
||||
});
|
||||
$(function() {
|
||||
var expanded = false;
|
||||
var windowWidth;
|
||||
function collapse() {
|
||||
if (expanded) {
|
||||
$("div#navbar-top").removeAttr("style");
|
||||
$("button#navbar-toggle-button")
|
||||
.removeClass("expanded")
|
||||
.attr("aria-expanded", "false");
|
||||
expanded = false;
|
||||
}
|
||||
}
|
||||
$("button#navbar-toggle-button").click(function (e) {
|
||||
if (expanded) {
|
||||
collapse();
|
||||
} else {
|
||||
var navbar = $("div#navbar-top");
|
||||
navbar.height(navbar.prop("scrollHeight"));
|
||||
$("button#navbar-toggle-button")
|
||||
.addClass("expanded")
|
||||
.attr("aria-expanded", "true");
|
||||
expanded = true;
|
||||
windowWidth = window.innerWidth;
|
||||
}
|
||||
});
|
||||
$("ul.sub-nav-list-small li a").click(collapse);
|
||||
$("input#search-input").focus(collapse);
|
||||
$("main").click(collapse);
|
||||
$("section[id] > :header, :header[id], :header:has(a[id])").each(function(idx, el) {
|
||||
// Create anchor links for headers with an associated id attribute
|
||||
var hdr = $(el);
|
||||
var id = hdr.attr("id") || hdr.parent("section").attr("id") || hdr.children("a").attr("id");
|
||||
if (id) {
|
||||
hdr.append(" <a href='#" + id + "' class='anchor-link' aria-label='" + messages.linkToSection
|
||||
+ "'><img src='" + pathtoroot + "link.svg' alt='" + messages.linkIcon +"' tabindex='0'"
|
||||
+ " width='16' height='16'></a>");
|
||||
}
|
||||
});
|
||||
$(window).on("orientationchange", collapse).on("resize", function(e) {
|
||||
if (expanded && windowWidth !== window.innerWidth) collapse();
|
||||
});
|
||||
var search = $("#search-input");
|
||||
var reset = $("#reset-button");
|
||||
search.catcomplete({
|
||||
minLength: 1,
|
||||
delay: 200,
|
||||
source: doSearch,
|
||||
response: function(event, ui) {
|
||||
if (!ui.content.length) {
|
||||
ui.content.push({ l: messages.noResult });
|
||||
} else {
|
||||
$("#search-input").empty();
|
||||
}
|
||||
},
|
||||
autoFocus: true,
|
||||
focus: function(event, ui) {
|
||||
return false;
|
||||
},
|
||||
position: {
|
||||
collision: "flip"
|
||||
},
|
||||
select: function(event, ui) {
|
||||
if (ui.item.indexItem) {
|
||||
var url = getURL(ui.item.indexItem, ui.item.category);
|
||||
window.location.href = pathtoroot + url;
|
||||
$("#search-input").focus();
|
||||
}
|
||||
}
|
||||
});
|
||||
search.val('');
|
||||
search.prop("disabled", false);
|
||||
reset.prop("disabled", false);
|
||||
reset.click(function() {
|
||||
search.val('').focus();
|
||||
});
|
||||
search.focus();
|
||||
});
|
||||
1272
javadoc/stylesheet.css
Normal file
1272
javadoc/stylesheet.css
Normal file
File diff suppressed because it is too large
Load Diff
1
javadoc/tag-search-index.js
Normal file
1
javadoc/tag-search-index.js
Normal file
@@ -0,0 +1 @@
|
||||
tagSearchIndex = [];updateSearchResults();
|
||||
1
javadoc/type-search-index.js
Normal file
1
javadoc/type-search-index.js
Normal file
@@ -0,0 +1 @@
|
||||
typeSearchIndex = [{"p":"com.playerblocklife","l":"AdminCommands"},{"p":"com.playerblocklife","l":"BlockBreakListener"},{"p":"com.playerblocklife","l":"CheckLifeBlocksCommand"},{"p":"com.playerblocklife","l":"ConfigManager"},{"p":"com.playerblocklife","l":"LifeSystem"},{"p":"com.playerblocklife","l":"MessageManager"},{"p":"com.playerblocklife","l":"PlayerBlockLife"},{"p":"com.playerblocklife","l":"PlayerBlockManager"},{"p":"com.playerblocklife","l":"PlayerJoinListener"},{"p":"com.playerblocklife","l":"PlayerQuitListener"},{"p":"com.playerblocklife","l":"SetLifeBlocksCommand"},{"p":"com.playerblocklife","l":"SkinManager"},{"l":"所有类和接口","u":"allclasses-index.html"}];updateSearchResults();
|
||||
@@ -9,18 +9,58 @@ import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
/**
|
||||
* 配置管理器 - 负责加载、保存和管理插件的配置文件
|
||||
*
|
||||
* <p>主要功能包括:
|
||||
* <ul>
|
||||
* <li>加载和验证配置文件</li>
|
||||
* <li>配置版本检查和自动更新</li>
|
||||
* <li>提供类型安全的配置项访问方法</li>
|
||||
* <li>处理配置文件的保存和重载</li>
|
||||
* <li>管理SkinsRestorer插件集成配置</li>
|
||||
* <li>支持多种皮肤来源的优先级配置</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p><b>SkinsRestorer配置支持:</b>
|
||||
* <ul>
|
||||
* <li><code>skin.source</code>:皮肤来源优先级(skinsrestorer/player_profile/local_cache)</li>
|
||||
* <li><code>skin.use-skinsrestorer</code>:是否启用SkinsRestorer支持</li>
|
||||
* <li><code>skin.cache.expire_days</code>:皮肤缓存过期时间</li>
|
||||
* <li>默认配置已优化,优先使用SkinsRestorer以支持离线服务器</li>
|
||||
* </ul>
|
||||
* </p>
|
||||
*
|
||||
* @author xiaobai
|
||||
* @version 2.1.0
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public class ConfigManager {
|
||||
private final PlayerBlockLife plugin;
|
||||
private FileConfiguration config;
|
||||
private File configFile;
|
||||
|
||||
/**
|
||||
* 构造一个新的配置管理器
|
||||
*
|
||||
* @param plugin 插件主类实例,用于访问插件相关功能
|
||||
*/
|
||||
public ConfigManager(PlayerBlockLife plugin) {
|
||||
this.plugin = plugin;
|
||||
this.configFile = new File(plugin.getDataFolder(), "config.yml");
|
||||
}
|
||||
|
||||
/**
|
||||
* 加载配置
|
||||
* 加载插件配置
|
||||
*
|
||||
* <p>执行以下操作:
|
||||
* <ol>
|
||||
* <li>确保插件数据文件夹存在</li>
|
||||
* <li>如果配置文件不存在,从JAR中复制默认配置</li>
|
||||
* <li>调用reloadConfig()重新加载配置</li>
|
||||
* </ol>
|
||||
*
|
||||
* @see #reloadConfig()
|
||||
*/
|
||||
public void loadConfig() {
|
||||
// 确保配置文件夹存在
|
||||
@@ -39,7 +79,16 @@ public class ConfigManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新加载配置
|
||||
* 重新加载配置文件
|
||||
*
|
||||
* <p>执行以下操作:
|
||||
* <ol>
|
||||
* <li>从磁盘重新加载配置文件</li>
|
||||
* <li>加载JAR中的默认配置作为后备</li>
|
||||
* <li>检查配置版本并进行必要的更新</li>
|
||||
* </ol>
|
||||
*
|
||||
* @see #checkConfigVersion()
|
||||
*/
|
||||
public void reloadConfig() {
|
||||
// 重新从磁盘加载配置
|
||||
@@ -127,7 +176,12 @@ public class ConfigManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存配置
|
||||
* 保存当前配置到文件
|
||||
*
|
||||
* <p>将内存中的配置数据写入到config.yml文件中。
|
||||
* 如果保存失败,会记录错误日志。</p>
|
||||
*
|
||||
* @throws IOException 如果文件写入失败
|
||||
*/
|
||||
public void saveConfig() {
|
||||
try {
|
||||
@@ -139,6 +193,11 @@ public class ConfigManager {
|
||||
|
||||
/**
|
||||
* 获取配置对象
|
||||
*
|
||||
* <p>如果配置对象为null,会自动调用reloadConfig()加载配置。</p>
|
||||
*
|
||||
* @return 当前的FileConfiguration配置对象
|
||||
* @see #reloadConfig()
|
||||
*/
|
||||
public FileConfiguration getConfig() {
|
||||
if (config == null) {
|
||||
@@ -157,6 +216,10 @@ public class ConfigManager {
|
||||
return getConfig().getInt("blocks.spread", 5);
|
||||
}
|
||||
|
||||
public int getMinDistance() {
|
||||
return getConfig().getInt("blocks.min-distance", 10);
|
||||
}
|
||||
|
||||
public int getDepth() {
|
||||
return getConfig().getInt("blocks.depth", -1);
|
||||
}
|
||||
@@ -181,8 +244,64 @@ public class ConfigManager {
|
||||
return getConfig().getBoolean("skin.enabled", true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取皮肤来源配置
|
||||
*
|
||||
* <p>支持的皮肤来源:
|
||||
* <ul>
|
||||
* <li><b>skinsrestorer</b>:优先从SkinsRestorer插件获取皮肤纹理数据
|
||||
* <ul>
|
||||
* <li>推荐用于离线服务器</li>
|
||||
* <li>支持玩家自定义皮肤</li>
|
||||
* <li>避免默认Steve皮肤问题</li>
|
||||
* </ul>
|
||||
* </li>
|
||||
* <li><b>player_profile</b>:优先使用Bukkit的PlayerProfile API
|
||||
* <ul>
|
||||
* <li>需要玩家在线验证</li>
|
||||
* <li>适合在线服务器</li>
|
||||
* <li>支持Mojang官方皮肤</li>
|
||||
* </ul>
|
||||
* </li>
|
||||
* <li><b>local_cache</b>:优先从本地缓存加载皮肤数据
|
||||
* <ul>
|
||||
* <li>减少网络请求</li>
|
||||
* <li>提高加载速度</li>
|
||||
* <li>支持离线使用</li>
|
||||
* </ul>
|
||||
* </li>
|
||||
* </ul>
|
||||
* </p>
|
||||
*
|
||||
* <p>默认配置已将此值设为"skinsrestorer",以优化离线服务器体验。</p>
|
||||
*
|
||||
* @return 皮肤来源配置值
|
||||
* @see #useSkinsRestorer()
|
||||
* @see SkinManager#loadPlayerSkinAsync()
|
||||
*/
|
||||
public String getSkinSource() {
|
||||
return getConfig().getString("skin.source", "player_profile");
|
||||
return getConfig().getString("skin.source", "skinsrestorer");
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查是否启用SkinsRestorer插件支持
|
||||
*
|
||||
* <p>当此方法返回true时,插件将:
|
||||
* <ul>
|
||||
* <li>优先从SkinsRestorer插件获取玩家皮肤纹理</li>
|
||||
* <li>支持离线服务器获取玩家自定义皮肤</li>
|
||||
* <li>避免方块总是显示默认Steve皮肤的问题</li>
|
||||
* <li>使用反射安全调用SkinsRestorer API,无需硬依赖</li>
|
||||
* </ul>
|
||||
* </p>
|
||||
*
|
||||
* <p>默认配置已将此值设为true,以优化离线服务器体验。</p>
|
||||
*
|
||||
* @return 如果启用SkinsRestorer支持返回true,否则返回false
|
||||
* @see #getSkinSource()
|
||||
*/
|
||||
public boolean useSkinsRestorer() {
|
||||
return getConfig().getBoolean("skin.use-skinsrestorer", true);
|
||||
}
|
||||
|
||||
public int getCacheExpireDays() {
|
||||
|
||||
@@ -10,6 +10,32 @@ import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* 生命值系统 - 负责管理玩家生命值和状态效果
|
||||
*
|
||||
* <p>根据玩家剩余生命方块数量计算生命值,并应用相应的状态效果:
|
||||
* <ul>
|
||||
* <li>监控玩家剩余方块数量变化</li>
|
||||
* <li>计算对应的生命值比例</li>
|
||||
* <li>应用虚弱、缓慢、失明等负面效果</li>
|
||||
* <li>处理玩家淘汰和复活逻辑</li>
|
||||
* <li>提供生命值相关的音效和视觉反馈</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p>生命值计算公式:
|
||||
* <pre>
|
||||
* 5个方块 → 20点生命值(满血)
|
||||
* 4个方块 → 16点生命值
|
||||
* 3个方块 → 12点生命值
|
||||
* 2个方块 → 8点生命值
|
||||
* 1个方块 → 4点生命值
|
||||
* 0个方块 → 0点生命值(淘汰)
|
||||
* </pre>
|
||||
*
|
||||
* @author xiaobai
|
||||
* @version 2.1.0
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public class LifeSystem {
|
||||
private final PlayerBlockLife plugin;
|
||||
private final Map<UUID, Integer> playerHealth = new HashMap<>();
|
||||
|
||||
@@ -5,6 +5,25 @@ import org.bukkit.plugin.java.JavaPlugin;
|
||||
|
||||
import java.util.logging.Level;
|
||||
|
||||
/**
|
||||
* PlayerBlockLife插件主类 - 玩家生命方块系统的核心控制器
|
||||
*
|
||||
* <p>这个插件为Minecraft服务器添加了一个独特的游戏机制:每个玩家拥有一定数量的生命方块,
|
||||
* 这些方块使用玩家的皮肤作为材质。当其他玩家挖光某个玩家的所有生命方块时,该玩家会被淘汰。</p>
|
||||
*
|
||||
* <p>主要功能:
|
||||
* <ul>
|
||||
* <li>管理玩家生命方块的生成和销毁</li>
|
||||
* <li>处理玩家皮肤的获取和应用</li>
|
||||
* <li>监控玩家生命值状态</li>
|
||||
* <li>提供完整的命令和权限系统</li>
|
||||
* <li>支持配置热重载和数据持久化</li>
|
||||
* </ul>
|
||||
*
|
||||
* @author xiaobai
|
||||
* @version 3.0.0-experimental-1.20.4
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public class PlayerBlockLife extends JavaPlugin {
|
||||
private static PlayerBlockLife instance;
|
||||
private PlayerBlockManager blockManager;
|
||||
@@ -13,6 +32,22 @@ public class PlayerBlockLife extends JavaPlugin {
|
||||
private ConfigManager configManager;
|
||||
private MessageManager messageManager;
|
||||
|
||||
/**
|
||||
* 插件启用时调用,执行初始化操作
|
||||
*
|
||||
* <p>初始化流程:
|
||||
* <ol>
|
||||
* <li>保存默认配置文件</li>
|
||||
* <li>初始化所有管理器(注意依赖顺序)</li>
|
||||
* <li>加载配置和消息数据</li>
|
||||
* <li>注册事件监听器</li>
|
||||
* <li>注册命令执行器</li>
|
||||
* <li>加载玩家数据和皮肤缓存</li>
|
||||
* <li>启动定时任务</li>
|
||||
* </ol>
|
||||
*
|
||||
* @see #onDisable()
|
||||
*/
|
||||
@Override
|
||||
public void onEnable() {
|
||||
instance = this;
|
||||
@@ -57,6 +92,18 @@ public class PlayerBlockLife extends JavaPlugin {
|
||||
getLogger().info("§a========================================");
|
||||
}
|
||||
|
||||
/**
|
||||
* 插件禁用时调用,执行清理操作
|
||||
*
|
||||
* <p>执行以下清理操作:
|
||||
* <ul>
|
||||
* <li>保存玩家方块数据到文件</li>
|
||||
* <li>保存皮肤缓存数据</li>
|
||||
* <li>记录插件禁用日志</li>
|
||||
* </ul>
|
||||
*
|
||||
* @see #onEnable()
|
||||
*/
|
||||
@Override
|
||||
public void onDisable() {
|
||||
// 保存数据
|
||||
@@ -81,6 +128,16 @@ public class PlayerBlockLife extends JavaPlugin {
|
||||
|
||||
/**
|
||||
* 插件的完整重载方法(用于命令)
|
||||
*
|
||||
* <p>重新加载所有插件配置和数据,包括:
|
||||
* <ul>
|
||||
* <li>主配置文件 (config.yml)</li>
|
||||
* <li>消息配置文件 (messages.yml)</li>
|
||||
* <li>玩家方块数据</li>
|
||||
* <li>皮肤缓存数据</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p>这个方法通常由管理员通过/pblreload命令调用。</p>
|
||||
*/
|
||||
public void reloadPluginConfig() {
|
||||
if (configManager != null) {
|
||||
@@ -125,6 +182,14 @@ public class PlayerBlockLife extends JavaPlugin {
|
||||
}, 1200L, 1200L);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取插件单例实例
|
||||
*
|
||||
* <p>提供全局访问点,允许其他类访问插件主实例。</p>
|
||||
*
|
||||
* @return PlayerBlockLife插件实例
|
||||
* @throws IllegalStateException 如果插件尚未启用(实例为null)
|
||||
*/
|
||||
public static PlayerBlockLife getInstance() {
|
||||
return instance;
|
||||
}
|
||||
|
||||
@@ -18,6 +18,34 @@ import java.io.FileWriter;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
/**
|
||||
* 玩家方块管理器 - 负责管理玩家生命方块的核心组件
|
||||
*
|
||||
* <p>主要职责:
|
||||
* <ul>
|
||||
* <li>生成和放置玩家生命方块</li>
|
||||
* <li>管理方块位置和所有者映射关系</li>
|
||||
* <li>处理方块破坏和恢复逻辑</li>
|
||||
* <li>提供方块数据持久化存储</li>
|
||||
* <li>支持方块位置查询和验证</li>
|
||||
* <li>与SkinManager协同工作,确保方块正确显示玩家皮肤</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p><b>SkinsRestorer集成特性:</b>
|
||||
* <ul>
|
||||
* <li>通过SkinManager获取SkinsRestorer提供的玩家皮肤纹理</li>
|
||||
* <li>确保离线服务器上的方块显示正确的自定义皮肤</li>
|
||||
* <li>支持异步皮肤加载,避免方块放置阻塞</li>
|
||||
* <li>提供皮肤加载状态检查,确保皮肤就绪后再放置方块</li>
|
||||
* </ul>
|
||||
* </p>
|
||||
*
|
||||
* <p>使用并发安全的数据结构确保多线程环境下的数据一致性。</p>
|
||||
*
|
||||
* @author xiaobai
|
||||
* @version 2.1.0
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public class PlayerBlockManager {
|
||||
private final PlayerBlockLife plugin;
|
||||
private final SkinManager skinManager;
|
||||
@@ -47,7 +75,36 @@ public class PlayerBlockManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* 为玩家生成生命方块(新方法,支持自动生成)
|
||||
* 为玩家生成指定数量的生命方块
|
||||
*
|
||||
* <p>此方法负责生成玩家的生命方块,包括以下步骤:
|
||||
* <ol>
|
||||
* <li>检查玩家是否已有生命方块</li>
|
||||
* <li>验证玩家皮肤是否已从SkinsRestorer或其他来源加载完成</li>
|
||||
* <li>在指定范围内寻找合适的放置位置</li>
|
||||
* <li>放置带有玩家皮肤纹理的玩家头颅方块</li>
|
||||
* <li>记录方块位置和所有者关系</li>
|
||||
* <li>保存数据并返回生成结果</li>
|
||||
* </ol>
|
||||
* </p>
|
||||
*
|
||||
* <p><b>皮肤加载检查:</b>
|
||||
* <ul>
|
||||
* <li>调用skinManager.isSkinLoaded()检查皮肤是否就绪</li>
|
||||
* <li>如果皮肤未加载,方块生成将失败</li>
|
||||
* <li>确保离线服务器通过SkinsRestorer获取的皮肤能正确应用</li>
|
||||
* <li>避免放置默认Steve皮肤的方块</li>
|
||||
* </ul>
|
||||
* </p>
|
||||
*
|
||||
* @param player 目标玩家
|
||||
* @param blockAmount 要生成的方块数量
|
||||
* @param spreadRange 生成范围(以玩家为中心的正方形边长的一半)
|
||||
* @param requireOpenSky 是否需要开阔天空(上方无方块覆盖)
|
||||
* @param maxAttempts 寻找合适位置的最大尝试次数
|
||||
* @return 生成成功返回true,失败返回false
|
||||
* @see SkinManager#isSkinLoaded(UUID)
|
||||
* @see SkinManager#getSkinFromSkinsRestorer(Player)
|
||||
*/
|
||||
public boolean generateLifeBlocksForPlayer(Player player, int blockAmount, int spreadRange, boolean requireOpenSky, int maxAttempts) {
|
||||
UUID playerId = player.getUniqueId();
|
||||
@@ -92,24 +149,28 @@ public class PlayerBlockManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* 寻找地表位置(上方无方块覆盖)
|
||||
* 寻找地表位置(放宽条件,只要是露天地面就可以)
|
||||
*/
|
||||
private Location findSurfaceLocation(Location center, int spreadRange, boolean requireOpenSky) {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
for (int i = 0; i < 20; i++) { // 增加尝试次数
|
||||
int x = random.nextInt(spreadRange * 2 + 1) - spreadRange;
|
||||
int z = random.nextInt(spreadRange * 2 + 1) - spreadRange;
|
||||
|
||||
// 从中心点上方开始向下寻找地表
|
||||
Location testLoc = center.clone().add(x, 10, z);
|
||||
// 以玩家坐标为中心,但高度从世界最高点开始寻找
|
||||
Location testLoc = center.clone().add(x, 0, z);
|
||||
World world = testLoc.getWorld();
|
||||
if (world == null) continue;
|
||||
|
||||
// 向下寻找第一个非空气方块
|
||||
// 从世界最高点向下寻找第一个固体方块
|
||||
int maxHeight = world.getMaxHeight();
|
||||
Block groundBlock = null;
|
||||
for (int y = 10; y > world.getMinHeight(); y--) {
|
||||
for (int y = maxHeight; y > world.getMinHeight(); y--) {
|
||||
testLoc.setY(y);
|
||||
Block block = testLoc.getBlock();
|
||||
if (!block.getType().isAir()) {
|
||||
Material type = block.getType();
|
||||
|
||||
// 检查是否是固体方块(可以作为支撑)
|
||||
if (type.isSolid() && type.isBlock() && !type.isTransparent()) {
|
||||
groundBlock = block;
|
||||
break;
|
||||
}
|
||||
@@ -117,24 +178,23 @@ public class PlayerBlockManager {
|
||||
|
||||
if (groundBlock == null) continue;
|
||||
|
||||
// 检查地表方块上方位置
|
||||
// 地表位置 = 固体方块上方一格
|
||||
Location surfaceLoc = groundBlock.getLocation().add(0, 1, 0);
|
||||
Block surfaceBlock = surfaceLoc.getBlock();
|
||||
|
||||
// 检查是否已有方块
|
||||
if (blockOwners.containsKey(surfaceLoc)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// 检查地表方块是否合适
|
||||
if (!isSuitableLocation(surfaceLoc)) {
|
||||
// 检查位置是否合适(放宽条件)
|
||||
if (!isSuitableLocationRelaxed(surfaceLoc)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// 如果需要上方无方块覆盖,检查上方
|
||||
// 如果需要上方无方块覆盖,检查上方3格
|
||||
if (requireOpenSky) {
|
||||
boolean hasCover = false;
|
||||
for (int y = 1; y <= 5; y++) {
|
||||
for (int y = 1; y <= 3; y++) {
|
||||
Block aboveBlock = surfaceLoc.clone().add(0, y, 0).getBlock();
|
||||
if (!aboveBlock.getType().isAir()) {
|
||||
hasCover = true;
|
||||
@@ -234,8 +294,52 @@ public class PlayerBlockManager {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 放宽条件的检查方法(用于新的生成逻辑)
|
||||
*/
|
||||
private boolean isSuitableLocationRelaxed(Location location) {
|
||||
Block block = location.getBlock();
|
||||
|
||||
// 检查是否已有方块
|
||||
if (blockOwners.containsKey(location)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查方块是否可替换(放宽条件)
|
||||
Material type = block.getType();
|
||||
if (!type.isAir()) {
|
||||
// 固体方块不能替换
|
||||
if (type.isSolid()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// 液体方块不能替换
|
||||
if (type == Material.WATER || type == Material.LAVA) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// 检查下方是否有支撑方块(放宽条件)
|
||||
Block below = location.clone().add(0, -1, 0).getBlock();
|
||||
Material belowType = below.getType();
|
||||
|
||||
// 只要下方不是空气或液体就可以
|
||||
if (belowType.isAir() || belowType == Material.WATER || belowType == Material.LAVA) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 放置玩家头颅方块
|
||||
*
|
||||
* <p>使用SkinManager创建带有正确皮肤的玩家头颅方块,支持离线服务器皮肤显示。</p>
|
||||
*
|
||||
* @param location 放置位置
|
||||
* @param playerId 玩家UUID
|
||||
* @param playerName 玩家名称
|
||||
* @return 放置成功返回true,失败返回false
|
||||
*/
|
||||
private boolean placePlayerHead(Location location, UUID playerId, String playerName) {
|
||||
try {
|
||||
@@ -246,15 +350,37 @@ public class PlayerBlockManager {
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查玩家皮肤是否已加载
|
||||
if (!skinManager.isSkinLoaded(playerId)) {
|
||||
plugin.logWarning("玩家 " + playerName + " 的皮肤未加载,无法放置头颅方块");
|
||||
return false;
|
||||
}
|
||||
|
||||
// 设置方块为玩家头颅
|
||||
block.setType(Material.PLAYER_HEAD);
|
||||
|
||||
// 获取并设置头颅数据
|
||||
Skull skullState = (Skull) block.getState();
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerId);
|
||||
|
||||
// 设置头颅所有者
|
||||
skullState.setOwningPlayer(offlinePlayer);
|
||||
|
||||
// 使用SkinManager创建玩家头颅物品,然后应用到方块上
|
||||
ItemStack headItem = skinManager.createPlayerHead(playerId, playerName);
|
||||
SkullMeta itemMeta = (SkullMeta) headItem.getItemMeta();
|
||||
|
||||
if (itemMeta != null) {
|
||||
// 获取物品的玩家档案并应用到方块上
|
||||
org.bukkit.profile.PlayerProfile profile = itemMeta.getPlayerProfile();
|
||||
if (profile != null) {
|
||||
skullState.setOwnerProfile(profile);
|
||||
} else {
|
||||
// 如果无法获取档案,回退到使用离线玩家
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerId);
|
||||
skullState.setOwningPlayer(offlinePlayer);
|
||||
}
|
||||
} else {
|
||||
// 如果物品元数据为空,使用离线玩家
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerId);
|
||||
skullState.setOwningPlayer(offlinePlayer);
|
||||
}
|
||||
|
||||
// 设置朝向(随机方向)
|
||||
BlockData blockData = block.getBlockData();
|
||||
@@ -268,6 +394,7 @@ public class PlayerBlockManager {
|
||||
// 更新方块
|
||||
skullState.update(true, false);
|
||||
|
||||
plugin.logInfo("成功放置玩家头颅方块: " + playerName + " 在 " + location);
|
||||
return true;
|
||||
} catch (Exception e) {
|
||||
plugin.logError("放置玩家头颅失败: " + location, e);
|
||||
|
||||
@@ -137,8 +137,9 @@ public class PlayerJoinListener implements Listener {
|
||||
String onFailure = config.getOnFailureAction();
|
||||
if (onFailure.equals("notify")) {
|
||||
String notifyMsg = plugin.getMessageManager().getMessage("game.errors.cannot_generate_blocks",
|
||||
"&c无法生成生命方块:找不到合适的位置");
|
||||
notifyMsg = notifyMsg.replace("&", "§");
|
||||
"&c无法生成生命方块:{reason}");
|
||||
notifyMsg = notifyMsg.replace("{reason}", "找不到合适的位置(尝试了20次)")
|
||||
.replace("&", "§");
|
||||
player.sendMessage(notifyMsg);
|
||||
player.sendMessage("§7请手动使用 §e/setlifeblocks §7命令生成方块");
|
||||
} else if (onFailure.equals("teleport_to_spawn")) {
|
||||
|
||||
@@ -19,6 +19,42 @@ import java.nio.file.Files;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
/**
|
||||
* 皮肤管理器 - 负责玩家皮肤的获取、缓存和应用
|
||||
*
|
||||
* <p>主要功能:
|
||||
* <ul>
|
||||
* <li>从多种来源获取玩家皮肤数据(SkinsRestorer插件、PlayerProfile、本地缓存)</li>
|
||||
* <li>皮肤数据Base64编码和缓存管理</li>
|
||||
* <li>自定义模型数据分配和管理</li>
|
||||
* <li>异步皮肤加载避免阻塞主线程</li>
|
||||
* <li>皮肤缓存过期清理</li>
|
||||
* <li>完整的SkinsRestorer插件集成支持</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p>皮肤获取优先级(根据配置的source字段):
|
||||
* <ol>
|
||||
* <li><b>skinsrestorer</b>:优先从SkinsRestorer插件获取皮肤纹理数据</li>
|
||||
* <li><b>player_profile</b>:优先使用Bukkit的PlayerProfile API</li>
|
||||
* <li><b>local_cache</b>:优先从本地缓存加载</li>
|
||||
* <li>默认Steve皮肤(所有来源都失败时的备用)</li>
|
||||
* </ol>
|
||||
*
|
||||
* <p><b>SkinsRestorer集成特性:</b>
|
||||
* <ul>
|
||||
* <li>自动检测SkinsRestorer插件是否安装</li>
|
||||
* <li>使用反射安全调用SkinsRestorer API,避免硬依赖</li>
|
||||
* <li>获取完整的皮肤纹理数据(value和signature)</li>
|
||||
* <li>支持离线服务器,避免默认Steve皮肤问题</li>
|
||||
* <li>优雅降级:SkinsRestorer失败时自动回退到其他来源</li>
|
||||
* </ul>
|
||||
*
|
||||
* <p>皮肤缓存默认保留7天,过期后自动重新获取。</p>
|
||||
*
|
||||
* @author xiaobai
|
||||
* @version 2.1.0
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public class SkinManager {
|
||||
private final PlayerBlockLife plugin;
|
||||
private final Map<UUID, String> playerSkinData = new ConcurrentHashMap<>();
|
||||
@@ -60,11 +96,41 @@ public class SkinManager {
|
||||
try {
|
||||
plugin.logInfo("开始加载皮肤: " + player.getName());
|
||||
|
||||
String skinBase64 = getSkinFromPlayerProfile(player);
|
||||
|
||||
String skinBase64 = null;
|
||||
String skinSource = plugin.getConfigManager().getSkinSource();
|
||||
|
||||
// 根据配置的皮肤来源优先级获取皮肤
|
||||
if ("skinsrestorer".equalsIgnoreCase(skinSource)) {
|
||||
// 优先尝试SkinsRestorer
|
||||
skinBase64 = getSkinFromSkinsRestorer(player);
|
||||
if (skinBase64 == null) {
|
||||
plugin.logInfo("SkinsRestorer获取失败,尝试PlayerProfile: " + player.getName());
|
||||
skinBase64 = getSkinFromPlayerProfile(player);
|
||||
}
|
||||
} else if ("player_profile".equalsIgnoreCase(skinSource)) {
|
||||
// 优先尝试PlayerProfile
|
||||
skinBase64 = getSkinFromPlayerProfile(player);
|
||||
if (skinBase64 == null && plugin.getConfigManager().useSkinsRestorer()) {
|
||||
plugin.logInfo("PlayerProfile获取失败,尝试SkinsRestorer: " + player.getName());
|
||||
skinBase64 = getSkinFromSkinsRestorer(player);
|
||||
}
|
||||
} else if ("local_cache".equalsIgnoreCase(skinSource)) {
|
||||
// 优先从本地缓存加载
|
||||
if (loadSkinFromCache(playerId)) {
|
||||
plugin.logInfo("从缓存加载皮肤: " + player.getName());
|
||||
return;
|
||||
}
|
||||
// 缓存不存在,尝试其他来源
|
||||
skinBase64 = getSkinFromPlayerProfile(player);
|
||||
if (skinBase64 == null && plugin.getConfigManager().useSkinsRestorer()) {
|
||||
skinBase64 = getSkinFromSkinsRestorer(player);
|
||||
}
|
||||
}
|
||||
|
||||
// 如果所有来源都失败,使用默认Steve皮肤
|
||||
if (skinBase64 == null) {
|
||||
skinBase64 = getDefaultSteveSkin();
|
||||
plugin.logWarning("使用默认皮肤: " + player.getName());
|
||||
plugin.logWarning("所有皮肤来源都失败,使用默认Steve皮肤: " + player.getName());
|
||||
}
|
||||
|
||||
if (skinBase64 != null) {
|
||||
@@ -87,6 +153,104 @@ public class SkinManager {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 从SkinsRestorer插件获取玩家皮肤纹理数据
|
||||
*
|
||||
* <p>SkinsRestorer是一个流行的皮肤管理插件,可以在离线服务器上提供皮肤支持。</p>
|
||||
*
|
||||
* <p>此方法使用反射安全调用SkinsRestorer API,避免硬依赖。支持离线服务器获取玩家自定义皮肤。</p>
|
||||
*
|
||||
* <p>获取流程:
|
||||
* <ol>
|
||||
* <li>检查SkinsRestorer插件是否安装</li>
|
||||
* <li>使用反射获取SkinsRestorer API实例</li>
|
||||
* <li>优先通过UUID获取皮肤数据(更可靠)</li>
|
||||
* <li>如果UUID获取失败,回退到使用玩家名获取</li>
|
||||
* <li>提取皮肤纹理的value和signature字段</li>
|
||||
* <li>构建完整的Base64编码纹理JSON</li>
|
||||
* </ol>
|
||||
* </p>
|
||||
*
|
||||
* <p><b>离线服务器优势:</b>
|
||||
* <ul>
|
||||
* <li>即使玩家离线也能获取其预设皮肤</li>
|
||||
* <li>避免总是显示默认Steve皮肤的问题</li>
|
||||
* <li>支持管理员设置的皮肤和玩家自定义皮肤</li>
|
||||
* </ul>
|
||||
* </p>
|
||||
*
|
||||
* @param player 要获取皮肤的玩家对象
|
||||
* @return 完整的Base64编码皮肤纹理JSON,如果获取失败返回null
|
||||
* @throws ClassNotFoundException 如果SkinsRestorer API类未找到(插件未安装)
|
||||
* @throws Exception 反射调用过程中的其他异常
|
||||
*/
|
||||
private String getSkinFromSkinsRestorer(Player player) {
|
||||
try {
|
||||
// 检查SkinsRestorer插件是否存在
|
||||
if (Bukkit.getPluginManager().getPlugin("SkinsRestorer") == null) {
|
||||
plugin.logInfo("SkinsRestorer插件未安装,跳过从SkinsRestorer获取皮肤");
|
||||
return null;
|
||||
}
|
||||
|
||||
plugin.logInfo("尝试从SkinsRestorer获取皮肤: " + player.getName());
|
||||
|
||||
// 使用反射调用SkinsRestorer API
|
||||
Class<?> skinsRestorerClass = Class.forName("net.skinsrestorer.api.SkinsRestorerAPI");
|
||||
Object skinsRestorerAPI = skinsRestorerClass.getMethod("getApi").invoke(null);
|
||||
|
||||
// 获取玩家皮肤数据 - 使用UUID而不是玩家名,更可靠
|
||||
Class<?> skinPropertyClass = Class.forName("net.skinsrestorer.api.property.SkinProperty");
|
||||
Object skinProperty = skinsRestorerAPI.getClass().getMethod("getSkinData", UUID.class)
|
||||
.invoke(skinsRestorerAPI, player.getUniqueId());
|
||||
|
||||
// 如果通过UUID获取失败,尝试使用玩家名
|
||||
if (skinProperty == null) {
|
||||
skinProperty = skinsRestorerAPI.getClass().getMethod("getSkinData", String.class)
|
||||
.invoke(skinsRestorerAPI, player.getName());
|
||||
}
|
||||
|
||||
if (skinProperty != null) {
|
||||
String value = (String) skinPropertyClass.getMethod("getValue").invoke(skinProperty);
|
||||
String signature = (String) skinPropertyClass.getMethod("getSignature").invoke(skinProperty);
|
||||
|
||||
// 创建完整的纹理JSON对象
|
||||
JsonObject textureJson = new JsonObject();
|
||||
JsonObject texturesJson = new JsonObject();
|
||||
JsonObject skinJson = new JsonObject();
|
||||
|
||||
skinJson.addProperty("url", "http://textures.minecraft.net/texture/" + value);
|
||||
texturesJson.add("SKIN", skinJson);
|
||||
textureJson.add("textures", texturesJson);
|
||||
|
||||
// 添加时间戳确保唯一性
|
||||
textureJson.addProperty("timestamp", System.currentTimeMillis());
|
||||
|
||||
String base64Texture = java.util.Base64.getEncoder().encodeToString(textureJson.toString().getBytes());
|
||||
|
||||
plugin.logInfo("成功从SkinsRestorer获取皮肤: " + player.getName());
|
||||
return base64Texture;
|
||||
} else {
|
||||
plugin.logInfo("SkinsRestorer中没有找到玩家 " + player.getName() + " 的皮肤数据");
|
||||
}
|
||||
} catch (ClassNotFoundException e) {
|
||||
plugin.logWarning("SkinsRestorer API类未找到,插件可能未安装或版本不兼容: " + e.getMessage());
|
||||
} catch (NoSuchMethodException e) {
|
||||
plugin.logWarning("SkinsRestorer API方法未找到,可能是版本不兼容: " + e.getMessage());
|
||||
} catch (Exception e) {
|
||||
plugin.logWarning("从SkinsRestorer获取皮肤失败: " + e.getMessage());
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 从PlayerProfile获取玩家皮肤数据
|
||||
*
|
||||
* <p>使用Bukkit的PlayerProfile API获取在线玩家的皮肤URL,然后转换为Base64纹理。</p>
|
||||
*
|
||||
* @param player 要获取皮肤的玩家
|
||||
* @return 皮肤的Base64纹理值,如果获取失败返回null
|
||||
*/
|
||||
private String getSkinFromPlayerProfile(Player player) {
|
||||
try {
|
||||
PlayerProfile profile = player.getPlayerProfile();
|
||||
@@ -94,30 +258,27 @@ public class SkinManager {
|
||||
URL skinUrl = textures.getSkin();
|
||||
|
||||
if (skinUrl != null) {
|
||||
BufferedImage skinImage = ImageIO.read(skinUrl);
|
||||
if (skinImage == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
int headX = 8;
|
||||
int headY = 8;
|
||||
int headWidth = 8;
|
||||
int headHeight = 8;
|
||||
|
||||
if (skinImage.getWidth() >= headX + headWidth &&
|
||||
skinImage.getHeight() >= headY + headHeight) {
|
||||
|
||||
BufferedImage headImage = skinImage.getSubimage(headX, headY, headWidth, headHeight);
|
||||
|
||||
ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
||||
ImageIO.write(headImage, "PNG", baos);
|
||||
byte[] imageBytes = baos.toByteArray();
|
||||
|
||||
JsonObject textureJson = new JsonObject();
|
||||
JsonObject timestampJson = new JsonObject();
|
||||
|
||||
return player.getUniqueId().toString();
|
||||
}
|
||||
// 创建纹理JSON对象
|
||||
JsonObject textureJson = new JsonObject();
|
||||
JsonObject texturesJson = new JsonObject();
|
||||
JsonObject skinJson = new JsonObject();
|
||||
|
||||
// 直接使用皮肤URL,不需要处理图像
|
||||
skinJson.addProperty("url", skinUrl.toString());
|
||||
texturesJson.add("SKIN", skinJson);
|
||||
textureJson.add("textures", texturesJson);
|
||||
|
||||
// 添加时间戳确保唯一性
|
||||
textureJson.addProperty("timestamp", System.currentTimeMillis());
|
||||
textureJson.addProperty("profileId", player.getUniqueId().toString());
|
||||
textureJson.addProperty("profileName", player.getName());
|
||||
|
||||
String base64Texture = java.util.Base64.getEncoder().encodeToString(textureJson.toString().getBytes());
|
||||
|
||||
plugin.logInfo("成功从PlayerProfile获取皮肤: " + player.getName());
|
||||
return base64Texture;
|
||||
} else {
|
||||
plugin.logInfo("PlayerProfile中没有找到玩家 " + player.getName() + " 的皮肤URL");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
plugin.logWarning("从PlayerProfile获取皮肤失败: " + e.getMessage());
|
||||
@@ -163,23 +324,92 @@ public class SkinManager {
|
||||
return modelData;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取默认Steve皮肤的Base64纹理
|
||||
*
|
||||
* <p>当无法从任何来源获取玩家皮肤时,使用默认的Steve皮肤作为备用。</p>
|
||||
*
|
||||
* @return 默认Steve皮肤的Base64纹理值
|
||||
*/
|
||||
private String getDefaultSteveSkin() {
|
||||
return "8667ba71-b85a-4004-af54-457a9734eed7";
|
||||
// Steve皮肤的纹理哈希值
|
||||
String steveTextureHash = "8667ba71b85a4004af54457a9734eed7";
|
||||
|
||||
JsonObject textureJson = new JsonObject();
|
||||
JsonObject texturesJson = new JsonObject();
|
||||
JsonObject skinJson = new JsonObject();
|
||||
|
||||
// 使用Minecraft官方纹理服务器URL
|
||||
skinJson.addProperty("url", "http://textures.minecraft.net/texture/" + steveTextureHash);
|
||||
texturesJson.add("SKIN", skinJson);
|
||||
textureJson.add("textures", texturesJson);
|
||||
|
||||
// 添加时间戳
|
||||
textureJson.addProperty("timestamp", System.currentTimeMillis());
|
||||
textureJson.addProperty("profileId", "c06f8906-4c8a-4911-9c29-ea1dbd1aab82"); // Steve的UUID
|
||||
textureJson.addProperty("profileName", "Steve");
|
||||
|
||||
return java.util.Base64.getEncoder().encodeToString(textureJson.toString().getBytes());
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建带有玩家皮肤的头颅物品
|
||||
*
|
||||
* <p>使用Base64纹理数据创建自定义玩家头颅,支持离线服务器皮肤显示。</p>
|
||||
*
|
||||
* @param playerId 玩家UUID
|
||||
* @param playerName 玩家名称
|
||||
* @return 带有玩家皮肤的玩家头颅物品
|
||||
*/
|
||||
public ItemStack createPlayerHead(UUID playerId, String playerName) {
|
||||
ItemStack head = new ItemStack(org.bukkit.Material.PLAYER_HEAD);
|
||||
SkullMeta meta = (SkullMeta) head.getItemMeta();
|
||||
|
||||
if (meta != null) {
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerId);
|
||||
meta.setOwningPlayer(offlinePlayer);
|
||||
// 获取玩家的Base64皮肤数据
|
||||
String skinBase64 = playerSkinData.get(playerId);
|
||||
|
||||
if (skinBase64 != null) {
|
||||
try {
|
||||
// 对于Paper API,我们需要使用Paper特定的方法
|
||||
// 首先尝试使用Paper的ProfileProperty API
|
||||
Class<?> propertyClass = Class.forName("com.destroystokyo.paper.profile.ProfileProperty");
|
||||
|
||||
// 创建ProfileProperty对象
|
||||
Object property = propertyClass.getConstructor(String.class, String.class)
|
||||
.newInstance("textures", skinBase64);
|
||||
|
||||
// 获取Paper的PlayerProfile
|
||||
Object profile = Bukkit.class.getMethod("createProfile", UUID.class, String.class)
|
||||
.invoke(null, playerId, playerName);
|
||||
|
||||
// 设置属性到档案
|
||||
Class<?> profileClass = profile.getClass();
|
||||
profileClass.getMethod("setProperty", propertyClass).invoke(profile, property);
|
||||
|
||||
// 设置头颅的所有者档案 - 使用正确的类型转换
|
||||
// Paper的SkullMeta.setPlayerProfile期望com.destroystokyo.paper.profile.PlayerProfile
|
||||
meta.setPlayerProfile((com.destroystokyo.paper.profile.PlayerProfile) profile);
|
||||
|
||||
} catch (Exception e) {
|
||||
// 如果反射失败,回退到使用离线玩家(可能显示默认皮肤)
|
||||
plugin.logWarning("无法设置Base64皮肤,使用离线玩家档案: " + e.getMessage());
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerId);
|
||||
meta.setOwningPlayer(offlinePlayer);
|
||||
}
|
||||
} else {
|
||||
// 没有皮肤数据,使用离线玩家
|
||||
OfflinePlayer offlinePlayer = Bukkit.getOfflinePlayer(playerId);
|
||||
meta.setOwningPlayer(offlinePlayer);
|
||||
}
|
||||
|
||||
// 设置自定义模型数据(如果有)
|
||||
Integer customModelData = playerCustomModelData.get(playerId);
|
||||
if (customModelData != null) {
|
||||
meta.setCustomModelData(customModelData);
|
||||
}
|
||||
|
||||
// 设置显示名称和描述
|
||||
meta.setDisplayName("§e" + playerName + "的生命方块");
|
||||
|
||||
List<String> lore = new ArrayList<>();
|
||||
|
||||
@@ -7,6 +7,8 @@ blocks:
|
||||
amount: 5
|
||||
# 方块生成范围(以玩家为中心的正方形边长的一半)
|
||||
spread: 5
|
||||
# 方块生成最小范围(方块之间最小距离,单位:格)
|
||||
min-distance: 10
|
||||
# 方块埋藏深度(0为地面,负数为地下)
|
||||
depth: -1
|
||||
# 方块材质类型
|
||||
@@ -41,8 +43,16 @@ game:
|
||||
skin:
|
||||
# 是否启用皮肤系统
|
||||
enabled: true
|
||||
# 皮肤来源 (player_profile, local_cache)
|
||||
source: player_profile
|
||||
# 皮肤来源 (player_profile, local_cache, skinsrestorer)
|
||||
# player_profile: 使用Bukkit的PlayerProfile API(需要在线验证)
|
||||
# local_cache: 使用本地缓存的皮肤数据
|
||||
# skinsrestorer: 使用SkinsRestorer插件的皮肤数据(推荐用于离线服务器)
|
||||
source: skinsrestorer
|
||||
|
||||
# 是否使用SkinsRestorer插件的皮肤(如果服务器有此插件)
|
||||
# 设置为true时,插件会优先从SkinsRestorer获取皮肤数据
|
||||
# 这对于离线服务器特别有用,可以避免默认Steve皮肤的问题
|
||||
use-skinsrestorer: true
|
||||
|
||||
# 缓存设置
|
||||
cache:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
name: PlayerBlockLife
|
||||
version: 2.0.0-1.20.4
|
||||
version: 3.0.0-experimental-1.20.4
|
||||
main: com.playerblocklife.PlayerBlockLife
|
||||
api-version: 1.20
|
||||
author: xiaobai
|
||||
|
||||
Reference in New Issue
Block a user