<li><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/LockedCategory.html"title="class in me.mrCookieSlime.Slimefun.Objects"><spanclass="typeNameLink">Prev Class</span></a></li>
<li><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SeasonalCategory.html"title="class in me.mrCookieSlime.Slimefun.Objects"><spanclass="typeNameLink">Next Class</span></a></li>
<dd><ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Keyed.html?is-external=true"title="class or interface in org.bukkit">Keyed</a></dd>
</dl>
<hr>
<br>
<pre>public class <spanclass="typeNameLabel">Research</span>
extends java.lang.Object
implements <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Keyed.html?is-external=true"title="class or interface in org.bukkit">Keyed</a></pre>
<divclass="block">Statically handles researches. Represents a research, which is bound to one
<ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem"><code>SlimefunItem</code></a> or more and require XP levels to unlock this/these item(s).</div>
<dd><ahref="../../../../io/github/thebusybiscuit/slimefun4/implementation/setup/ResearchSetup.html"title="class in io.github.thebusybiscuit.slimefun4.implementation.setup"><code>ResearchSetup</code></a>,
<ahref="../../../../io/github/thebusybiscuit/slimefun4/api/events/ResearchUnlockEvent.html"title="class in io.github.thebusybiscuit.slimefun4.api.events"><code>ResearchUnlockEvent</code></a></dd>
<thclass="colOne"scope="col">Constructor and Description</th>
</tr>
<trclass="altColor">
<tdclass="colOne"><code><spanclass="memberNameLink"><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#Research-org.bukkit.NamespacedKey-int-java.lang.String-int-">Research</a></span>(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/NamespacedKey.html?is-external=true"title="class or interface in org.bukkit">NamespacedKey</a> key,
int id,
java.lang.String name,
int defaultCost)</code>
<divclass="block">The constructor for a <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ulclass="blockList">
<liclass="blockList"><aname="method.summary">
<!---->
</a>
<h3>Method Summary</h3>
<tableclass="memberSummary"border="0"cellpadding="3"cellspacing="0"summary="Method Summary table, listing methods, and an explanation">
<thclass="colFirst"scope="col">Modifier and Type</th>
<thclass="colLast"scope="col">Method and Description</th>
</tr>
<trid="i0"class="altColor">
<tdclass="colFirst"><code>void</code></td>
<tdclass="colLast"><code><spanclass="memberNameLink"><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#addItems-me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem...-">addItems</a></span>(<ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem">SlimefunItem</a>... items)</code>
<divclass="block">Bind the specified Slimefun items to this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
</td>
</tr>
<trid="i1"class="rowColor">
<tdclass="colFirst"><code>boolean</code></td>
<tdclass="colLast"><code><spanclass="memberNameLink"><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#canUnlock-org.bukkit.entity.Player-">canUnlock</a></span>(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity">Player</a> p)</code>
<divclass="block">Checks if the <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a> can unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
</td>
</tr>
<trid="i2"class="altColor">
<tdclass="colFirst"><code>java.util.List<<ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem">SlimefunItem</a>></code></td>
<divclass="block">Lists every <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem"><code>SlimefunItem</code></a> that is bound to this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
</td>
</tr>
<trid="i3"class="rowColor">
<tdclass="colFirst"><code>static <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects">Research</a></code></td>
<divclass="block">Attempts to get a <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> with the given ID.</div>
<divclass="block">Gets the cost in XP levels to unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<divclass="block">Gets the ID of this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
</td>
</tr>
<trid="i6"class="altColor">
<tdclass="colFirst"><code><ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/NamespacedKey.html?is-external=true"title="class or interface in org.bukkit">NamespacedKey</a></code></td>
<tdclass="colLast"><code><spanclass="memberNameLink"><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#getName-org.bukkit.entity.Player-">getName</a></span>(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity">Player</a> p)</code>
<divclass="block">This method gives you a localized name for this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<divclass="block">This method returns whether this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> is enabled.</div>
<divclass="block">Registers this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<divclass="block">Sets the cost in XP levels to unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<tdclass="colLast"><code><spanclass="memberNameLink"><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#unlock-org.bukkit.entity.Player-boolean-">unlock</a></span>(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity">Player</a> p,
boolean instant)</code>
<divclass="block">Unlocks this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> for the specified <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a>.</div>
<pre>public Research(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/NamespacedKey.html?is-external=true"title="class or interface in org.bukkit">NamespacedKey</a> key,
int id,
java.lang.String name,
int defaultCost)</pre>
<divclass="block">The constructor for a <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.
Create a new research, then bind this research to the Slimefun items you want by calling
<ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#addItems-me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem...-"><code>addItems(SlimefunItem...)</code></a>. Once you're finished, call <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html#register--"><code>register()</code></a>
to register it.
To speed up, directly setup the research by calling
<dd><code>key</code> - A unique identifier for this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
<dd><code>id</code> - old way of identifying researches</dd>
<dd><code>name</code> - The displayed name of this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
<dd><code>defaultCost</code> - The Cost in XP levels to unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ulclass="blockList">
<liclass="blockList"><aname="method.detail">
<!---->
</a>
<h3>Method Detail</h3>
<aname="getKey--">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>getKey</h4>
<pre>public <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/NamespacedKey.html?is-external=true"title="class or interface in org.bukkit">NamespacedKey</a> getKey()</pre>
<dd><code><ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Keyed.html?is-external=true#getKey--"title="class or interface in org.bukkit">getKey</a></code> in interface <code><ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Keyed.html?is-external=true"title="class or interface in org.bukkit">Keyed</a></code></dd>
<divclass="block">This method returns whether this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> is enabled.
<code>false</code> can mean that this particular <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> was disabled or that
researches alltogether have been disabled.</div>
<dl>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd>Whether this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> is enabled or not</dd>
<divclass="block">Gets the ID of this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.
This is the old way of identifying Researches, use a <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/NamespacedKey.html?is-external=true"title="class or interface in org.bukkit"><code>NamespacedKey</code></a> in the future.</div>
<dl>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd>The ID of this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
</dl>
</li>
</ul>
<aname="getName-org.bukkit.entity.Player-">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>getName</h4>
<pre>public java.lang.String getName(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity">Player</a> p)</pre>
<divclass="block">This method gives you a localized name for this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.
The name is automatically taken from the currently selected <ahref="../../../../io/github/thebusybiscuit/slimefun4/core/services/localization/Language.html"title="class in io.github.thebusybiscuit.slimefun4.core.services.localization"><code>Language</code></a> of
the specified <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a>.</div>
<dd><code>p</code> - The <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a> to translate this name for.</dd>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd>The localized Name of this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</dd>
</dl>
</li>
</ul>
<aname="getCost--">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>getCost</h4>
<pre>public int getCost()</pre>
<divclass="block">Gets the cost in XP levels to unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<dl>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd>The cost in XP levels for this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
<divclass="block">Sets the cost in XP levels to unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<pre>public void addItems(<ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem">SlimefunItem</a>... items)</pre>
<divclass="block">Bind the specified Slimefun items to this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<dd><code>items</code> - Instances of <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem"><code>SlimefunItem</code></a> to bind to this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
</dl>
</li>
</ul>
<aname="getAffectedItems--">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>getAffectedItems</h4>
<pre>public java.util.List<<ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem">SlimefunItem</a>> getAffectedItems()</pre>
<divclass="block">Lists every <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SlimefunItem/SlimefunItem.html"title="class in me.mrCookieSlime.Slimefun.Objects.SlimefunItem"><code>SlimefunItem</code></a> that is bound to this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<dl>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd>The Slimefun items bound to this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</dd>
</dl>
</li>
</ul>
<aname="canUnlock-org.bukkit.entity.Player-">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>canUnlock</h4>
<pre>public boolean canUnlock(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity">Player</a> p)</pre>
<divclass="block">Checks if the <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a> can unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
<dd><code>p</code> - The <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a> to check</dd>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd>Whether that <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a> can unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
<pre>public void unlock(<ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity">Player</a> p,
boolean instant)</pre>
<divclass="block">Unlocks this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> for the specified <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a>.</div>
<dd><code>p</code> - The <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Player.html?is-external=true"title="class or interface in org.bukkit.entity"><code>Player</code></a> for which to unlock this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a></dd>
<dd><code>instant</code> - Whether to unlock the research instantly</dd>
</dl>
</li>
</ul>
<aname="register--">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>register</h4>
<pre>public void register()</pre>
<divclass="block">Registers this <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a>.</div>
</li>
</ul>
<aname="getByID-int-">
<!---->
</a>
<ulclass="blockList">
<liclass="blockList">
<h4>getByID</h4>
<pre>public static <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects">Research</a> getByID(int id)</pre>
<divclass="block">Attempts to get a <ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> with the given ID.
We will use <ahref="https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/NamespacedKey.html?is-external=true"title="class or interface in org.bukkit"><code>NamespacedKey</code></a> for this in the future.</div>
<dd><code>id</code> - ID of the research to get</dd>
<dt><spanclass="returnLabel">Returns:</span></dt>
<dd><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/Research.html"title="class in me.mrCookieSlime.Slimefun.Objects"><code>Research</code></a> if found, or null</dd>
<li><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/LockedCategory.html"title="class in me.mrCookieSlime.Slimefun.Objects"><spanclass="typeNameLink">Prev Class</span></a></li>
<li><ahref="../../../../me/mrCookieSlime/Slimefun/Objects/SeasonalCategory.html"title="class in me.mrCookieSlime.Slimefun.Objects"><spanclass="typeNameLink">Next Class</span></a></li>