changed to use static npc registry instead of NpcApiProvider
This commit is contained in:
parent
1008d31df0
commit
747e6b92be
3 changed files with 10 additions and 7 deletions
|
@ -145,7 +145,7 @@ public class ZNpcsPlus extends JavaPlugin {
|
|||
|
||||
DataImporterRegistry importerRegistry = new DataImporterRegistry(configManager, adventure, bungeeConnector,
|
||||
scheduler, packetFactory, textSerializer, typeRegistry, getDataFolder().getParentFile(),
|
||||
propertyRegistry, skinCache);
|
||||
propertyRegistry, skinCache, npcRegistry);
|
||||
|
||||
log(ChatColor.WHITE + " * Registerring components...");
|
||||
|
||||
|
|
|
@ -4,6 +4,7 @@ import lol.pyr.znpcsplus.config.ConfigManager;
|
|||
import lol.pyr.znpcsplus.conversion.citizens.CitizensImporter;
|
||||
import lol.pyr.znpcsplus.conversion.znpcs.ZNpcImporter;
|
||||
import lol.pyr.znpcsplus.entity.EntityPropertyRegistryImpl;
|
||||
import lol.pyr.znpcsplus.npc.NpcRegistryImpl;
|
||||
import lol.pyr.znpcsplus.npc.NpcTypeRegistryImpl;
|
||||
import lol.pyr.znpcsplus.packets.PacketFactory;
|
||||
import lol.pyr.znpcsplus.scheduling.TaskScheduler;
|
||||
|
@ -25,14 +26,14 @@ public class DataImporterRegistry {
|
|||
public DataImporterRegistry(ConfigManager configManager, BukkitAudiences adventure, BungeeConnector bungeeConnector,
|
||||
TaskScheduler taskScheduler, PacketFactory packetFactory, LegacyComponentSerializer textSerializer,
|
||||
NpcTypeRegistryImpl typeRegistry, File pluginsFolder, EntityPropertyRegistryImpl propertyRegistry,
|
||||
MojangSkinCache skinCache) {
|
||||
MojangSkinCache skinCache, NpcRegistryImpl npcRegistry) {
|
||||
|
||||
register("znpcs", LazyLoader.of(() -> new ZNpcImporter(configManager, adventure, bungeeConnector, taskScheduler,
|
||||
packetFactory, textSerializer, typeRegistry, propertyRegistry, skinCache, new File(pluginsFolder, "ServersNPC/data.json"))));
|
||||
register("znpcsplus_legacy", LazyLoader.of(() -> new ZNpcImporter(configManager, adventure, bungeeConnector, taskScheduler,
|
||||
packetFactory, textSerializer, typeRegistry, propertyRegistry, skinCache, new File(pluginsFolder, "ZNPCsPlusLegacy/data.json"))));
|
||||
register("citizens", LazyLoader.of(() -> new CitizensImporter(configManager, adventure, bungeeConnector, taskScheduler,
|
||||
packetFactory, textSerializer, typeRegistry, propertyRegistry, skinCache, new File(pluginsFolder, "Citizens/saves.yml"))));
|
||||
packetFactory, textSerializer, typeRegistry, propertyRegistry, skinCache, new File(pluginsFolder, "Citizens/saves.yml"), npcRegistry)));
|
||||
}
|
||||
|
||||
private void register(String id, LazyLoader<DataImporter> loader) {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
package lol.pyr.znpcsplus.conversion.citizens;
|
||||
|
||||
import lol.pyr.znpcsplus.api.NpcApiProvider;
|
||||
import lol.pyr.znpcsplus.config.ConfigManager;
|
||||
import lol.pyr.znpcsplus.conversion.DataImporter;
|
||||
import lol.pyr.znpcsplus.conversion.citizens.model.CitizensTrait;
|
||||
|
@ -8,6 +7,7 @@ import lol.pyr.znpcsplus.conversion.citizens.model.CitizensTraitsRegistry;
|
|||
import lol.pyr.znpcsplus.entity.EntityPropertyRegistryImpl;
|
||||
import lol.pyr.znpcsplus.npc.NpcEntryImpl;
|
||||
import lol.pyr.znpcsplus.npc.NpcImpl;
|
||||
import lol.pyr.znpcsplus.npc.NpcRegistryImpl;
|
||||
import lol.pyr.znpcsplus.npc.NpcTypeRegistryImpl;
|
||||
import lol.pyr.znpcsplus.packets.PacketFactory;
|
||||
import lol.pyr.znpcsplus.scheduling.TaskScheduler;
|
||||
|
@ -39,11 +39,12 @@ public class CitizensImporter implements DataImporter {
|
|||
private final MojangSkinCache skinCache;
|
||||
private final File dataFile;
|
||||
private final CitizensTraitsRegistry traitsRegistry;
|
||||
private final NpcRegistryImpl npcRegistry;
|
||||
|
||||
public CitizensImporter(ConfigManager configManager, BukkitAudiences adventure, BungeeConnector bungeeConnector,
|
||||
TaskScheduler taskScheduler, PacketFactory packetFactory, LegacyComponentSerializer textSerializer,
|
||||
NpcTypeRegistryImpl typeRegistry, EntityPropertyRegistryImpl propertyRegistry, MojangSkinCache skinCache,
|
||||
File dataFile) {
|
||||
File dataFile, NpcRegistryImpl npcRegistry) {
|
||||
this.configManager = configManager;
|
||||
this.adventure = adventure;
|
||||
this.bungeeConnector = bungeeConnector;
|
||||
|
@ -55,6 +56,7 @@ public class CitizensImporter implements DataImporter {
|
|||
this.skinCache = skinCache;
|
||||
this.dataFile = dataFile;
|
||||
this.traitsRegistry = new CitizensTraitsRegistry(typeRegistry, propertyRegistry, skinCache);
|
||||
this.npcRegistry = npcRegistry;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -96,8 +98,8 @@ public class CitizensImporter implements DataImporter {
|
|||
}
|
||||
}
|
||||
String id = key.toLowerCase();
|
||||
while (NpcApiProvider.get().getNpcRegistry().getById(id) != null) {
|
||||
id += "_";
|
||||
while (npcRegistry.getById(id) != null) {
|
||||
id += "_"; // TODO: make a backup of the old npc instead
|
||||
}
|
||||
NpcEntryImpl entry = new NpcEntryImpl(id, npc);
|
||||
entry.enableEverything();
|
||||
|
|
Loading…
Reference in a new issue