Highly incomplete code. First work on porting to 1.12. Still need to rework a LOT of things.

This commit is contained in:
Gunther De Wachter
2017-07-06 01:57:19 +02:00
parent d67f97cd16
commit fbcf8c4705
127 changed files with 850 additions and 425 deletions
@@ -21,6 +21,7 @@ package appeng.services.export;
import java.io.File;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import javax.annotation.Nonnull;
@@ -31,10 +32,11 @@ import com.google.common.base.Stopwatch;
import net.minecraft.item.Item;
import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.fml.common.ModContainer;
import net.minecraftforge.fml.common.registry.FMLControlledNamespacedRegistry;
import net.minecraftforge.fml.common.registry.GameData;
import appeng.core.AELog;
import net.minecraftforge.fml.common.registry.ForgeRegistries;
import net.minecraftforge.registries.GameData;
import net.minecraftforge.registries.IForgeRegistry;
/**
@@ -118,7 +120,7 @@ public class ExportProcess implements Runnable
AELog.info( EXPORT_START_MESSAGE );
final Stopwatch watch = Stopwatch.createStarted();
final FMLControlledNamespacedRegistry<Item> itemRegistry = GameData.getItemRegistry();
final IForgeRegistry<Item> itemRegistry = ForgeRegistries.ITEMS;
final ExportMode mode = this.config.isAdditionalInformationEnabled() ? ExportMode.VERBOSE : ExportMode.MINIMAL;
final Exporter exporter = new MinecraftItemCSVExporter( this.exportDirectory, itemRegistry, mode );
@@ -36,6 +36,8 @@ import com.google.common.base.Joiner;
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import net.minecraftforge.fml.common.registry.ForgeRegistries;
import net.minecraftforge.registries.IForgeRegistry;
import org.apache.commons.io.FileUtils;
import net.minecraft.block.Block;
@@ -45,7 +47,6 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraft.util.text.translation.I18n;
import net.minecraftforge.fml.common.registry.FMLControlledNamespacedRegistry;
import appeng.core.AELog;
@@ -68,7 +69,7 @@ final class MinecraftItemCSVExporter implements Exporter
@Nonnull
private final File exportDirectory;
@Nonnull
private final FMLControlledNamespacedRegistry<Item> itemRegistry;
private final IForgeRegistry<Item> itemRegistry;
@Nonnull
private final ExportMode mode;
@@ -79,7 +80,7 @@ final class MinecraftItemCSVExporter implements Exporter
* phase when all items are determined)
* @param mode mode in which the export should be operated. Resulting CSV will change depending on this.
*/
MinecraftItemCSVExporter( @Nonnull final File exportDirectory, @Nonnull final FMLControlledNamespacedRegistry<Item> itemRegistry, @Nonnull final ExportMode mode )
MinecraftItemCSVExporter(@Nonnull final File exportDirectory, @Nonnull final IForgeRegistry<Item> itemRegistry, @Nonnull final ExportMode mode )
{
this.exportDirectory = Preconditions.checkNotNull( exportDirectory );
Preconditions.checkArgument( !exportDirectory.isFile() );
@@ -90,7 +91,7 @@ final class MinecraftItemCSVExporter implements Exporter
@Override
public void export()
{
final Iterable<Item> items = this.itemRegistry.typeSafeIterable();
final Iterable<Item> items = this.itemRegistry;
final List<Item> itemList = Lists.newArrayList( items );
final List<String> lines = Lists.transform( itemList, new ItemRowExtractFunction( this.itemRegistry, this.mode ) );
@@ -202,7 +203,7 @@ final class MinecraftItemCSVExporter implements Exporter
private static final String EXPORTING_SUBTYPES_FAILED_MESSAGE = "Could not export subtypes of: %s";
@Nonnull
private final FMLControlledNamespacedRegistry<Item> itemRegistry;
private final IForgeRegistry<Item> itemRegistry;
@Nonnull
private final ExportMode mode;
@@ -210,7 +211,7 @@ final class MinecraftItemCSVExporter implements Exporter
* @param itemRegistry used to retrieve the name of the item
* @param mode extracts more or less information from item depending on mode
*/
ItemRowExtractFunction( @Nonnull final FMLControlledNamespacedRegistry<Item> itemRegistry, @Nonnull final ExportMode mode )
ItemRowExtractFunction( @Nonnull final IForgeRegistry<Item> itemRegistry, @Nonnull final ExportMode mode )
{
this.itemRegistry = Preconditions.checkNotNull( itemRegistry );
this.mode = Preconditions.checkNotNull( mode );
@@ -231,7 +232,7 @@ final class MinecraftItemCSVExporter implements Exporter
AELog.debug( EXPORTING_SUBTYPES_MESSAGE, input.getUnlocalizedName(), input.getHasSubtypes() );
}
final String itemName = this.itemRegistry.getNameForObject( input ).toString();
final String itemName = ForgeRegistries.ITEMS.getKey( input ).toString();
final boolean hasSubtypes = input.getHasSubtypes();
if( hasSubtypes )
{
@@ -241,7 +242,7 @@ final class MinecraftItemCSVExporter implements Exporter
// modifies the stacks list and adds the different sub types to it
try
{
input.getSubItems( input, creativeTab, stacks );
input.getSubItems( creativeTab, stacks );
}
catch( final Exception ignored )
{