Search in sources :

Example 1 with LootTableManager

use of net.minecraft.world.storage.loot.LootTableManager in project clientcommands by Earthcomputer.

the class ClientVirtualWorld method init.

@Override
public World init() {
    mapStorage = new MapStorage(null);
    String villageCollectionId = VillageCollection.fileNameForProvider(provider);
    villageCollection = new VillageCollection(this);
    mapStorage.setData(villageCollectionId, villageCollection);
    worldScoreboard = new ServerScoreboard(server);
    ScoreboardSaveData scoreboardSaveData = new ScoreboardSaveData();
    mapStorage.setData("scoreboard", scoreboardSaveData);
    scoreboardSaveData.setScoreboard(worldScoreboard);
    lootTable = new LootTableManager(null);
    advancementManager = new AdvancementManager(null);
    functionManager = new FunctionManager(null, server);
    getWorldBorder().setCenter(worldInfo.getBorderCenterX(), worldInfo.getBorderCenterZ());
    getWorldBorder().setDamageAmount(worldInfo.getBorderDamagePerBlock());
    getWorldBorder().setDamageBuffer(worldInfo.getBorderSafeZone());
    getWorldBorder().setWarningDistance(worldInfo.getBorderWarningDistance());
    getWorldBorder().setWarningTime(worldInfo.getBorderWarningTime());
    if (worldInfo.getBorderLerpTime() > 0) {
        getWorldBorder().setTransition(worldInfo.getBorderSize(), worldInfo.getBorderLerpTarget(), worldInfo.getBorderLerpTime());
    } else {
        getWorldBorder().setTransition(worldInfo.getBorderSize());
    }
    initCapabilities();
    return this;
}
Also used : ServerScoreboard(net.minecraft.scoreboard.ServerScoreboard) AdvancementManager(net.minecraft.advancements.AdvancementManager) LootTableManager(net.minecraft.world.storage.loot.LootTableManager) ScoreboardSaveData(net.minecraft.scoreboard.ScoreboardSaveData) VillageCollection(net.minecraft.village.VillageCollection) MapStorage(net.minecraft.world.storage.MapStorage) FunctionManager(net.minecraft.advancements.FunctionManager)

Example 2 with LootTableManager

use of net.minecraft.world.storage.loot.LootTableManager in project CumServerPro by MCUmbrella.

the class WorldServer method init.

public World init() {
    String s = VillageCollection.fileNameForProvider(this.provider);
    VillageCollection villagecollection = (VillageCollection) this.perWorldStorage.getOrLoadData(VillageCollection.class, s);
    if (villagecollection == null) {
        this.villageCollection = new VillageCollection(this);
        this.perWorldStorage.setData(s, this.villageCollection);
    } else {
        this.villageCollection = villagecollection;
        this.villageCollection.setWorldsForAll(this);
    }
    if (getServer().getScoreboardManager() == null) {
        // CraftBukkit
        this.worldScoreboard = new ServerScoreboard(this.mcServer);
        ScoreboardSaveData scoreboardsavedata = (ScoreboardSaveData) this.mapStorage.getOrLoadData(ScoreboardSaveData.class, "scoreboard");
        if (scoreboardsavedata == null) {
            scoreboardsavedata = new ScoreboardSaveData();
            this.mapStorage.setData("scoreboard", scoreboardsavedata);
        }
        scoreboardsavedata.setScoreboard(this.worldScoreboard);
        ((ServerScoreboard) this.worldScoreboard).addDirtyRunnable(new WorldSavedDataCallableSave(scoreboardsavedata));
    } else {
        this.worldScoreboard = getServer().getScoreboardManager().getMainScoreboard().getHandle();
    }
    this.lootTable = new LootTableManager(new File(new File(this.saveHandler.getWorldDirectory(), "data"), "loot_tables"));
    // CraftBukkit start
    if (this.dimension != 0) {
        // SPIGOT-3899 multiple worlds of advancements not supported
        this.advancementManager = this.mcServer.getAdvancementManager();
    }
    if (this.advancementManager == null) {
        this.advancementManager = new AdvancementManager(new File(new File(this.saveHandler.getWorldDirectory(), "data"), "advancements"));
    }
    // CraftBukkit end
    this.functionManager = new FunctionManager(new File(new File(this.saveHandler.getWorldDirectory(), "data"), "functions"), this.mcServer);
    this.getWorldBorder().setCenter(this.worldInfo.getBorderCenterX(), this.worldInfo.getBorderCenterZ());
    this.getWorldBorder().setDamageAmount(this.worldInfo.getBorderDamagePerBlock());
    this.getWorldBorder().setDamageBuffer(this.worldInfo.getBorderSafeZone());
    this.getWorldBorder().setWarningDistance(this.worldInfo.getBorderWarningDistance());
    this.getWorldBorder().setWarningTime(this.worldInfo.getBorderWarningTime());
    if (this.worldInfo.getBorderLerpTime() > 0L) {
        this.getWorldBorder().setTransition(this.worldInfo.getBorderSize(), this.worldInfo.getBorderLerpTarget(), this.worldInfo.getBorderLerpTime());
    } else {
        this.getWorldBorder().setTransition(this.worldInfo.getBorderSize());
    }
    this.initCapabilities();
    this.initHopperThread(super.getHopperQueue());
    return this;
}
Also used : ServerScoreboard(net.minecraft.scoreboard.ServerScoreboard) AdvancementManager(net.minecraft.advancements.AdvancementManager) WorldSavedDataCallableSave(net.minecraft.world.storage.WorldSavedDataCallableSave) LootTableManager(net.minecraft.world.storage.loot.LootTableManager) ScoreboardSaveData(net.minecraft.scoreboard.ScoreboardSaveData) VillageCollection(net.minecraft.village.VillageCollection) File(java.io.File) FunctionManager(net.minecraft.advancements.FunctionManager)

