HS-Workspace
TODO
TODO
Mine more efficiently! Let your players store their mined/picked items! Includes many unique and special features such as filtering, sorting or selling!
This plugin can be used in almost any game modes, but works best in Skyblock and Prison server. Giving each player almost unlimited storage, which can be used to contain the vanilla items. For example, after you have mined any block, instead of being dropped to the ground, it will be automatically picked up into your storage. It also eliminates the lag caused by dropped items.
This plugin is now available on these marketplaces as a premium plugin:
You can purchase it on those marketplaces. But we strongly recommend you to purchase on BuiltByBit, because it supports you more payment methods.
Name | Link | Price | Required |
---|---|---|---|
HeadDatabase | Buy Now | Premium | Optional |
ShopGUIPlus | Buy Now | Premium | Optional |
ItemsAdder | Buy Now | Premium | Optional |
Oraxen | Buy Now | Premium | Optional |
UltraEconomy | Buy Now | Premium | Optional |
UltimateStacker | Download Now | Premium | Optional |
Vault | Download Now | Free | Optional |
PlayerPoints | Download Now | Free | Optional |
PlaceholderAPI | Download Now | Free | Optional |
TokenManager | Download Now | Free | Optional |
WildStacker | Download Now | Free | Optional |
EconomyShopGUI | Download Now | Free | Optional |
BetterEconomy | Download Now | Free | Optional |
GemEconomy | Download Now | Free | Optional |
It is very simple to install this plugin, just following these steps:
Join our Discord to get the custom UI texture.
Player Command | Permission | Description |
---|---|---|
/exstorage help | exstorage.command.player.help | Players can see help page. |
/exstorage [player] | exstorage.command.player.open | Players can open their storage, or open another player’s storage. |
/exstorage toggle | exstorage.command.player.toggle | Players can turn on / off the feature if they don’t want to use. |
/exstorage filter | exstorage.command.player.filter | Players can open their filter. |
/exstorage partner [add/remove/clear][player] | exstorage.command.player.partner | Players can use the partner feature. Or open a GUI to see who was their partners. |
/exstorage sell [%material-key% [amount]] | exstorage.command.player.sell | Players can open the market to sell items that contain in their storage. |
/exstorage withdraw %material-key% [amount] | exstorage.command.player.withdraw | Withdraw items without opening the GUI. |
Admin Command | Permission | Description |
---|---|---|
exstorage.* | The highest permission. | |
/esadmin open %player% | exstorage.command.admin.open | Open and use another player’s storage without any conditions. |
/esadmin space %amount% [player/*] /esadmin addspace %amount% [player/*] | exstorage.command.admin.space | Change the maximum space of the player’s storage (* for all of players). |
/esadmin add %material-key% %amount% [player] | exstorage.command.admin.add | Allows the player to add item quantity to the storage. |
/esadmin subtract %material-key% %amount% [player] | exstorage.command.admin.subtract | Allows the player to subtract item quantity to the storage. |
/esadmin set %material-key% %amount% [player] | exstorage.command.admin.set | Allows the player to set their item quantity in the storage. |
/exstorage withdraw %material-key% [amount] | exstorage.command.player.withdraw | Withdraw items without opening the GUI. |
/esadmin whitelist | exstorage.command.admin.whitelist | Modify the “Whitelist” section in config.yml in-game. Apply changes immediately when adding/removing an item. |
/esadmin reload | exstorage.command.admin.reload | Reload the configurations. |
Use placeholders to aid in many other features. These placeholders require PlaceholderAPI
Placeholder | Description |
---|---|
%exstorage_space[_formatted]% | Displays the maximum storage space. |
%exstorage_used_space[_formatted]% | Displays the total amount of space used. |
%exstorage_free_space[_formatted]% | Displays the total amount of free space. |
%exstorage_used_percent[_formatted]% | Same with used_space , but in percentage. |
%exstorage_free_percent[_formatted]% | Same with free_space , but in percentage. |
%exstorage_quantity[_formatted]_<material-key>% | Displays the quantity of the item, -1 if it is not exist. |
HyronicFriends is a plugin that adds to your friend system. With this plugin, you can send friend requests, receive notifications when your friends are online, teleport instantly to your friends, and most importantly, you can send mail to your friends, including items as attachments.
This plugin is now available on these marketplaces as a premium plugin:
You can purchase it on those marketplaces. But we strongly recommend you to purchase on BuiltByBit, because it supports you more payment methods.
Name | Open Source | Paid | Required |
---|---|---|---|
HeadDatabase | No | Premium | No |
Oraxen | Yes | Premium | No |
ItemsAdder | No | Premium | No |
PlaceholderAPI | Yes | Free | No |
HyronicFriends-BungeeCord | No | Free | No |
HyronicFriends-Velocity TODO | No | Free | No |
It is very simple to install this plugin, just following these steps:
If you’re SpigotMC user, you have to join our Discord in order to get the configuration for the texture pack (Oraxen/ItemsAdder Configuration).
Please follow these steps for the most accurate installation:
HyronicFriends has two versions: one for bukkit and one for BungeeCord. The BungeeCord/Velocity version is just a middleware (I will also call it’s “middleware” in this instruction), it will not work if you don’t have the bukkit version in your server. Then, just follow our instructions for the most accurate installation.
MultiNetworks
to true
, and Database.Type
to MySQL
. Make sure you stopped your server before changing.Permissions | Default | Description |
---|---|---|
hyronicfriends.* | FALSE | Allows the player to access everything of the plugin. |
hyronicfriends.mails.size.maximum | OP | Allows the player to have the maximum number of attached item slots. |
hyronicfriends.friends.size.unlimited | OP | Allows the player to have an unlimited list of friends. |
Permissions | Default | Description |
---|---|---|
hyronicfriends.command.* | FALSE | Allows the player to access all commands of the plugin. |
hyronicfriends.command.help | OP | Allows the player to view the help page command. |
hyronicfriends.command.friends | OP | Allows the player to manage their friend list. |
hyronicfriends.command.block | OP | Allows the player to block (or unblock) a player. |
hyronicfriends.command.teleport | OP | Allows the player to teleport to their friends. |
hyronicfriends.command.mail | OP | Allows the player to send (or read) mail to their friends. |
hyronicfriends.command.reload | OP | Allows the player to reload the configuration. |
We provide you with many commands. Some of them have been shortened, so we’ll split them up into different tables.
Commands | Description |
---|---|
/friend help [page] | View the help page command |
/friend | Open main menu |
/friend toggle | Toggle receive friend request |
/friend notify | Turn on/off your friend online status |
/friend add <player> | Send a friend request |
/friend accept <player> | Accept a friend request |
/friend decline <player> | Decline a friend request |
/friend cancel <player> | Cancel the sent friend request |
/friend list | Open your friend list |
/friend reload | Reload the configuration |
/unfriend <player> | Unfriend a player |
Commands | Description |
---|---|
/blockedlist | Open your blocked list |
/block <player> | Block a player |
/unblock <player> | Unblock a player |
Commands | Description |
---|---|
/ftp <player> | Teleport to your friend |
/toggletp <player> | Allow/Disallow your friend to teleport to you |
Commands | Description |
---|---|
/togglemsg <player> | Enable/Disable receiving your friend message |
/fmsg <player> <message> | Send private message to your friend |
/freply <message> | Quick reply to the most recent message |
Commands | Description |
---|---|
/mail help | View the list of mail commands |
/mailbox | Open your mailbox |
/mail <player> | See all mails sent/received to/from a player |
/mail send <player> <content> | Send mail to your friend |
/mail read <player> | Read the recently received mail |
/togglemail <player> | Allow/Disallow your friend to send mail to you |
We also provide you with a few placeholders. If you don’t find what you need, please join our Discord server and suggest it.
These placeholders require the PlaceholderAPI plugin to work.
Placeholders | Description |
---|---|
%hfriends_friendlist_size% | Shows the number of players on your friend list. |
%hfriends_friendlist_max% | Shows the maximum number of friends a player can have on the list. -1 means unlimited. |
%hfriends_friendlist_is_max% | Shows whether the player has reached the maximum number of friends. |
%hfriends_blockedlist_size% | Shows the number of players on your blocked list. |
%hfriends_has_unread_mail% | Shows whether the player has unread mails. |
%hfriends_has_waiting_request | Shows whether the player has requests are waiting to respond. |
%hfriends_is_friend_<player>% | Checks whether a player is your friend. |
%hfriends_is_blocked_<player>% | Checks whether a player is blocked by you. |
%hfriends_can_teleport_to_<player>% | Checks whether you can teleport to a player. |
%hfriends_can_send_msg_to_<player>% | Checks whether you can send private message to a player. |
%hfriends_can_send_mail_to_<player>% | Checks whether you can send mail to a player. |
We provide you with a class named /api/user/User.java
that gives you general player data, including the list of friends, the list of blocked players, mailbox, and more… You can use 2 methods provided from public class FriendAPI
to get the player data:
Optional<User> FriendAPI.findUser(UUID);
Optional<User> FriendAPI.findUser(OfflinePlayer);
To get the list of all your friends:
List<Friend> getList();
To get the list of online friends:
List<Friend> getOnlineFriends();
To get the list of blocked players:
BlockedList getBlockedList();
To block a player you are hating:
void block(UUID target);
To unblock a player:
void unblock(UUID target);
To send a friend request to a player:
void sendRequest(UUID target);
To find a friend request you received recently but are waiting for response:
Optional<Request> findWaitingRequest(UUID target, boolean checkExpire);
To immediately add a player to your friend list:
void addFriend(UUID target);
To remove a player from your friend list:
void unfriend(UUID target);
Before teleporting to your friend, you should check whether your friend allows you to teleport to them by using the method below:
boolean canTeleportTo();
To check whether your friend can teleport to you, use this method:
boolean canTeleport();
To allow/disallow your friend to teleport to you, use this method:
boolean setCanTeleport(boolean canTeleport);
boolean canMail(); // Checks whether the player can receive the mail of their friend or not.
void setCanMail(boolean canMail); // Sets whether the player can receive the mail of their friend or not.
This mailbox will contain all mails, including mails you have sent and mails you have received from your friends. It can be invoked from the User
class:
Mailbox getMailbox();
To send a mail to your friend:
Mail mail = new MailImpl(UUID sender, UUID target, String content, ItemStack... items);
mail.send();
To get attached items from a letter:
List<ItemStack> getAttachedItem();
There are 2 methods that allow you to revoke your items from the letter:
boolean revokeItem(ItemStack item); // Revoke the specified item.
boolean revokeAllItems(); // Revoke all items contained in the letter.
Same as revoke items, there are 2 methods that allow you to take items from the letter:
boolean takeItem(ItemStack item); // Take the specified item.
boolean takeAllItems(); // Take all items contained in the letter.
We also provide you with some event classes, see details at: Events API.
Called before a friend request is sent
public final class PreFriendRequestSendEvent extends BaseEvent implements Cancellable {
private final Request request;
private boolean cancelled;
public PreFriendRequestSendEvent(Request request) {
this.request = request;
this.cancelled = false;
}
public Request getRequest() {
return request;
}
@Override
public boolean isCancelled() {
return cancelled;
}
@Override
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}
Called when a friend request is ready to respond (accept/decline/cancel)
public final class PreFriendRequestRespondEvent extends BaseEvent implements Cancellable {
private final Request request;
private Request.Status status;
private boolean cancelled;
public PreFriendRequestRespondEvent(Request request, Request.Status status) {
this.request = request;
this.status = status;
this.cancelled = false;
}
public Request getRequest() {
return request;
}
public Request.Status getStatus() {
return status;
}
public void setStatus(Request.Status status) {
this.status = status;
}
@Override
public boolean isCancelled() {
return cancelled;
}
@Override
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}
Called before your friend teleports to you
public final class FriendTeleportEvent extends BaseEvent implements Cancellable {
private final User user, target;
private boolean cancelled;
public FriendTeleportEvent(User user, User target) {
this.user = user;
this.target = target;
this.cancelled = false;
}
public User getUser() {
return user;
}
public User getTarget() {
return target;
}
@Override
public boolean isCancelled() {
return cancelled;
}
@Override
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}
Called before attaching items to your mail
public final class AttachingItemToMailEvent extends BaseEvent implements Cancellable {
private ItemStack item;
private boolean cancelled;
public AttachingItemToMailEvent(ItemStack item) {
this.item = item;
this.cancelled = false;
}
public ItemStack getAttachedItem() {
return item;
}
public void setAttachedItem(ItemStack item) {
this.item = item;
}
@Override
public boolean isCancelled() {
return cancelled;
}
@Override
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}
Called before your mail is sent
public final class PreMailSendEvent extends BaseEvent implements Cancellable {
private final Mail mail;
private boolean cancelled;
public PreMailSendEvent(Mail mail) {
this.mail = mail;
this.cancelled = false;
}
public Mail getMail() {
return mail;
}
@Override
public boolean isCancelled() {
return cancelled;
}
@Override
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}
Called when a mail is ready to respond (read/cancel)
public final class PreMailRespondEvent extends BaseEvent implements Cancellable {
private final Mail mail;
private Mail.Status status;
private boolean cancelled;
public PreMailRespondEvent(Mail mail, Mail.Status status) {
this.mail = mail;
this.status = status;
this.cancelled = false;
}
public Mail getMail() {
return mail;
}
public Mail.Status getStatus() {
return status;
}
public void setStatus(Mail.Status status) {
this.status = status;
}
@Override
public boolean isCancelled() {
return cancelled;
}
@Override
public void setCancelled(boolean cancel) {
this.cancelled = cancel;
}
}