mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
74 lines
3.1 KiB
Java
74 lines
3.1 KiB
Java
package com.hbm.saveddata.satellites;
|
|
|
|
import com.hbm.blocks.ModBlocks;
|
|
import com.hbm.items.ModItems;
|
|
import com.hbm.util.WeightedRandomObject;
|
|
import net.minecraft.init.Items;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.nbt.NBTTagCompound;
|
|
|
|
public class SatelliteMiner extends Satellite {
|
|
/**
|
|
* {@link WeightedRandomObject} array with loot the satellite will deliver.
|
|
*/
|
|
private static WeightedRandomObject[] CARGO = new WeightedRandomObject[] {
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_aluminium, 3), 10),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_iron, 3), 10),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_titanium, 2), 8),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_tungsten, 2), 7),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_coal, 4), 15),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_uranium, 2), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_plutonium, 1), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_thorium, 2), 7),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_desh_mix, 3), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_diamond, 2), 7),
|
|
new WeightedRandomObject(new ItemStack(Items.redstone, 5), 15),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_nitan_mix, 2), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_power, 2), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_copper, 5), 15),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_lead, 3), 10),
|
|
new WeightedRandomObject(new ItemStack(ModItems.fluorite, 4), 15),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_lapis, 4), 10),
|
|
new WeightedRandomObject(new ItemStack(ModItems.powder_combine_steel, 1), 1),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_aluminium, 1), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_gold, 1), 5),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_phosphorus, 1), 10),
|
|
new WeightedRandomObject(new ItemStack(ModBlocks.gravel_diamond, 1), 3),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_uranium, 1), 3),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_plutonium, 1), 3),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_trixite, 1), 1),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_starmetal, 1), 1),
|
|
new WeightedRandomObject(new ItemStack(ModItems.crystal_lithium, 2), 4)
|
|
};
|
|
|
|
public long lastOp;
|
|
|
|
public SatelliteMiner() {
|
|
this.satIface = Interfaces.NONE;
|
|
}
|
|
|
|
public void writeToNBT(NBTTagCompound nbt) {
|
|
nbt.setLong("lastOp", lastOp);
|
|
}
|
|
|
|
public void readFromNBT(NBTTagCompound nbt) {
|
|
lastOp = nbt.getLong("lastOp");
|
|
}
|
|
|
|
/**
|
|
* Replaces cargo of the satellite.
|
|
* @param cargo - Array of {@link WeightedRandomObject} representing the loot that will be delivered.
|
|
*/
|
|
public static void registerCargo(WeightedRandomObject[] cargo) {
|
|
CARGO = cargo;
|
|
}
|
|
|
|
/**
|
|
* Gets items the satellite can deliver.
|
|
* @return - Array of {@link WeightedRandomObject} of satellite loot.
|
|
*/
|
|
public WeightedRandomObject[] getCargo() {
|
|
return CARGO;
|
|
}
|
|
}
|