Example 3 with LootTableManager

use of net.minecraft.world.storage.loot.LootTableManager in project Minecraft-SlientClient-Hack by YouNeverKnow00.

the class WorldServer method init.

public World init() {
    this.mapStorage = new MapStorage(this.saveHandler);
    String s = VillageCollection.fileNameForProvider(this.provider);
    VillageCollection villagecollection = (VillageCollection) this.mapStorage.getOrLoadData(VillageCollection.class, s);
    if (villagecollection == null) {
        this.villageCollectionObj = new VillageCollection(this);
        this.mapStorage.setData(s, this.villageCollectionObj);
    } else {
        this.villageCollectionObj = villagecollection;
        this.villageCollectionObj.setWorldsForAll(this);
    }
    this.worldScoreboard = new ServerScoreboard(this.mcServer);
    ScoreboardSaveData scoreboardsavedata = (ScoreboardSaveData) this.mapStorage.getOrLoadData(ScoreboardSaveData.class, "scoreboard");
    if (scoreboardsavedata == null) {
        scoreboardsavedata = new ScoreboardSaveData();
        this.mapStorage.setData("scoreboard", scoreboardsavedata);
    }
    scoreboardsavedata.setScoreboard(this.worldScoreboard);
    ((ServerScoreboard) this.worldScoreboard).addDirtyRunnable(new WorldSavedDataCallableSave(scoreboardsavedata));
    this.lootTable = new LootTableManager(new File(new File(this.saveHandler.getWorldDirectory(), "data"), "loot_tables"));
    this.field_191951_C = new AdvancementManager(new File(new File(this.saveHandler.getWorldDirectory(), "data"), "advancements"));
    this.field_193036_D = new FunctionManager(new File(new File(this.saveHandler.getWorldDirectory(), "data"), "functions"), this.mcServer);
    this.getWorldBorder().setCenter(this.worldInfo.getBorderCenterX(), this.worldInfo.getBorderCenterZ());
    this.getWorldBorder().setDamageAmount(this.worldInfo.getBorderDamagePerBlock());
    this.getWorldBorder().setDamageBuffer(this.worldInfo.getBorderSafeZone());
    this.getWorldBorder().setWarningDistance(this.worldInfo.getBorderWarningDistance());
    this.getWorldBorder().setWarningTime(this.worldInfo.getBorderWarningTime());
    if (this.worldInfo.getBorderLerpTime() > 0L) {
        this.getWorldBorder().setTransition(this.worldInfo.getBorderSize(), this.worldInfo.getBorderLerpTarget(), this.worldInfo.getBorderLerpTime());
    } else {
        this.getWorldBorder().setTransition(this.worldInfo.getBorderSize());
    }
    return this;
}
Also used : ServerScoreboard(net.minecraft.scoreboard.ServerScoreboard) AdvancementManager(net.minecraft.advancements.AdvancementManager) WorldSavedDataCallableSave(net.minecraft.world.storage.WorldSavedDataCallableSave) LootTableManager(net.minecraft.world.storage.loot.LootTableManager) ScoreboardSaveData(net.minecraft.scoreboard.ScoreboardSaveData) VillageCollection(net.minecraft.village.VillageCollection) File(java.io.File) MapStorage(net.minecraft.world.storage.MapStorage) FunctionManager(net.minecraft.advancements.FunctionManager)

