2018-09-13 12:03:28 -04:00
|
|
|
package noppes.npcs.client.controllers;
|
|
|
|
|
|
2023-03-22 19:43:36 -04:00
|
|
|
import net.minecraft.nbt.NBTTagCompound;
|
|
|
|
|
import net.minecraft.nbt.NBTTagList;
|
2018-09-13 12:03:28 -04:00
|
|
|
import noppes.npcs.CustomNpcs;
|
|
|
|
|
import noppes.npcs.controllers.ServerCloneController;
|
2023-03-22 19:43:36 -04:00
|
|
|
import noppes.npcs.controllers.data.TagMap;
|
2018-09-13 12:03:28 -04:00
|
|
|
|
2023-01-12 21:33:06 -05:00
|
|
|
import java.io.File;
|
2023-03-22 19:43:36 -04:00
|
|
|
import java.util.HashSet;
|
|
|
|
|
import java.util.UUID;
|
2023-01-12 21:33:06 -05:00
|
|
|
|
2018-09-13 12:03:28 -04:00
|
|
|
public class ClientCloneController extends ServerCloneController{
|
|
|
|
|
public static ClientCloneController Instance;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public File getDir(){
|
|
|
|
|
File dir = new File(CustomNpcs.Dir,"clones");
|
|
|
|
|
if(!dir.exists())
|
|
|
|
|
dir.mkdir();
|
|
|
|
|
return dir;
|
|
|
|
|
}
|
2023-03-22 19:43:36 -04:00
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean addToTagMap(NBTTagCompound nbttagcompound, String name, int tab){
|
|
|
|
|
HashSet<UUID> tagUUIDs = new HashSet<UUID>();
|
|
|
|
|
if(nbttagcompound.hasKey("TagUUIDs")){
|
|
|
|
|
NBTTagList nbtTagList = nbttagcompound.getTagList("TagUUIDs",8);
|
|
|
|
|
for (int i = 0; i < nbtTagList.tagCount(); i++) {
|
|
|
|
|
tagUUIDs.add(UUID.fromString(nbtTagList.getStringTagAt(i)));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if(tagUUIDs.size() > 0){
|
|
|
|
|
TagMap tagMap = ClientTagMapController.Instance.getTagMap(tab);
|
|
|
|
|
tagMap.putClone(name, tagUUIDs);
|
|
|
|
|
ClientTagMapController.Instance.saveTagMap(tagMap);
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
2018-09-13 12:03:28 -04:00
|
|
|
}
|