Init to comit it!
This commit is contained in:
31
src/main/java/com/vixis/Vixis.java
Normal file
31
src/main/java/com/vixis/Vixis.java
Normal file
@@ -0,0 +1,31 @@
|
||||
package com.vixis;
|
||||
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
@Mod(
|
||||
modid = Vixis.MODID,
|
||||
name = Vixis.NAME,
|
||||
version = Vixis.VERSION,
|
||||
acceptedMinecraftVersions = "[1.12.2]"
|
||||
)
|
||||
public class Vixis {
|
||||
public static final String MODID = "vixis";
|
||||
public static final String NAME = "Vixis";
|
||||
public static final String VERSION = "0.1.0";
|
||||
|
||||
public static final Logger LOGGER = LogManager.getLogger(MODID);
|
||||
|
||||
@Mod.EventHandler
|
||||
public void preInit(FMLPreInitializationEvent event) {
|
||||
LOGGER.info("Vixis preInit ({})", event.getModMetadata().version);
|
||||
}
|
||||
|
||||
@Mod.EventHandler
|
||||
public void init(FMLInitializationEvent event) {
|
||||
LOGGER.info("Vixis ready.");
|
||||
}
|
||||
}
|
||||
30
src/main/java/com/vixis/advancement/VixisAdvancements.java
Normal file
30
src/main/java/com/vixis/advancement/VixisAdvancements.java
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.vixis.advancement;
|
||||
|
||||
import com.vixis.Vixis;
|
||||
import net.minecraft.advancements.Advancement;
|
||||
import net.minecraft.advancements.AdvancementProgress;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
public final class VixisAdvancements {
|
||||
public static final ResourceLocation KISS_A_FOX = new ResourceLocation(Vixis.MODID, "kiss_a_fox");
|
||||
|
||||
private VixisAdvancements() {
|
||||
}
|
||||
|
||||
public static void grant(EntityPlayerMP player, ResourceLocation id) {
|
||||
Advancement advancement = player.getServerWorld().getAdvancementManager().getAdvancement(id);
|
||||
if (advancement == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
AdvancementProgress progress = player.getAdvancements().getProgress(advancement);
|
||||
if (progress.isDone()) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (String criterion : progress.getRemaningCriteria()) {
|
||||
player.getAdvancements().grantCriterion(advancement, criterion);
|
||||
}
|
||||
}
|
||||
}
|
||||
56
src/main/java/com/vixis/event/FoxKissHandler.java
Normal file
56
src/main/java/com/vixis/event/FoxKissHandler.java
Normal file
@@ -0,0 +1,56 @@
|
||||
package com.vixis.event;
|
||||
|
||||
import com.vixis.Vixis;
|
||||
import com.vixis.advancement.VixisAdvancements;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.gameevent.TickEvent;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = Vixis.MODID)
|
||||
public final class FoxKissHandler {
|
||||
private static final String FOX_NAME = "KenwoodFox";
|
||||
|
||||
private FoxKissHandler() {
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void onPlayerTick(TickEvent.PlayerTickEvent event) {
|
||||
if (event.phase != TickEvent.Phase.END || event.player.world.isRemote) {
|
||||
return;
|
||||
}
|
||||
if (!(event.player instanceof EntityPlayerMP)) {
|
||||
return;
|
||||
}
|
||||
|
||||
EntityPlayerMP player = (EntityPlayerMP) event.player;
|
||||
for (EntityPlayer other : player.world.playerEntities) {
|
||||
if (other == player || !isKenwoodFox(other)) {
|
||||
continue;
|
||||
}
|
||||
if (player.getEntityBoundingBox().intersects(other.getEntityBoundingBox())) {
|
||||
VixisAdvancements.grant(player, VixisAdvancements.KISS_A_FOX);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
for (Entity entity : player.world.loadedEntityList) {
|
||||
if (entity == player || entity instanceof EntityPlayer || !isKenwoodFox(entity)) {
|
||||
continue;
|
||||
}
|
||||
if (player.getEntityBoundingBox().intersects(entity.getEntityBoundingBox())) {
|
||||
VixisAdvancements.grant(player, VixisAdvancements.KISS_A_FOX);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static boolean isKenwoodFox(Entity entity) {
|
||||
if (FOX_NAME.equals(entity.getName())) {
|
||||
return true;
|
||||
}
|
||||
return entity.hasCustomName() && FOX_NAME.equals(entity.getCustomNameTag());
|
||||
}
|
||||
}
|
||||
33
src/main/java/com/vixis/item/ModItems.java
Normal file
33
src/main/java/com/vixis/item/ModItems.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package com.vixis.item;
|
||||
|
||||
import com.vixis.Vixis;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.event.RegistryEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = Vixis.MODID)
|
||||
public final class ModItems {
|
||||
public static Item LOGO;
|
||||
public static Item KISS_CHEEV;
|
||||
|
||||
private ModItems() {
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void registerItems(RegistryEvent.Register<Item> event) {
|
||||
LOGO = new Item();
|
||||
LOGO.setRegistryName(Vixis.MODID, "logo");
|
||||
LOGO.setTranslationKey(Vixis.MODID + ".logo");
|
||||
LOGO.setMaxStackSize(1);
|
||||
|
||||
KISS_CHEEV = new Item();
|
||||
KISS_CHEEV.setRegistryName(Vixis.MODID, "kiss_cheev");
|
||||
KISS_CHEEV.setTranslationKey(Vixis.MODID + ".kiss_cheev");
|
||||
KISS_CHEEV.setCreativeTab(CreativeTabs.MISC);
|
||||
KISS_CHEEV.setMaxStackSize(1);
|
||||
|
||||
event.getRegistry().registerAll(LOGO, KISS_CHEEV);
|
||||
}
|
||||
}
|
||||
30
src/main/java/com/vixis/item/ModItemsClient.java
Normal file
30
src/main/java/com/vixis/item/ModItemsClient.java
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.vixis.item;
|
||||
|
||||
import com.vixis.Vixis;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraftforge.client.event.ModelRegistryEvent;
|
||||
import net.minecraftforge.client.model.ModelLoader;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
|
||||
@Mod.EventBusSubscriber(modid = Vixis.MODID, value = Side.CLIENT)
|
||||
public final class ModItemsClient {
|
||||
private ModItemsClient() {
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public static void registerModels(ModelRegistryEvent event) {
|
||||
register(ModItems.LOGO);
|
||||
register(ModItems.KISS_CHEEV);
|
||||
}
|
||||
|
||||
private static void register(Item item) {
|
||||
ModelLoader.setCustomModelResourceLocation(
|
||||
item,
|
||||
0,
|
||||
new ModelResourceLocation(item.getRegistryName(), "inventory")
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user