mirror of
https://github.com/JamesPeters98/ChestsPlusPlus.git
synced 2025-02-13 19:12:07 +01:00
Update StorageUtils.java
Storage Info now creates a new group if it detects one that doesnt exist.
This commit is contained in:
parent
7847ef1997
commit
186cb18b2a
@ -2,6 +2,9 @@ package com.jamesdpeters.minecraft.chests.storage;
|
||||
|
||||
import com.jamesdpeters.minecraft.chests.misc.Values;
|
||||
import com.jamesdpeters.minecraft.chests.serialize.Config;
|
||||
import com.jamesdpeters.minecraft.chests.storage.abstracts.AbstractStorage;
|
||||
import com.jamesdpeters.minecraft.chests.storage.abstracts.StorageInfo;
|
||||
import com.jamesdpeters.minecraft.chests.storage.abstracts.StorageType;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
@ -11,33 +14,18 @@ import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.block.Sign;
|
||||
import org.bukkit.block.data.Directional;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.persistence.PersistentDataType;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class StorageUtils<T extends StorageInfo<S>, S extends AbstractStorage> {
|
||||
|
||||
// private static StorageUtils<StorageInfo<AutoCraftingStorage>, AutoCraftingStorage> AUTO_CRAFT;
|
||||
// private static StorageUtils<StorageInfo<ChestLinkStorage>, ChestLinkStorage> CHEST_LINK;
|
||||
//
|
||||
// public static StorageUtils<StorageInfo<AutoCraftingStorage>, AutoCraftingStorage> getAutoCraft() {
|
||||
// return AUTO_CRAFT;
|
||||
// }
|
||||
//
|
||||
// public static StorageUtils<StorageInfo<ChestLinkStorage>, ChestLinkStorage> getChestLink() {
|
||||
// return CHEST_LINK;
|
||||
// }
|
||||
|
||||
private StorageType<S> storageType;
|
||||
public StorageUtils(StorageType<S> storageType){
|
||||
this.storageType = storageType;
|
||||
}
|
||||
|
||||
// public static void init(){
|
||||
// AUTO_CRAFT = new StorageUtils<>(Config.AUTO_CRAFT);
|
||||
// CHEST_LINK = new StorageUtils<>(Config.CHEST_LINK);
|
||||
// }
|
||||
|
||||
public StorageInfo<S> getStorageInfo(Sign sign, String[] lines, UUID uuid){
|
||||
if(lines != null) {
|
||||
if (lines.length >= 2 && lines[0].contains(storageType.getSignTag())) {
|
||||
@ -49,11 +37,12 @@ public class StorageUtils<T extends StorageInfo<S>, S extends AbstractStorage> {
|
||||
OfflinePlayer owner = Config.getOfflinePlayer(lines[2]);
|
||||
if(owner != null){
|
||||
AbstractStorage storage = storageType.getStorage(owner.getUniqueId(), group);
|
||||
if(storage.hasPermission(Bukkit.getPlayer(uuid))) playerUUID = owner.getUniqueId().toString();
|
||||
Player player = Bukkit.getPlayer(uuid);
|
||||
if(player != null && storage.hasPermission(player)) playerUUID = owner.getUniqueId().toString();
|
||||
}
|
||||
}
|
||||
}
|
||||
return new StorageInfo<S>(playerUUID, group, storageType);
|
||||
return new StorageInfo<>(playerUUID, group, storageType, sign);
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
Loading…
Reference in New Issue
Block a user