Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package it.feargames.mythicmobsfixes.fix;
- import io.lumine.xikage.mythicmobs.MythicMobs;
- import io.lumine.xikage.mythicmobs.logging.MythicLogger;
- import io.lumine.xikage.mythicmobs.mobs.ActiveMob;
- import io.lumine.xikage.mythicmobs.mobs.MobManager;
- import io.lumine.xikage.mythicmobs.mobs.MobRegistry;
- import io.lumine.xikage.mythicmobs.utils.serialization.WrappedJsonFile;
- import it.feargames.mythicmobsfixes.Executors;
- import me.yamakaja.runtimetransformer.annotation.Inject;
- import me.yamakaja.runtimetransformer.annotation.InjectionType;
- import me.yamakaja.runtimetransformer.annotation.Transform;
- import java.util.ArrayList;
- import java.util.List;
- @Transform(MobManager.class)
- public abstract class MobManagerTransformer extends MobManager {
- private WrappedJsonFile<MobRegistry> mobRegistry;
- private MobManagerTransformer(MythicMobs core) {
- super(core);
- }
- @Override
- @Inject(InjectionType.OVERRIDE)
- public void saveCachedActiveMobs() {
- MythicLogger.debug(MythicLogger.DebugLevel.INFO, "Saving all active Mythic Mobs...");// 636
- MobRegistry registry = mobRegistry.get();
- if (registry != null) {
- List<ActiveMob> mobs = new ArrayList<>(registry.values());
- Executors.getInstance().getFileSaveExecutor().submit(new Runnable() {
- @Override
- public void run() {
- MobRegistry copy = new MobRegistry();
- for (ActiveMob mob : mobs) {
- copy.put(mob.getUniqueId(), mob);
- }
- MobManagerTransformer.this.saveJson(MobManagerTransformer.this.getModuleFile("active-mobs.json"), copy);
- }
- });
- }
- MythicLogger.debug(MythicLogger.DebugLevel.INFO, "All active mobs have been saved!");// 640
- }
- }
Add Comment
Please, Sign In to add comment