Example 4 with LootTableManager

use of net.minecraft.world.storage.loot.LootTableManager in project Zollern-Galaxy by alphawolf918.

the class ZGEvents method onLootTableLoadEvent.

@SubscribeEvent(priority = EventPriority.NORMAL, receiveCanceled = true)
public void onLootTableLoadEvent(LootTableLoadEvent event) {
    ResourceLocation lootName = event.getName();
    if (lootName == LootTableList.GAMEPLAY_FISHING_FISH) {
        LootTableManager lootMgr = event.getLootTableManager();
        LootTable lootTbl = event.getTable();
        LootCondition[] conditions = new LootCondition[] {};
        RandomValueRange rng = new RandomValueRange(1.0F);
        RandomValueRange rngBonus = new RandomValueRange(0.0F);
        LootEntry entryZGFish = new LootEntryTable(ZGLootTables.GAMEPLAY_FISHING, 20, 10, conditions, "zgfishingentry");
        LootEntry[] entries = new LootEntry[] { entryZGFish };
        LootPool pool = new LootPool(entries, conditions, rng, rngBonus, "zgfishingpool");
        lootTbl.addPool(pool);
    }
}
Also used : LootTable(net.minecraft.world.storage.loot.LootTable) LootEntry(net.minecraft.world.storage.loot.LootEntry) RandomValueRange(net.minecraft.world.storage.loot.RandomValueRange) ResourceLocation(net.minecraft.util.ResourceLocation) LootTableManager(net.minecraft.world.storage.loot.LootTableManager) LootCondition(net.minecraft.world.storage.loot.conditions.LootCondition) LootPool(net.minecraft.world.storage.loot.LootPool) LootEntryTable(net.minecraft.world.storage.loot.LootEntryTable) SubscribeEvent(net.minecraftforge.fml.common.eventhandler.SubscribeEvent)

Aggregations

LootTableManager (net.minecraft.world.storage.loot.LootTableManager)4 AdvancementManager (net.minecraft.advancements.AdvancementManager)3 FunctionManager (net.minecraft.advancements.FunctionManager)3 ScoreboardSaveData (net.minecraft.scoreboard.ScoreboardSaveData)3 ServerScoreboard (net.minecraft.scoreboard.ServerScoreboard)3 VillageCollection (net.minecraft.village.VillageCollection)3 File (java.io.File)2 MapStorage (net.minecraft.world.storage.MapStorage)2 WorldSavedDataCallableSave (net.minecraft.world.storage.WorldSavedDataCallableSave)2 ResourceLocation (net.minecraft.util.ResourceLocation)1 LootEntry (net.minecraft.world.storage.loot.LootEntry)1 LootEntryTable (net.minecraft.world.storage.loot.LootEntryTable)1 LootPool (net.minecraft.world.storage.loot.LootPool)1 LootTable (net.minecraft.world.storage.loot.LootTable)1 RandomValueRange (net.minecraft.world.storage.loot.RandomValueRange)1 LootCondition (net.minecraft.world.storage.loot.conditions.LootCondition)1 SubscribeEvent (net.minecraftforge.fml.common.eventhandler.SubscribeEvent)1