Skip to content

Commit 937ec43

Browse files
committed
Version 1.1.0
Added Swet Material Added Swet Crystals Added Valkyrie Material Added Valkyrie Metal Ingots, Nuggets, Blocks Added Molten Valkyrie Metal Added Swetty trait (basically Slimy but with swets instead of slimes) Added Reach trait (gives extra reach) Added config options to disable Valkyrie, Swet Added config option to disable Valkyrie Metal Tool Forges Tweaked Golden Amber Colour Removed Config being logged on load
1 parent 8afe1a3 commit 937ec43

38 files changed

+516
-16
lines changed

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ apply plugin: 'net.minecraftforge.gradle.forge'
1111
//Only edit below this line, the above code adds and enables the necessary things for Forge to be setup.
1212

1313

14-
version = "1.0.3"
14+
version = "1.1.0"
1515
group = "shnupbups.tinkersaether" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
1616
archivesBaseName = "tinkersaether"
1717

src/main/java/shnupbups/tinkersaether/TinkersAether.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
public class TinkersAether {
2727
public static final String modid = "tinkersaether";
2828
public static final String name = "MoreTiC";
29-
public static final String version = "1.0.3";
29+
public static final String version = "1.1.0";
3030

3131
@Mod.Instance(modid)
3232
public static TinkersAether instance;
@@ -50,8 +50,6 @@ public void preInit(FMLPreInitializationEvent event) {
5050

5151
@Mod.EventHandler
5252
public void init(FMLInitializationEvent event) {
53-
logger.info(TAConfig.getConfig());
54-
5553
if(TAConfig.darts) {
5654
proxy.initToolGuis();
5755
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package shnupbups.tinkersaether.blocks;
2+
3+
import com.legacy.aether.registry.creative_tabs.AetherCreativeTabs;
4+
import net.minecraft.block.Block;
5+
import net.minecraft.block.material.Material;
6+
import shnupbups.tinkersaether.TinkersAether;
7+
8+
public class TABlock extends Block {
9+
10+
public TABlock(String name, Material material) {
11+
super(material);
12+
this.setUnlocalizedName(name);
13+
this.setRegistryName(TinkersAether.modid, name);
14+
this.setCreativeTab(AetherCreativeTabs.blocks);
15+
}
16+
}

src/main/java/shnupbups/tinkersaether/config/TAConfig.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,13 @@ public class TAConfig extends Configuration {
3232
@Config.RequiresMcRestart
3333
public static boolean goldenamber = true;
3434

35-
/*@Config.Comment("Whether Valkyrie is enabled or not.")
35+
@Config.Comment("Whether Valkyrie Metal is enabled or not.")
3636
@Config.RequiresMcRestart
37-
public static boolean valkyrie = true;*/
37+
public static boolean valkyrie = true;
38+
39+
@Config.Comment("Whether Swet is enabled or not.")
40+
@Config.RequiresMcRestart
41+
public static boolean swet = true;
3842

3943
@Config.Comment("Whether Darts and Dart Shooters are enabled or not.")
4044
@Config.RequiresMcRestart
@@ -44,6 +48,10 @@ public class TAConfig extends Configuration {
4448
@Config.RequiresMcRestart
4549
public static boolean gravititeForge = true;
4650

51+
@Config.Comment("Whether Valkyrie Metal (if enabled) can be used to make a tool forge.")
52+
@Config.RequiresMcRestart
53+
public static boolean valkyrieForge = true;
54+
4755
@Mod.EventBusSubscriber(modid = TinkersAether.modid)
4856
private static class EventHandler {
4957
@SubscribeEvent
@@ -53,8 +61,4 @@ public static void onConfigChanged(final ConfigChangedEvent.OnConfigChangedEvent
5361
}
5462
}
5563
}
56-
57-
public static String getConfig() {
58-
return "Skyroot: "+skyroot+" Holystone: "+holystone+" Zanite: "+zanite+" Gravitite: "+gravitite+" Darts: "+darts+" GravititeForge: "+gravititeForge;
59-
}
6064
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package shnupbups.tinkersaether.items;
2+
3+
import com.legacy.aether.registry.creative_tabs.AetherCreativeTabs;
4+
import net.minecraft.item.Item;
5+
import shnupbups.tinkersaether.TinkersAether;
6+
7+
public class TAItem extends Item {
8+
9+
public TAItem(String name) {
10+
super();
11+
this.setUnlocalizedName(name);
12+
this.setRegistryName(TinkersAether.modid, name);
13+
this.setCreativeTab(AetherCreativeTabs.material);
14+
}
15+
}

src/main/java/shnupbups/tinkersaether/misc/OreDictAether.java renamed to src/main/java/shnupbups/tinkersaether/misc/OreDict.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import net.minecraft.item.ItemStack;
66
import net.minecraftforge.oredict.OreDictionary;
77

8-
public class OreDictAether {
8+
public class OreDict {
99

1010
public static void register() {
1111
OreDictionary.registerOre("plankSkyroot", BlocksAether.skyroot_plank);
@@ -14,5 +14,7 @@ public static void register() {
1414
OreDictionary.registerOre("stickSkyroot", ItemsAether.skyroot_stick);
1515
OreDictionary.registerOre("holystone",BlocksAether.holystone);
1616
OreDictionary.registerOre("gemGoldenAmber",ItemsAether.golden_amber);
17+
OreDictionary.registerOre("slimeball",ItemsAether.swetty_ball);
18+
OreDictionary.registerOre("slimeballSwet",ItemsAether.swetty_ball);
1719
}
1820
}

src/main/java/shnupbups/tinkersaether/modules/ModuleBase.java

Lines changed: 98 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,24 @@
11
package shnupbups.tinkersaether.modules;
22

3+
import com.legacy.aether.items.ItemsAether;
4+
import net.minecraft.block.Block;
5+
import net.minecraft.item.Item;
6+
import net.minecraft.item.ItemBlock;
37
import net.minecraft.item.crafting.IRecipe;
48
import net.minecraftforge.common.MinecraftForge;
59
import net.minecraftforge.event.RegistryEvent;
10+
import net.minecraftforge.fml.common.Mod;
611
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
12+
import net.minecraftforge.oredict.OreDictionary;
713
import net.minecraftforge.registries.IForgeRegistry;
814
import shnupbups.tinkersaether.Materials;
915
import shnupbups.tinkersaether.TinkersAether;
16+
import shnupbups.tinkersaether.blocks.TABlock;
1017
import shnupbups.tinkersaether.config.TAConfig;
1118
import shnupbups.tinkersaether.fluids.FluidHelper;
19+
import shnupbups.tinkersaether.items.TAItem;
1220
import shnupbups.tinkersaether.misc.MiscUtils;
13-
import shnupbups.tinkersaether.misc.OreDictAether;
21+
import shnupbups.tinkersaether.misc.OreDict;
1422
import shnupbups.tinkersaether.traits.*;
1523
import slimeknights.tconstruct.library.MaterialIntegration;
1624
import slimeknights.tconstruct.library.TinkerRegistry;
@@ -21,6 +29,7 @@
2129
import static slimeknights.tconstruct.library.utils.HarvestLevels.*;
2230
import static slimeknights.tconstruct.tools.TinkerTraits.*;
2331

32+
@Mod.EventBusSubscriber(modid = TinkersAether.modid)
2433
public class ModuleBase {
2534
public static ModuleBase aether = new ModuleBase();
2635

@@ -30,10 +39,17 @@ public ModuleBase() {
3039

3140
public static final Material skyroot = Materials.mat("skyroot", 0x6C633E);
3241
public static final Material holystone = Materials.mat("holystone", 0xA8AAA8);
33-
public static final Material goldenAmber = Materials.mat("goldenamber", 0xFFDF1A);
42+
public static final Material goldenAmber = Materials.mat("goldenamber", 0xFFE41C);
3443
public static final Material zanite = Materials.mat("zanite", 0x6611DD);
3544
public static final Material gravitite = Materials.mat("gravitite", 0xCC55AA);
3645
public static final Material valkyrie = Materials.mat("valkyrie", 0xEEEEDD);
46+
public static final Material swet = Materials.mat("swet", 0x29A6D9);
47+
48+
public static final TAItem valkyrieIngot = new TAItem("valkyrie_ingot");
49+
public static final TAItem valkyrieNugget = new TAItem("valkyrie_nugget");
50+
public static final TABlock valkyrieBlock = new TABlock("valkyrie_block", net.minecraft.block.material.Material.IRON);
51+
52+
public static final TAItem swetCrystal = new TAItem("swet_crystal");
3753

3854
public void preInit() {
3955
TinkersAether.logger.info("Base Module - Begin PreInit");
@@ -116,6 +132,40 @@ public void preInit() {
116132
TinkerRegistry.integrate(goldenAmberMi).preInit();
117133
}
118134

135+
if(TAConfig.valkyrie) {
136+
TinkerRegistry.addMaterialStats(valkyrie,
137+
new HeadMaterialStats(1000, 8.0f, 7.00f, COBALT),
138+
new HandleMaterialStats(1.0f, 80),
139+
new ExtraMaterialStats(70),
140+
TinkersAether.plzNo);
141+
valkyrie.setCraftable(false).setCastable(true);
142+
valkyrie.addItem("blockValkyrie", 1, Material.VALUE_Block);
143+
valkyrie.addItem(valkyrieBlock, Material.VALUE_Block);
144+
valkyrie.addItem("ingotValkryie", 1, Material.VALUE_Ingot);
145+
valkyrie.addItem(valkyrieIngot, 1, Material.VALUE_Ingot);
146+
valkyrie.addItem("nuggetValkryie", 1, Material.VALUE_Nugget);
147+
valkyrie.addItem(valkyrieNugget, 1, Material.VALUE_Nugget);
148+
valkyrie.addTrait(Gilded.gilded, MaterialTypes.HEAD);
149+
valkyrie.addTrait(Reach.reach, MaterialTypes.HEAD);
150+
valkyrie.addTrait(Reach.reach);
151+
MaterialIntegration valkyrieMi = new MaterialIntegration(null, valkyrie, FluidHelper.createFluid(valkyrie, 1000), "Valkyrie");
152+
TinkerRegistry.integrate(valkyrieMi).preInit();
153+
}
154+
155+
if(TAConfig.swet) {
156+
TinkerRegistry.addMaterialStats(swet,
157+
new HeadMaterialStats(1100, 4.5f, 2.0f, STONE),
158+
new HandleMaterialStats(0.7f, -100),
159+
new ExtraMaterialStats(360),
160+
new BowMaterialStats(1.0f, 1.5f, 0.5f));
161+
swet.setCraftable(true).setCastable(false);
162+
swet.addItem("slimecrystalSwet", 1, Material.VALUE_Ingot);
163+
swet.addItem(swetCrystal, 1, Material.VALUE_Ingot);
164+
swet.addTrait(Swetty.swetty);
165+
MaterialIntegration swetMi = new MaterialIntegration(swet).setRepresentativeItem("slimecrystalSwet");
166+
TinkerRegistry.integrate(swetMi).preInit();
167+
}
168+
119169
TinkersAether.logger.info("Base Module - Materials Registered");
120170

121171
TinkersAether.logger.info("Base Module - End PreInit");
@@ -124,7 +174,7 @@ public void preInit() {
124174
public void init() {
125175
TinkersAether.logger.info("Base Module - Begin Init");
126176

127-
OreDictAether.register();
177+
OreDict.register();
128178

129179
TinkersAether.logger.info("Base Module - OreDict Registered");
130180

@@ -133,6 +183,13 @@ public void init() {
133183
TinkerRegistry.registerBasinCasting(new CastingRecipe(MiscUtils.stackFromOreDict("blockEnchantedGravitite"), gravitite.getFluid(), Material.VALUE_Ingot, 180));
134184
}
135185

186+
if(TAConfig.valkyrie) {
187+
TinkerRegistry.registerMelting(ItemsAether.valkyrie_boots, valkyrie.getFluid(), Material.VALUE_Ingot*4);
188+
TinkerRegistry.registerMelting(ItemsAether.valkyrie_chestplate, valkyrie.getFluid(), Material.VALUE_Ingot*8);
189+
TinkerRegistry.registerMelting(ItemsAether.valkyrie_helmet, valkyrie.getFluid(), Material.VALUE_Ingot*5);
190+
TinkerRegistry.registerMelting(ItemsAether.valkyrie_leggings, valkyrie.getFluid(), Material.VALUE_Ingot*7);
191+
}
192+
136193
TinkersAether.logger.info("Base Module - Gravitite Stuffs Registered");
137194

138195
TinkersAether.logger.info("Base Module - End Init");
@@ -144,6 +201,44 @@ public void registerRecipes(RegistryEvent.Register<IRecipe> event) {
144201
if(TAConfig.gravititeForge) {
145202
TinkerTools.registerToolForgeBlock(registry, "blockEnchantedGravitite");
146203
}
204+
if(TAConfig.valkyrie && TAConfig.valkyrieForge) {
205+
TinkerTools.registerToolForgeBlock(registry, "blockValkyrie");
206+
}
147207
TinkersAether.logger.info("Base Module - Recipes Registered");
148208
}
209+
210+
@SubscribeEvent
211+
public static void registerItems(RegistryEvent.Register<Item> event) {
212+
IForgeRegistry<Item> registry = event.getRegistry();
213+
if(TAConfig.valkyrie) {
214+
registry.register(valkyrieIngot);
215+
registry.register(valkyrieNugget);
216+
Item valkBlock = new ItemBlock(valkyrieBlock).setRegistryName(valkyrieBlock.getRegistryName()).setUnlocalizedName(valkyrieBlock.getUnlocalizedName());
217+
registry.register(valkBlock);
218+
TinkersAether.proxy.registerItemRenderer(valkyrieIngot, 0, "valkyrie_ingot");
219+
TinkersAether.proxy.registerItemRenderer(valkyrieNugget, 0, "valkyrie_nugget");
220+
TinkersAether.proxy.registerItemRenderer(valkBlock,0,"valkyrie_block");
221+
OreDictionary.registerOre("ingotValkyrie",valkyrieIngot);
222+
OreDictionary.registerOre("nuggetValkyrie",valkyrieNugget);
223+
OreDictionary.registerOre("blockValkyrie",valkyrieBlock);
224+
}
225+
if(TAConfig.swet) {
226+
registry.register(swetCrystal);
227+
TinkersAether.proxy.registerItemRenderer(swetCrystal, 0, "swet_crystal");
228+
OreDictionary.registerOre("slimecrystal",swetCrystal);
229+
OreDictionary.registerOre("slimecrystalSwet",swetCrystal);
230+
}
231+
TinkersAether.logger.info("Base Module - Items Registered");
232+
}
233+
234+
@SubscribeEvent
235+
public static void registerBlocks(RegistryEvent.Register<Block> event) {
236+
IForgeRegistry<Block> registry = event.getRegistry();
237+
if(TAConfig.valkyrie) {
238+
valkyrieBlock.setHarvestLevel("pickaxe",3);
239+
valkyrieBlock.setHardness(4.0f);
240+
registry.register(valkyrieBlock);
241+
}
242+
TinkersAether.logger.info("Base Module - Blocks Registered");
243+
}
149244
}

src/main/java/shnupbups/tinkersaether/modules/ModuleTools.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public class ModuleTools {
3737
public static final List<IToolPart> parts = new ArrayList<>();
3838

3939
@SubscribeEvent
40-
public static void initItems(RegistryEvent.Register<Item> event) {
40+
public static void registerItems(RegistryEvent.Register<Item> event) {
4141
TinkersAether.logger.info("Tools Module - Begin ItemInit");
4242

4343
if(TAConfig.darts) {
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package shnupbups.tinkersaether.traits;
2+
3+
import net.minecraft.entity.ai.attributes.AttributeModifier;
4+
import net.minecraft.entity.player.EntityPlayer;
5+
import net.minecraft.item.ItemStack;
6+
import net.minecraftforge.common.MinecraftForge;
7+
import net.minecraftforge.event.entity.living.LivingEvent;
8+
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
9+
import slimeknights.tconstruct.library.traits.AbstractTrait;
10+
11+
import java.util.UUID;
12+
13+
public class Reach extends AbstractTrait {
14+
public static final Reach reach = new Reach();
15+
16+
public static final AttributeModifier reachModifier = new AttributeModifier(UUID.randomUUID(), "Tinkers Aether Reach Modifier", 5.0D, 0);
17+
18+
public Reach() {
19+
super("reach",0xEEEEDD);
20+
MinecraftForge.EVENT_BUS.register(this);
21+
}
22+
23+
@SubscribeEvent
24+
public void onPlayerUpdate(LivingEvent.LivingUpdateEvent event) {
25+
if ((event.getEntityLiving() instanceof EntityPlayer)) {
26+
EntityPlayer player = (EntityPlayer) event.getEntityLiving();
27+
ItemStack stack = player.getHeldItemMainhand();
28+
if (!player.getEntityAttribute(EntityPlayer.REACH_DISTANCE).hasModifier(this.reachModifier) && isToolWithTrait(stack)) {
29+
player.getEntityAttribute(EntityPlayer.REACH_DISTANCE).applyModifier(this.reachModifier);
30+
} else if (player.getEntityAttribute(EntityPlayer.REACH_DISTANCE).hasModifier(this.reachModifier) && !isToolWithTrait(stack)) {
31+
player.getEntityAttribute(EntityPlayer.REACH_DISTANCE).removeModifier(this.reachModifier);
32+
}
33+
}
34+
}
35+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package shnupbups.tinkersaether.traits;
2+
3+
import com.legacy.aether.entities.passive.mountable.EntitySwet;
4+
import net.minecraft.block.state.IBlockState;
5+
import net.minecraft.entity.EntityLivingBase;
6+
import net.minecraft.item.ItemStack;
7+
import net.minecraft.util.math.BlockPos;
8+
import net.minecraft.world.World;
9+
import slimeknights.tconstruct.library.traits.AbstractTrait;
10+
11+
public class Swetty extends AbstractTrait {
12+
13+
public static final Swetty swetty = new Swetty();
14+
15+
private static float chance = 0.0033f;
16+
17+
public Swetty() {
18+
super("swetty", 0x7777FF);
19+
}
20+
21+
@Override
22+
public void afterBlockBreak(ItemStack tool, World world, IBlockState state, BlockPos pos, EntityLivingBase player, boolean wasEffective) {
23+
if(wasEffective && !world.isRemote && random.nextFloat() < chance) {
24+
spawnSwet(player, pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5, world);
25+
}
26+
}
27+
28+
@Override
29+
public void afterHit(ItemStack tool, EntityLivingBase player, EntityLivingBase target, float damageDealt, boolean wasCritical, boolean wasHit) {
30+
if(!target.isEntityAlive() && !target.getEntityWorld().isRemote && random.nextFloat() < chance) {
31+
spawnSwet(player, target.posX, target.posY, target.posZ, target.getEntityWorld());
32+
}
33+
}
34+
35+
protected void spawnSwet(EntityLivingBase player, double x, double y, double z, World world) {
36+
EntitySwet entity = new EntitySwet(world);
37+
entity.setPosition(x, y, z);
38+
world.spawnEntity(entity);
39+
entity.setLastAttackedEntity(player);
40+
entity.playLivingSound();
41+
}
42+
}

0 commit comments

Comments
 (0)