adding toggle imports from ZNpcs
This commit is contained in:
parent
9d17a5bdd3
commit
d48e4bc2b2
2 changed files with 25 additions and 0 deletions
|
@ -28,13 +28,16 @@ import lol.pyr.znpcsplus.scheduling.TaskScheduler;
|
|||
import lol.pyr.znpcsplus.skin.Skin;
|
||||
import lol.pyr.znpcsplus.skin.cache.MojangSkinCache;
|
||||
import lol.pyr.znpcsplus.skin.descriptor.FetchingDescriptor;
|
||||
import lol.pyr.znpcsplus.skin.descriptor.MirrorDescriptor;
|
||||
import lol.pyr.znpcsplus.skin.descriptor.PrefetchedDescriptor;
|
||||
import lol.pyr.znpcsplus.util.BungeeConnector;
|
||||
import lol.pyr.znpcsplus.util.ItemSerializationUtil;
|
||||
import lol.pyr.znpcsplus.util.LookType;
|
||||
import lol.pyr.znpcsplus.util.NpcLocation;
|
||||
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
|
||||
import net.kyori.adventure.text.Component;
|
||||
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
||||
import org.bukkit.DyeColor;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
|
@ -129,6 +132,23 @@ public class ZNpcImporter implements DataImporter {
|
|||
npc.setProperty(propertyRegistry.getByName("skin", SkinDescriptor.class), new PrefetchedDescriptor(new Skin(model.getSkin(), model.getSignature())));
|
||||
}
|
||||
|
||||
Map<String, Object> toggleValues = model.getNpcToggleValues();
|
||||
if (toggleValues != null) {
|
||||
if (toggleValues.containsKey("look")) {
|
||||
npc.setProperty(propertyRegistry.getByName("look", LookType.class), LookType.CLOSEST_PLAYER);
|
||||
}
|
||||
if (toggleValues.containsKey("mirror")) {
|
||||
npc.setProperty(propertyRegistry.getByName("skin", SkinDescriptor.class), new MirrorDescriptor(skinCache));
|
||||
}
|
||||
if (toggleValues.containsKey("glow")) {
|
||||
try {
|
||||
npc.setProperty(propertyRegistry.getByName("glow", DyeColor.class), DyeColor.valueOf((String) toggleValues.get("glow")));
|
||||
} catch (IllegalArgumentException e) {
|
||||
npc.setProperty(propertyRegistry.getByName("glow", DyeColor.class), DyeColor.WHITE);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
NpcEntryImpl entry = new NpcEntryImpl(String.valueOf(model.getId()), npc);
|
||||
entry.enableEverything();
|
||||
entries.add(entry);
|
||||
|
|
|
@ -19,6 +19,7 @@ public class ZNpcsModel {
|
|||
private List<String> hologramLines;
|
||||
private List<ZNpcsAction> clickActions;
|
||||
private Map<String, String> npcEquip;
|
||||
private Map<String, Object> npcToggleValues;
|
||||
private Map<String, String[]> customizationMap;
|
||||
|
||||
public int getId() {
|
||||
|
@ -57,6 +58,10 @@ public class ZNpcsModel {
|
|||
return npcEquip;
|
||||
}
|
||||
|
||||
public Map<String, Object> getNpcToggleValues() {
|
||||
return npcToggleValues;
|
||||
}
|
||||
|
||||
public Map<String, String[]> getCustomizationMap() {
|
||||
return customizationMap;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue