Mirror von
https://github.com/TheSilentPro/HeadDB.git
synchronisiert 2024-12-27 11:20:05 +01:00
Documentation
Dieser Commit ist enthalten in:
Ursprung
25283705f6
Commit
a69d3a07de
2
pom.xml
2
pom.xml
@ -10,7 +10,7 @@
|
|||||||
<packaging>jar</packaging>
|
<packaging>jar</packaging>
|
||||||
|
|
||||||
<name>HeadDB</name>
|
<name>HeadDB</name>
|
||||||
<description>Head Database</description>
|
<description>Thousands of heads in a GUI</description>
|
||||||
|
|
||||||
<repositories>
|
<repositories>
|
||||||
<!-- Paper Repo -->
|
<!-- Paper Repo -->
|
||||||
|
@ -12,48 +12,119 @@ import java.util.ArrayList;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This class provides simple methods
|
||||||
|
* for interacting with the HeadDB plugin
|
||||||
|
*
|
||||||
|
* @author TheSilentPro
|
||||||
|
*/
|
||||||
public class HeadAPI {
|
public class HeadAPI {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Opens the database for a player
|
||||||
|
*
|
||||||
|
* @param player Target player
|
||||||
|
*/
|
||||||
public static void openDatabase(Player player) {
|
public static void openDatabase(Player player) {
|
||||||
InventoryUtils.openDatabase(player);
|
InventoryUtils.openDatabase(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Opens a specific category of the database for a player
|
||||||
|
*
|
||||||
|
* @param player Target player
|
||||||
|
* @param category Category to open
|
||||||
|
*/
|
||||||
public static void openDatabase(Player player, Category category) {
|
public static void openDatabase(Player player, Category category) {
|
||||||
InventoryUtils.openCategoryDatabase(player, category);
|
InventoryUtils.openCategoryDatabase(player, category);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Opens the database with results of a specific search term
|
||||||
|
*
|
||||||
|
* @param player Target player
|
||||||
|
* @param search Search term
|
||||||
|
*/
|
||||||
public static void openDatabase(Player player, String search) {
|
public static void openDatabase(Player player, String search) {
|
||||||
InventoryUtils.openSearchDatabase(player, search);
|
InventoryUtils.openSearchDatabase(player, search);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link Head} by it's ID
|
||||||
|
*
|
||||||
|
* @param id The ID of the head
|
||||||
|
* @return The head
|
||||||
|
*/
|
||||||
public static Head getHeadByID(int id) {
|
public static Head getHeadByID(int id) {
|
||||||
return HeadDatabase.getHeadByID(id);
|
return HeadDatabase.getHeadByID(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link Head} by it's UUID
|
||||||
|
*
|
||||||
|
* @param uuid The UUID of the head
|
||||||
|
* @return The head
|
||||||
|
*/
|
||||||
public static Head getHeadByUUID(UUID uuid) {
|
public static Head getHeadByUUID(UUID uuid) {
|
||||||
return HeadDatabase.getHeadByUUID(uuid);
|
return HeadDatabase.getHeadByUUID(uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves a {@link List} of {@link Head}'s matching a name
|
||||||
|
*
|
||||||
|
* @param name The name to match for
|
||||||
|
* @return List of heads
|
||||||
|
*/
|
||||||
public static List<Head> getHeadsByName(String name) {
|
public static List<Head> getHeadsByName(String name) {
|
||||||
return HeadDatabase.getHeadsByName(name);
|
return HeadDatabase.getHeadsByName(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves a {@link List} of {@link Head}'s in a {@link Category} matching a name
|
||||||
|
*
|
||||||
|
* @param category The category to search in
|
||||||
|
* @param name The name to match for
|
||||||
|
* @return List of heads
|
||||||
|
*/
|
||||||
public static List<Head> getHeadsByName(Category category, String name) {
|
public static List<Head> getHeadsByName(Category category, String name) {
|
||||||
return HeadDatabase.getHeadsByName(category, name);
|
return HeadDatabase.getHeadsByName(category, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link Head} by it's value
|
||||||
|
*
|
||||||
|
* @param value The texture value
|
||||||
|
* @return The head
|
||||||
|
*/
|
||||||
public static Head getHeadByValue(String value) {
|
public static Head getHeadByValue(String value) {
|
||||||
return HeadDatabase.getHeadByValue(value);
|
return HeadDatabase.getHeadByValue(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link List} of {@link Head}'s in a specific {@link Category}
|
||||||
|
*
|
||||||
|
* @param category The category to search in
|
||||||
|
* @return List of heads
|
||||||
|
*/
|
||||||
public static List<Head> getHeads(Category category) {
|
public static List<Head> getHeads(Category category) {
|
||||||
return HeadDatabase.getHeads(category);
|
return HeadDatabase.getHeads(category);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link List} of all {@link Head}'s
|
||||||
|
*
|
||||||
|
* @return List of all heads
|
||||||
|
*/
|
||||||
public static List<Head> getHeads() {
|
public static List<Head> getHeads() {
|
||||||
return HeadDatabase.getHeads();
|
return HeadDatabase.getHeads();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add a {@link Head} to a players favorites
|
||||||
|
*
|
||||||
|
* @param uuid The UUID of the player
|
||||||
|
* @param id The ID of the head
|
||||||
|
*/
|
||||||
public static void addFavoriteHead(UUID uuid, int id) {
|
public static void addFavoriteHead(UUID uuid, int id) {
|
||||||
List<Integer> favs = HeadDB.getPlayerdata().getIntList(uuid.toString() + ".favorites");
|
List<Integer> favs = HeadDB.getPlayerdata().getIntList(uuid.toString() + ".favorites");
|
||||||
if (!favs.contains(id)) {
|
if (!favs.contains(id)) {
|
||||||
@ -63,6 +134,12 @@ public class HeadAPI {
|
|||||||
HeadDB.getPlayerdata().save();
|
HeadDB.getPlayerdata().save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove a {@link Head} from a players favorites
|
||||||
|
*
|
||||||
|
* @param uuid The UUID of the player
|
||||||
|
* @param id The ID of the head
|
||||||
|
*/
|
||||||
public static void removeFavoriteHead(UUID uuid, int id) {
|
public static void removeFavoriteHead(UUID uuid, int id) {
|
||||||
List<Integer> favs = HeadDB.getPlayerdata().getIntList(uuid.toString() + ".favorites");
|
List<Integer> favs = HeadDB.getPlayerdata().getIntList(uuid.toString() + ".favorites");
|
||||||
for (int i = 0; i < favs.size(); i++) {
|
for (int i = 0; i < favs.size(); i++) {
|
||||||
@ -75,6 +152,12 @@ public class HeadAPI {
|
|||||||
HeadDB.getPlayerdata().save();
|
HeadDB.getPlayerdata().save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link List} of favorite {@link Head} for a player
|
||||||
|
*
|
||||||
|
* @param uuid The UUID of the player
|
||||||
|
* @return List of favorite heads
|
||||||
|
*/
|
||||||
public static List<Head> getFavoriteHeads(UUID uuid) {
|
public static List<Head> getFavoriteHeads(UUID uuid) {
|
||||||
List<Head> heads = new ArrayList<>();
|
List<Head> heads = new ArrayList<>();
|
||||||
List<Integer> ids = HeadDB.getPlayerdata().getIntList(uuid.toString() + ".favorites");
|
List<Integer> ids = HeadDB.getPlayerdata().getIntList(uuid.toString() + ".favorites");
|
||||||
@ -86,6 +169,12 @@ public class HeadAPI {
|
|||||||
return heads;
|
return heads;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve a {@link List} of local heads.
|
||||||
|
* These heads are from players that have joined the server at least once.
|
||||||
|
*
|
||||||
|
* @return List of {@link LocalHead}'s
|
||||||
|
*/
|
||||||
public static List<LocalHead> getLocalHeads() {
|
public static List<LocalHead> getLocalHeads() {
|
||||||
List<LocalHead> heads = new ArrayList<>();
|
List<LocalHead> heads = new ArrayList<>();
|
||||||
for (String key : HeadDB.getPlayerdata().getKeys(false)) {
|
for (String key : HeadDB.getPlayerdata().getKeys(false)) {
|
||||||
@ -99,6 +188,9 @@ public class HeadAPI {
|
|||||||
return heads;
|
return heads;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the Head Database
|
||||||
|
*/
|
||||||
public static void updateDatabase() {
|
public static void updateDatabase() {
|
||||||
HeadDatabase.update();
|
HeadDatabase.update();
|
||||||
}
|
}
|
||||||
|
@ -104,7 +104,7 @@ public class Command_headdb implements CommandExecutor {
|
|||||||
|
|
||||||
Utils.sendMessage(sender, " ");
|
Utils.sendMessage(sender, " ");
|
||||||
Utils.sendMessage(sender, "&c&lHeadDB &c- &5Commands");
|
Utils.sendMessage(sender, "&c&lHeadDB &c- &5Commands");
|
||||||
Utils.sendMessage(sender, "&7&oParameters:&c command &9(aliases) &7- Description");
|
Utils.sendMessage(sender, "&7&oParameters:&c command &9(aliases)&c arguments... &7- Description");
|
||||||
Utils.sendMessage(sender, " > &c/hdb &7- Opens the database");
|
Utils.sendMessage(sender, " > &c/hdb &7- Opens the database");
|
||||||
Utils.sendMessage(sender, " > &c/hdb info &9(i) &7- Plugin Information");
|
Utils.sendMessage(sender, " > &c/hdb info &9(i) &7- Plugin Information");
|
||||||
Utils.sendMessage(sender, " > &c/hdb search &9(s) &c<name> &7- Search for heads matching a name");
|
Utils.sendMessage(sender, " > &c/hdb search &9(s) &c<name> &7- Search for heads matching a name");
|
||||||
|
@ -16,6 +16,11 @@ import java.net.URLConnection;
|
|||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is the Database that holds all heads
|
||||||
|
*
|
||||||
|
* @author TheSilentPro
|
||||||
|
*/
|
||||||
public class HeadDatabase {
|
public class HeadDatabase {
|
||||||
|
|
||||||
private static final Map<Category, List<Head>> HEADS = new HashMap<>();
|
private static final Map<Category, List<Head>> HEADS = new HashMap<>();
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
name: HeadDB
|
name: HeadDB
|
||||||
description: Head Database
|
description: Adds a menu with thousands of heads
|
||||||
|
|
||||||
main: tsp.headdb.HeadDB
|
main: tsp.headdb.HeadDB
|
||||||
version: 1.3
|
version: 1.3
|
||||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren