Update to release 1.0.0! Finished adding new compasses, textures, recipes, and working Netcode.
This commit is contained in:
@@ -38,23 +38,18 @@ dependencies {
|
||||
// or you may define them like so..
|
||||
//compile "some.group:artifact:version:classifier"
|
||||
//compile "some.group:artifact:version"
|
||||
|
||||
// real examples
|
||||
//compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
|
||||
//compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
|
||||
|
||||
// the 'provided' configuration is for optional dependencies that exist at compile-time but might not at runtime.
|
||||
//provided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
|
||||
|
||||
// the deobf configurations: 'deobfCompile' and 'deobfProvided' are the same as the normal compile and provided,
|
||||
// except that these dependencies get remapped to your current MCP mappings
|
||||
//deobfCompile 'com.mod-buildcraft:buildcraft:6.0.8:dev'
|
||||
//deobfProvided 'com.mod-buildcraft:buildcraft:6.0.8:dev'
|
||||
|
||||
// for more info...
|
||||
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
|
||||
// http://www.gradle.org/docs/current/userguide/dependency_management.html
|
||||
|
||||
}
|
||||
|
||||
processResources {
|
||||
|
@@ -1,8 +1,10 @@
|
||||
package net.yseven.findyourway.Client;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.entity.Entity;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.item.EntityItemFrame;
|
||||
import net.minecraft.entity.passive.EntityChicken;
|
||||
import net.minecraft.item.IItemPropertyGetter;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
@@ -10,7 +12,7 @@ import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
import net.yseven.findyourway.CommonProxy;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
@@ -25,32 +27,58 @@ public class AngleGetter implements IItemPropertyGetter {
|
||||
@SideOnly(Side.CLIENT)
|
||||
private BlockPos blockPos;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
AngleGetter(ItemCompassBase compassBase) {
|
||||
this.blockPos = compassBase.getStructurePos();
|
||||
}
|
||||
|
||||
@Override
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) {
|
||||
|
||||
if (entityIn == null && !stack.isOnItemFrame()) return 0.0F;
|
||||
final boolean entityExists = entityIn != null;
|
||||
boolean isLiving = entityIn != null;
|
||||
Entity errorChicken = new EntityChicken(Minecraft.getMinecraft().world);
|
||||
|
||||
final Entity entity = (Entity) (entityExists ? entityIn : stack.getItemFrame());
|
||||
Entity entity;
|
||||
if(isLiving) {
|
||||
entity = entityIn;
|
||||
} else if(stack.getItemFrame() != null) {
|
||||
entity = stack.getItemFrame();
|
||||
} else {
|
||||
entity = errorChicken;
|
||||
}
|
||||
|
||||
if (worldIn == null) worldIn = entity.world;
|
||||
|
||||
double rotation = entityExists ? (double) entity.rotationYaw : getFrameAngle((EntityItemFrame) entity);
|
||||
rotation %= 360.0D;
|
||||
double angle;
|
||||
setBlockPos(stack);
|
||||
|
||||
double adjusted = Math.PI - ((rotation - 90.0D) * 0.01745329238474369D - getAngle(worldIn, entity, stack));
|
||||
if(blockPos != null) {
|
||||
if (blockPos.getY() == 0) return 0.0F;
|
||||
double entityAngle;
|
||||
if(isLiving) {
|
||||
entityAngle = entity.rotationYaw;
|
||||
} else if(stack.getItemFrame() != null) {
|
||||
entityAngle = getFrameAngle((EntityItemFrame) entity);
|
||||
} else {
|
||||
return 0.0F;
|
||||
}
|
||||
|
||||
if (entityExists) adjusted = wobble(worldIn, adjusted);
|
||||
entityAngle /= 360.0D;
|
||||
entityAngle = MathHelper.positiveModulo(entityAngle, 1.0D);
|
||||
double posAngle = getAngle(blockPos, entity);
|
||||
posAngle /= Math.PI * 2D;
|
||||
angle = 0.5D - (entityAngle - 0.25D - posAngle);
|
||||
} else {
|
||||
if(!ClientProxy.hasAngleErrrored()) {
|
||||
System.out.println("Compass angle is random due to an unexpected error");
|
||||
ClientProxy.AngleHasErrored();
|
||||
}
|
||||
angle = 0.0D;
|
||||
}
|
||||
|
||||
final float f = (float) (adjusted / (Math.PI * 2D));
|
||||
return MathHelper.positiveModulo(f, 1.0F);
|
||||
if(isLiving) {
|
||||
angle = wobble(worldIn, angle);
|
||||
}
|
||||
|
||||
|
||||
return MathHelper.positiveModulo((float) angle, 1.0F);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@@ -68,13 +96,21 @@ public class AngleGetter implements IItemPropertyGetter {
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private double getAngle(World world, Entity entity, ItemStack stack) {
|
||||
if(blockPos != null) {
|
||||
return Math.atan2((double) blockPos.getZ() - entity.posZ, (double) blockPos.getX() - entity.posX);
|
||||
} else {
|
||||
return (double) 0;
|
||||
private void setBlockPos(ItemStack stack) {
|
||||
for (int i = 0; i < CommonProxy.compassList.size(); i++) {
|
||||
if (stack.getItem().getUnlocalizedName().equals(CommonProxy.compassList.get(i).getUnlocalizedName())) {
|
||||
blockPos = CommonProxy.compassList.get(i).getStructurePos();
|
||||
} else {
|
||||
if (!ClientProxy.hasAngleErrrored()) {
|
||||
System.out.println("unable to get blockPos from compassList in AngleGetter class");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
private double getAngle(BlockPos pos, Entity ent) {
|
||||
return MathHelper.atan2(pos.getZ() - ent.posZ, pos.getX() - ent.posX);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
|
@@ -4,9 +4,7 @@ import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.entity.EntityPlayerSP;
|
||||
import net.minecraft.client.multiplayer.WorldClient;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraftforge.client.event.ModelRegistryEvent;
|
||||
import net.minecraftforge.client.model.ModelLoader;
|
||||
import net.minecraftforge.common.MinecraftForge;
|
||||
@@ -20,8 +18,9 @@ import net.minecraftforge.fml.common.gameevent.TickEvent;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.yseven.findyourway.CommonProxy;
|
||||
import net.yseven.findyourway.FindYourWay;
|
||||
import net.yseven.findyourway.Network.PacketHandler;
|
||||
import net.yseven.findyourway.Network.PacketSendKey;
|
||||
import net.yseven.findyourway.Network.MessageHandlerOnClient;
|
||||
import net.yseven.findyourway.Network.MessageToClient;
|
||||
import net.yseven.findyourway.Network.MessageToServer;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
import net.yseven.findyourway.item.ModItems;
|
||||
|
||||
@@ -32,28 +31,30 @@ public class ClientProxy extends CommonProxy {
|
||||
public static Minecraft getMinecraft() {
|
||||
return FMLClientHandler.instance().getClient();
|
||||
}
|
||||
|
||||
public static WorldClient getWorld() {
|
||||
return getMinecraft().world;
|
||||
}
|
||||
|
||||
public static EntityPlayerSP getPlayer() {
|
||||
return getMinecraft().player;
|
||||
}
|
||||
private static boolean angleError = false;
|
||||
|
||||
//TO-DO fill out the following methods
|
||||
public static boolean hasCompass(ItemCompassBase compass) {
|
||||
return getPlayer() != null && CommonProxy.containsCompass(getPlayer().inventory, compass);
|
||||
public static boolean hasAngleErrrored() {
|
||||
return angleError;
|
||||
}
|
||||
|
||||
public static void setStructurePos(ItemCompassBase compassBase, BlockPos pos) {
|
||||
compassBase.setStructurePos(pos);
|
||||
public static void AngleHasErrored() {
|
||||
angleError = true;
|
||||
}
|
||||
|
||||
public static boolean hasCompass(ItemCompassBase compass) {
|
||||
return getPlayer() != null && CommonProxy.containsCompass(getPlayer().inventory, compass);
|
||||
}
|
||||
|
||||
public static void resetStructurePos(ItemCompassBase compass) {
|
||||
compass.setStructurePos(null);
|
||||
compass.setStructureWorld(getWorld());
|
||||
PacketHandler.INSTANCE.sendToServer(new PacketSendKey(compass));
|
||||
CommonProxy.simpleNetworkWrapper.sendToServer(new MessageToServer(compass));
|
||||
}
|
||||
|
||||
//Proxy Info
|
||||
@@ -61,6 +62,7 @@ public class ClientProxy extends CommonProxy {
|
||||
public void preInit(FMLPreInitializationEvent event) {
|
||||
super.preInit(event);
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
CommonProxy.simpleNetworkWrapper.registerMessage(MessageHandlerOnClient.class, MessageToClient.class, CommonProxy.MESSAGE_TO_CLIENT_ID, Side.CLIENT);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -73,23 +75,22 @@ public class ClientProxy extends CommonProxy {
|
||||
super.postInit(event);
|
||||
}
|
||||
|
||||
@Mod.EventBusSubscriber
|
||||
public static class RegistrationHandler {
|
||||
@SubscribeEvent
|
||||
public static void registerModels(ModelRegistryEvent event) {
|
||||
@SubscribeEvent
|
||||
public static void registerModels(ModelRegistryEvent event) {
|
||||
ModItems.registerModels();
|
||||
}
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
public void onModelRegistry(ModelRegistryEvent event) {
|
||||
registerModel(ModItems.ENDER_COMPASS);
|
||||
registerModel(ModItems.VILLAGE_COMPASS);
|
||||
registerModel(ModItems.FORTRESS_COMPASS);
|
||||
registerModel(ModItems.MONUMENT_COMPASS);
|
||||
}
|
||||
|
||||
private void registerModel(ItemCompassBase compass) {
|
||||
compass.addPropertyOverride(new ResourceLocation(compass.assetTag), new AngleGetter(compass));
|
||||
ModelLoader.setCustomModelResourceLocation(compass, 0, new ModelResourceLocation(FindYourWay.modId + ":" + compass.getUnlocalizedName(), "inventory"));
|
||||
compass.addPropertyOverride(new ResourceLocation("angle"), new AngleGetter());
|
||||
ModelLoader.setCustomModelResourceLocation(compass, 0, new ModelResourceLocation(FindYourWay.modId + ":" + compass.getUnlocalizedName()));
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
@@ -102,4 +103,4 @@ public class ClientProxy extends CommonProxy {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -9,7 +9,13 @@ import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.yseven.findyourway.Network.PacketHandler;
|
||||
import net.minecraftforge.fml.common.network.NetworkRegistry;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.yseven.findyourway.Network.MessageHandlerOnServer;
|
||||
import net.yseven.findyourway.Network.MessageHandlerOnServerDummy;
|
||||
import net.yseven.findyourway.Network.MessageToClient;
|
||||
import net.yseven.findyourway.Network.MessageToServer;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
import net.yseven.findyourway.item.ModItems;
|
||||
|
||||
@@ -18,14 +24,21 @@ import java.util.ArrayList;
|
||||
@Mod.EventBusSubscriber
|
||||
public class CommonProxy {
|
||||
|
||||
public static ArrayList<ItemCompassBase> compassList = new ArrayList<>();
|
||||
public static ArrayList<ItemCompassBase> compassList = new ArrayList<ItemCompassBase>();
|
||||
public static SimpleNetworkWrapper simpleNetworkWrapper;
|
||||
|
||||
public static final byte MESSAGE_TO_SERVER_ID = 71;
|
||||
public static final byte MESSAGE_TO_CLIENT_ID = 72;
|
||||
|
||||
public void preInit(FMLPreInitializationEvent event) {
|
||||
ModItems.init();
|
||||
PacketHandler.registerMessages(FindYourWay.modId);
|
||||
|
||||
simpleNetworkWrapper = NetworkRegistry.INSTANCE.newSimpleChannel(FindYourWay.modId);
|
||||
simpleNetworkWrapper.registerMessage(MessageHandlerOnServer.class, MessageToServer.class, MESSAGE_TO_SERVER_ID, Side.SERVER);
|
||||
simpleNetworkWrapper.registerMessage(MessageHandlerOnServerDummy.class, MessageToClient.class, MESSAGE_TO_CLIENT_ID, Side.SERVER);
|
||||
}
|
||||
|
||||
public void init(FMLInitializationEvent event) {
|
||||
public void init(FMLInitializationEvent event) {
|
||||
|
||||
}
|
||||
|
||||
@@ -33,12 +46,12 @@ public class CommonProxy {
|
||||
|
||||
}
|
||||
|
||||
|
||||
@SubscribeEvent
|
||||
public static void registerItems(RegistryEvent.Register<Item> event) {
|
||||
event.getRegistry().registerAll(
|
||||
ModItems.ENDER_COMPASS
|
||||
);
|
||||
event.getRegistry().register(ModItems.ENDER_COMPASS);
|
||||
event.getRegistry().register(ModItems.VILLAGE_COMPASS);
|
||||
event.getRegistry().register(ModItems.FORTRESS_COMPASS);
|
||||
event.getRegistry().register(ModItems.MONUMENT_COMPASS);
|
||||
}
|
||||
|
||||
public static boolean containsCompass(IInventory inventory, ItemCompassBase compass) {
|
||||
@@ -55,6 +68,8 @@ public class CommonProxy {
|
||||
switch (compass.getStructureType()){
|
||||
case "Stronghold": return 1;
|
||||
case "Village": return 2;
|
||||
case "Fortress": return 3;
|
||||
case "Monument": return 4;
|
||||
default: return 0;
|
||||
}
|
||||
}
|
||||
@@ -63,6 +78,8 @@ public class CommonProxy {
|
||||
switch (id) {
|
||||
case 1: return ModItems.ENDER_COMPASS;
|
||||
case 2: return ModItems.VILLAGE_COMPASS;
|
||||
case 3: return ModItems.FORTRESS_COMPASS;
|
||||
case 4: return ModItems.MONUMENT_COMPASS;
|
||||
default:
|
||||
ItemCompassBase ERROR_COMPASS = new ItemCompassBase("error", "");
|
||||
return ERROR_COMPASS;
|
||||
|
@@ -12,20 +12,16 @@ import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper;
|
||||
public class FindYourWay {
|
||||
public static final String modId = "findyourway";
|
||||
public static final String name = "Find Your Way";
|
||||
public static final String version = "1.0.0-beta";
|
||||
public static final String version = "1.0.0";
|
||||
|
||||
@Mod.Instance(modId)
|
||||
public static FindYourWay instance;
|
||||
|
||||
@SidedProxy(serverSide = "net.yseven.findyourway.CommonProxy", clientSide = "net.yseven.findyourway.Client.ClientProxy")
|
||||
public static CommonProxy proxy;
|
||||
public static SimpleNetworkWrapper network;
|
||||
|
||||
@Mod.EventHandler
|
||||
public void preInit(FMLPreInitializationEvent event) {
|
||||
System.out.println(name + " is loading!");
|
||||
System.out.println("FIND YOUR WAY TEST LINE -------------------------------------- TEST");
|
||||
|
||||
proxy.preInit(event);
|
||||
}
|
||||
|
||||
|
@@ -0,0 +1,31 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
|
||||
public class MessageHandlerOnClient implements IMessageHandler<MessageToClient, IMessage> {
|
||||
|
||||
public IMessage onMessage(final MessageToClient message, MessageContext ctx) {
|
||||
if (ctx.side != Side.CLIENT) {
|
||||
System.err.println("MessageToClient received on wrong side: " + ctx.side);
|
||||
return null;
|
||||
}
|
||||
if(!message.isMessageIsValid()) {
|
||||
System.err.println("MessageToClient is not valid: " + message.toString());
|
||||
return null;
|
||||
}
|
||||
|
||||
Minecraft minecraft = Minecraft.getMinecraft();
|
||||
minecraft.addScheduledTask(() -> processMessage(message.getCompass(), message.getStructurePos()));
|
||||
return null;
|
||||
}
|
||||
|
||||
private void processMessage(ItemCompassBase compass, BlockPos pos) {
|
||||
compass.setStructurePos(pos);
|
||||
}
|
||||
}
|
@@ -0,0 +1,49 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.WorldServer;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.yseven.findyourway.CommonProxy;
|
||||
|
||||
public class MessageHandlerOnServer implements IMessageHandler<MessageToServer, IMessage> {
|
||||
public IMessage onMessage(final MessageToServer message, MessageContext ctx) {
|
||||
if(ctx.side != Side.SERVER) {
|
||||
System.err.println("MessageToServer received on wrong side: " + ctx.side);
|
||||
return null;
|
||||
}
|
||||
if(!message.isMessageIsValid()) {
|
||||
System.err.println("MessageToServer is not valid: " + message.toString());
|
||||
}
|
||||
|
||||
final EntityPlayerMP sendingPlayer = ctx.getServerHandler().player;
|
||||
if(sendingPlayer == null) {
|
||||
System.err.println("EntityPlayerMP was null MessageToServer was received!");
|
||||
return null;
|
||||
}
|
||||
final WorldServer playerWorldServer = sendingPlayer.getServerWorld();
|
||||
playerWorldServer.addScheduledTask(() -> processMessage(message, sendingPlayer));
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
private void processMessage(MessageToServer message, EntityPlayerMP sendingPlayer) {
|
||||
int dimension = sendingPlayer.dimension;
|
||||
WorldServer world = (WorldServer)sendingPlayer.world;
|
||||
BlockPos structurePos;
|
||||
|
||||
if(world.getChunkProvider().getNearestStructurePos(world, message.getStructureType(), sendingPlayer.getPosition(), true) != null) {
|
||||
structurePos = world.getChunkProvider().getNearestStructurePos(world, message.getStructureType(), sendingPlayer.getPosition(), true);
|
||||
} else {
|
||||
structurePos = new BlockPos(0, 0, 0);
|
||||
}
|
||||
|
||||
MessageToClient msg = new MessageToClient(structurePos, message.getCompass());
|
||||
if (dimension == sendingPlayer.dimension) {
|
||||
CommonProxy.simpleNetworkWrapper.sendTo(msg, sendingPlayer);
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,12 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||
|
||||
public class MessageHandlerOnServerDummy implements IMessageHandler<MessageToClient, IMessage> {
|
||||
public IMessage onMessage(final MessageToClient message, MessageContext ctx) {
|
||||
System.err.println("TargetEffectMessageToClient received on wrong side:" + ctx.side);
|
||||
return null;
|
||||
}
|
||||
}
|
@@ -0,0 +1,63 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
|
||||
public class MessageToClient implements IMessage {
|
||||
private ItemCompassBase compass;
|
||||
private BlockPos structurePos;
|
||||
private boolean messageIsValid;
|
||||
|
||||
public boolean isMessageIsValid() {
|
||||
return messageIsValid;
|
||||
}
|
||||
|
||||
public ItemCompassBase getCompass() {
|
||||
return compass;
|
||||
}
|
||||
|
||||
public BlockPos getStructurePos() {
|
||||
return structurePos;
|
||||
}
|
||||
|
||||
public MessageToClient() {
|
||||
messageIsValid = false;
|
||||
}
|
||||
|
||||
public MessageToClient(BlockPos pos, ItemCompassBase compassBase) {
|
||||
structurePos = pos;
|
||||
compass = compassBase;
|
||||
messageIsValid = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fromBytes(ByteBuf buf) {
|
||||
try {
|
||||
double x = buf.readDouble();
|
||||
double y = buf.readDouble();
|
||||
double z = buf.readDouble();
|
||||
structurePos = new BlockPos(x, y, z);
|
||||
compass = ItemCompassBase.fromBytes(buf);
|
||||
} catch (IndexOutOfBoundsException ioe) {
|
||||
System.err.println("Error while reading MessageToClient: " + ioe);
|
||||
return;
|
||||
}
|
||||
messageIsValid = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void toBytes(ByteBuf buf) {
|
||||
if(!isMessageIsValid()) return;
|
||||
buf.writeDouble(structurePos.getX());
|
||||
buf.writeDouble(structurePos.getY());
|
||||
buf.writeDouble(structurePos.getZ());
|
||||
compass.toBytes(buf);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Structure Position is: " + structurePos.toString() + "!";
|
||||
}
|
||||
}
|
@@ -0,0 +1,55 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
|
||||
public class MessageToServer implements IMessage {
|
||||
private ItemCompassBase compass;
|
||||
private String structureType;
|
||||
private boolean messageIsValid;
|
||||
|
||||
public MessageToServer(ItemCompassBase compassItem) {
|
||||
compass = compassItem;
|
||||
messageIsValid = true;
|
||||
}
|
||||
|
||||
public String getStructureType() {
|
||||
return structureType;
|
||||
}
|
||||
|
||||
public ItemCompassBase getCompass() {
|
||||
return compass;
|
||||
}
|
||||
|
||||
public boolean isMessageIsValid() {
|
||||
return messageIsValid;
|
||||
}
|
||||
|
||||
public MessageToServer() {
|
||||
messageIsValid = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fromBytes(ByteBuf buf) {
|
||||
try {
|
||||
compass = ItemCompassBase.fromBytes(buf);
|
||||
} catch (IndexOutOfBoundsException ioe) {
|
||||
System.err.println("Exception while reading MessageToServer: " + ioe);
|
||||
return;
|
||||
}
|
||||
structureType = compass.getStructureType();
|
||||
messageIsValid = true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void toBytes(ByteBuf buf){
|
||||
if(!isMessageIsValid()) return;
|
||||
compass.toBytes(buf);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "MessageToServer[compass=" + String.valueOf(compass) + ", structurePos=]";
|
||||
}
|
||||
}
|
@@ -1,41 +0,0 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||
import net.yseven.findyourway.Client.ClientProxy;
|
||||
import net.yseven.findyourway.CommonProxy;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
|
||||
public class PacketGetKey implements IMessage, IMessageHandler<PacketGetKey, IMessage> {
|
||||
private BlockPos structurePos;
|
||||
private ItemCompassBase compass;
|
||||
|
||||
public PacketGetKey() {}
|
||||
|
||||
public PacketGetKey(BlockPos pos, int id) {
|
||||
structurePos = pos;
|
||||
compass = CommonProxy.getCompassId(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void toBytes(ByteBuf buf) {
|
||||
buf.writeLong(structurePos.toLong());
|
||||
buf.writeInt(CommonProxy.setCompassId(compass));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fromBytes(ByteBuf buf) {
|
||||
structurePos = BlockPos.fromLong(buf.readLong());
|
||||
compass = CommonProxy.getCompassId(buf.readInt());
|
||||
}
|
||||
|
||||
@Override
|
||||
public IMessage onMessage(PacketGetKey message, MessageContext ctx) {
|
||||
//Client Code
|
||||
ClientProxy.getMinecraft().addScheduledTask(() -> ClientProxy.setStructurePos(message.compass, message.structurePos));
|
||||
return null;
|
||||
}
|
||||
}
|
@@ -1,30 +0,0 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import net.minecraftforge.fml.common.network.NetworkRegistry;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
|
||||
@SuppressWarnings("WeakerAccess")
|
||||
public class PacketHandler {
|
||||
private static int packetId = 0;
|
||||
|
||||
public static SimpleNetworkWrapper INSTANCE = null;
|
||||
|
||||
public PacketHandler() {
|
||||
}
|
||||
|
||||
public static int nextID() {
|
||||
return packetId++;
|
||||
}
|
||||
|
||||
public static void registerMessages(String channelName) {
|
||||
INSTANCE = NetworkRegistry.INSTANCE.newSimpleChannel(channelName);
|
||||
registerMessages();
|
||||
}
|
||||
|
||||
public static void registerMessages() {
|
||||
// Register messages which are sent from the client to the server here:
|
||||
INSTANCE.registerMessage(PacketSendKey.Handler.class, PacketSendKey.class, nextID(), Side.SERVER);
|
||||
INSTANCE.registerMessage(PacketGetKey.class, PacketGetKey.class, nextID(), Side.CLIENT);
|
||||
}
|
||||
}
|
@@ -1,48 +0,0 @@
|
||||
package net.yseven.findyourway.Network;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.entity.player.EntityPlayerMP;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.WorldServer;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
|
||||
import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
|
||||
import net.yseven.findyourway.CommonProxy;
|
||||
import net.yseven.findyourway.item.ItemCompassBase;
|
||||
|
||||
public class PacketSendKey implements IMessage {
|
||||
private BlockPos structurePos;
|
||||
private final ItemCompassBase compass;
|
||||
|
||||
@Override
|
||||
public void fromBytes(ByteBuf buf) {}
|
||||
|
||||
@Override
|
||||
public void toBytes(ByteBuf buf) {}
|
||||
|
||||
public PacketSendKey(ItemCompassBase compassBase) {
|
||||
compass = compassBase;
|
||||
}
|
||||
|
||||
public static class Handler implements IMessageHandler<PacketSendKey, IMessage> {
|
||||
@Override
|
||||
public IMessage onMessage(PacketSendKey message, MessageContext ctx) {
|
||||
final EntityPlayerMP player = ctx.getServerHandler().player;
|
||||
if (CommonProxy.containsCompass(player.inventory, message.compass)) {
|
||||
final WorldServer world = (WorldServer) player.world;
|
||||
final int compassId = CommonProxy.setCompassId(message.compass);
|
||||
final String structureType = message.compass.getStructureType();
|
||||
world.addScheduledTask(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
BlockPos pos = world.getChunkProvider().getNearestStructurePos(world, structureType, new BlockPos(player), true);
|
||||
if (pos != null) {
|
||||
PacketHandler.INSTANCE.sendTo(new PacketGetKey(message.structurePos, compassId), player);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,17 +0,0 @@
|
||||
package net.yseven.findyourway;
|
||||
|
||||
import net.minecraft.entity.player.InventoryPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
public class Util {
|
||||
public static boolean checkInventoryForCompass(InventoryPlayer inventory, Item compass) {
|
||||
for(int x = 0; x < inventory.getSizeInventory(); x++) {
|
||||
ItemStack stack = inventory.getStackInSlot(x);
|
||||
if(!stack.isEmpty() && stack.getItem() == compass) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
@@ -1,5 +1,6 @@
|
||||
package net.yseven.findyourway.item;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
@@ -10,7 +11,9 @@ import net.minecraft.util.EnumActionResult;
|
||||
import net.minecraft.util.EnumHand;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.client.event.ModelRegistryEvent;
|
||||
import net.minecraftforge.client.model.ModelLoader;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
import net.yseven.findyourway.Client.ClientProxy;
|
||||
@@ -20,10 +23,10 @@ import net.yseven.findyourway.FindYourWay;
|
||||
import javax.annotation.Nonnull;
|
||||
|
||||
public class ItemCompassBase extends Item {
|
||||
private final String structureType;
|
||||
private String structureType;
|
||||
private BlockPos structurePos;
|
||||
private World structureWorld;
|
||||
public final String assetTag;
|
||||
private final int ItemCompassID;
|
||||
|
||||
public ItemCompassBase(String name, String structureName) {
|
||||
setUnlocalizedName(FindYourWay.modId + "." + name);
|
||||
@@ -31,30 +34,60 @@ public class ItemCompassBase extends Item {
|
||||
structureType = structureName;
|
||||
setCreativeTab(CreativeTabs.TOOLS);
|
||||
setMaxStackSize(1);
|
||||
assetTag = name + "_angle";
|
||||
CommonProxy.compassList.add(this);
|
||||
ItemCompassID = CommonProxy.compassList.indexOf(this);
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
return getUnlocalizedName();
|
||||
}
|
||||
|
||||
//getters
|
||||
|
||||
public String getStructureType() {
|
||||
return structureType;
|
||||
}
|
||||
|
||||
public void setStructurePos(BlockPos pos) {
|
||||
structurePos = pos;
|
||||
}
|
||||
|
||||
public BlockPos getStructurePos() {
|
||||
return structurePos;
|
||||
}
|
||||
public World getStructureWorld() {
|
||||
return structureWorld;
|
||||
}
|
||||
public int getCompassID() {
|
||||
return ItemCompassID;
|
||||
}
|
||||
|
||||
//setters
|
||||
|
||||
public void setStructureType(String type) {
|
||||
structureType= type;
|
||||
}
|
||||
public void setStructurePos(BlockPos pos) {
|
||||
structurePos = pos;
|
||||
}
|
||||
public void setStructureWorld(World world) {
|
||||
structureWorld = world;
|
||||
}
|
||||
|
||||
public World getStructureWorld() {
|
||||
return structureWorld;
|
||||
//netcode implementation
|
||||
|
||||
public void toBytes(ByteBuf buf) {
|
||||
if(CommonProxy.compassList.contains(this)) {
|
||||
buf.writeInt(ItemCompassID);
|
||||
}
|
||||
}
|
||||
|
||||
public static ItemCompassBase fromBytes(ByteBuf buf) {
|
||||
int ID = buf.readInt();
|
||||
for(int i = 0; i <= CommonProxy.compassList.size(); i++) {
|
||||
if(ID == CommonProxy.compassList.get(i).getCompassID()) return CommonProxy.compassList.get(i);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
//Client Code (mostly registration)
|
||||
@SideOnly(Side.CLIENT)
|
||||
@SubscribeEvent
|
||||
public void registerItemModel() {
|
||||
ModelLoader.setCustomModelResourceLocation(this, 0, new ModelResourceLocation(getRegistryName(), "inventory"));
|
||||
}
|
||||
|
@@ -1,20 +1,30 @@
|
||||
package net.yseven.findyourway.item;
|
||||
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
import net.yseven.findyourway.FindYourWay;
|
||||
|
||||
import static net.yseven.findyourway.FindYourWay.modId;
|
||||
|
||||
public class ModItems {
|
||||
public static ItemCompassBase ENDER_COMPASS;
|
||||
public static ItemCompassBase VILLAGE_COMPASS;
|
||||
public static ItemCompassBase FORTRESS_COMPASS;
|
||||
public static ItemCompassBase MONUMENT_COMPASS;
|
||||
|
||||
public static void init(){
|
||||
ENDER_COMPASS = new ItemCompassBase("ender_compass", "Stronghold");
|
||||
VILLAGE_COMPASS = new ItemCompassBase("village_compass", "Village");
|
||||
FORTRESS_COMPASS = new ItemCompassBase("fortress_compass", "Fortress");
|
||||
MONUMENT_COMPASS = new ItemCompassBase("monument_compass", "Monument");
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public static void registerModels() {
|
||||
ENDER_COMPASS.registerItemModel();
|
||||
VILLAGE_COMPASS.registerItemModel();
|
||||
FORTRESS_COMPASS.registerItemModel();
|
||||
MONUMENT_COMPASS.registerItemModel();
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,2 +1,5 @@
|
||||
# Items
|
||||
item.ender_compass.name=Ender Compass
|
||||
item.findyourway.ender_compass.name=Ender Compass
|
||||
item.findyourway.village_compass.name=Village Compass
|
||||
item.findyourway.fortress_compass.name=Fortress Compass
|
||||
item.findyourway.monument_compass.name=Monument Compass
|
@@ -1,41 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass"
|
||||
},
|
||||
"overrides": [
|
||||
{ "predicate": { "ender_compass_angle": 0.000000 }, "model": "findyourway:item/ender_compass" },
|
||||
{ "predicate": { "ender_compass_angle": 0.015625 }, "model": "findyourway:item/ender_compass_17" },
|
||||
{ "predicate": { "ender_compass_angle": 0.046875 }, "model": "findyourway:item/ender_compass_18" },
|
||||
{ "predicate": { "ender_compass_angle": 0.078125 }, "model": "findyourway:item/ender_compass_19" },
|
||||
{ "predicate": { "ender_compass_angle": 0.109375 }, "model": "findyourway:item/ender_compass_20" },
|
||||
{ "predicate": { "ender_compass_angle": 0.140625 }, "model": "findyourway:item/ender_compass_21" },
|
||||
{ "predicate": { "ender_compass_angle": 0.171875 }, "model": "findyourway:item/ender_compass_22" },
|
||||
{ "predicate": { "ender_compass_angle": 0.203125 }, "model": "findyourway:item/ender_compass_23" },
|
||||
{ "predicate": { "ender_compass_angle": 0.234375 }, "model": "findyourway:item/ender_compass_24" },
|
||||
{ "predicate": { "ender_compass_angle": 0.265625 }, "model": "findyourway:item/ender_compass_25" },
|
||||
{ "predicate": { "ender_compass_angle": 0.296875 }, "model": "findyourway:item/ender_compass_26" },
|
||||
{ "predicate": { "ender_compass_angle": 0.328125 }, "model": "findyourway:item/ender_compass_27" },
|
||||
{ "predicate": { "ender_compass_angle": 0.359375 }, "model": "findyourway:item/ender_compass_28" },
|
||||
{ "predicate": { "ender_compass_angle": 0.390625 }, "model": "findyourway:item/ender_compass_29" },
|
||||
{ "predicate": { "ender_compass_angle": 0.421875 }, "model": "findyourway:item/ender_compass_30" },
|
||||
{ "predicate": { "ender_compass_angle": 0.453125 }, "model": "findyourway:item/ender_compass_31" },
|
||||
{ "predicate": { "ender_compass_angle": 0.484375 }, "model": "findyourway:item/ender_compass_00" },
|
||||
{ "predicate": { "ender_compass_angle": 0.515625 }, "model": "findyourway:item/ender_compass_01" },
|
||||
{ "predicate": { "ender_compass_angle": 0.546875 }, "model": "findyourway:item/ender_compass_02" },
|
||||
{ "predicate": { "ender_compass_angle": 0.578125 }, "model": "findyourway:item/ender_compass_03" },
|
||||
{ "predicate": { "ender_compass_angle": 0.609375 }, "model": "findyourway:item/ender_compass_04" },
|
||||
{ "predicate": { "ender_compass_angle": 0.640625 }, "model": "findyourway:item/ender_compass_05" },
|
||||
{ "predicate": { "ender_compass_angle": 0.671875 }, "model": "findyourway:item/ender_compass_06" },
|
||||
{ "predicate": { "ender_compass_angle": 0.703125 }, "model": "findyourway:item/ender_compass_07" },
|
||||
{ "predicate": { "ender_compass_angle": 0.734375 }, "model": "findyourway:item/ender_compass_08" },
|
||||
{ "predicate": { "ender_compass_angle": 0.765625 }, "model": "findyourway:item/ender_compass_09" },
|
||||
{ "predicate": { "ender_compass_angle": 0.796875 }, "model": "findyourway:item/ender_compass_10" },
|
||||
{ "predicate": { "ender_compass_angle": 0.828125 }, "model": "findyourway:item/ender_compass_11" },
|
||||
{ "predicate": { "ender_compass_angle": 0.859375 }, "model": "findyourway:item/ender_compass_12" },
|
||||
{ "predicate": { "ender_compass_angle": 0.890625 }, "model": "findyourway:item/ender_compass_13" },
|
||||
{ "predicate": { "ender_compass_angle": 0.921875 }, "model": "findyourway:item/ender_compass_14" },
|
||||
{ "predicate": { "ender_compass_angle": 0.953125 }, "model": "findyourway:item/ender_compass_15" },
|
||||
{ "predicate": { "ender_compass_angle": 0.984375 }, "model": "findyourway:item/ender_compass" }
|
||||
]
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_04"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_05"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_06"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_07"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_08"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_09"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_10"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_11"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_12"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_13"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_14"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_15"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_04"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_17"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_18"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_19"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_20"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_21"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_22"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_23"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_24"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_25"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_26"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_27"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_28"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_29"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_30"
|
||||
}
|
||||
}
|
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_31"
|
||||
}
|
||||
}
|
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_16"
|
||||
},
|
||||
"defaults": {
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_16"
|
||||
}
|
||||
},
|
||||
"variants": {
|
||||
"normal": [{
|
||||
}],
|
||||
"inventory": [{
|
||||
}]
|
||||
},
|
||||
"overrides": [
|
||||
{ "predicate": { "angle": 0.000000 }, "model": "findyourway:item/item.findyourway.ender_compass_16" },
|
||||
{ "predicate": { "angle": 0.015625 }, "model": "findyourway:item/item.findyourway.ender_compass_17" },
|
||||
{ "predicate": { "angle": 0.046875 }, "model": "findyourway:item/item.findyourway.ender_compass_18" },
|
||||
{ "predicate": { "angle": 0.078125 }, "model": "findyourway:item/item.findyourway.ender_compass_19" },
|
||||
{ "predicate": { "angle": 0.109375 }, "model": "findyourway:item/item.findyourway.ender_compass_20" },
|
||||
{ "predicate": { "angle": 0.140625 }, "model": "findyourway:item/item.findyourway.ender_compass_21" },
|
||||
{ "predicate": { "angle": 0.171875 }, "model": "findyourway:item/item.findyourway.ender_compass_22" },
|
||||
{ "predicate": { "angle": 0.203125 }, "model": "findyourway:item/item.findyourway.ender_compass_23" },
|
||||
{ "predicate": { "angle": 0.234375 }, "model": "findyourway:item/item.findyourway.ender_compass_24" },
|
||||
{ "predicate": { "angle": 0.265625 }, "model": "findyourway:item/item.findyourway.ender_compass_25" },
|
||||
{ "predicate": { "angle": 0.296875 }, "model": "findyourway:item/item.findyourway.ender_compass_26" },
|
||||
{ "predicate": { "angle": 0.328125 }, "model": "findyourway:item/item.findyourway.ender_compass_27" },
|
||||
{ "predicate": { "angle": 0.359375 }, "model": "findyourway:item/item.findyourway.ender_compass_28" },
|
||||
{ "predicate": { "angle": 0.390625 }, "model": "findyourway:item/item.findyourway.ender_compass_29" },
|
||||
{ "predicate": { "angle": 0.421875 }, "model": "findyourway:item/item.findyourway.ender_compass_30" },
|
||||
{ "predicate": { "angle": 0.453125 }, "model": "findyourway:item/item.findyourway.ender_compass_31" },
|
||||
{ "predicate": { "angle": 0.484375 }, "model": "findyourway:item/item.findyourway.ender_compass_00" },
|
||||
{ "predicate": { "angle": 0.515625 }, "model": "findyourway:item/item.findyourway.ender_compass_01" },
|
||||
{ "predicate": { "angle": 0.546875 }, "model": "findyourway:item/item.findyourway.ender_compass_02" },
|
||||
{ "predicate": { "angle": 0.578125 }, "model": "findyourway:item/item.findyourway.ender_compass_03" },
|
||||
{ "predicate": { "angle": 0.609375 }, "model": "findyourway:item/item.findyourway.ender_compass_04" },
|
||||
{ "predicate": { "angle": 0.640625 }, "model": "findyourway:item/item.findyourway.ender_compass_05" },
|
||||
{ "predicate": { "angle": 0.671875 }, "model": "findyourway:item/item.findyourway.ender_compass_06" },
|
||||
{ "predicate": { "angle": 0.703125 }, "model": "findyourway:item/item.findyourway.ender_compass_07" },
|
||||
{ "predicate": { "angle": 0.734375 }, "model": "findyourway:item/item.findyourway.ender_compass_08" },
|
||||
{ "predicate": { "angle": 0.765625 }, "model": "findyourway:item/item.findyourway.ender_compass_09" },
|
||||
{ "predicate": { "angle": 0.796875 }, "model": "findyourway:item/item.findyourway.ender_compass_10" },
|
||||
{ "predicate": { "angle": 0.828125 }, "model": "findyourway:item/item.findyourway.ender_compass_11" },
|
||||
{ "predicate": { "angle": 0.859375 }, "model": "findyourway:item/item.findyourway.ender_compass_12" },
|
||||
{ "predicate": { "angle": 0.890625 }, "model": "findyourway:item/item.findyourway.ender_compass_13" },
|
||||
{ "predicate": { "angle": 0.921875 }, "model": "findyourway:item/item.findyourway.ender_compass_14" },
|
||||
{ "predicate": { "angle": 0.953125 }, "model": "findyourway:item/item.findyourway.ender_compass_15" },
|
||||
{ "predicate": { "angle": 0.984375 }, "model": "findyourway:item/item.findyourway.ender_compass_16" }
|
||||
]
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_00"
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_00"
|
||||
"layer0": "findyourway:items/ender_compass_01"
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_01"
|
||||
"layer0": "findyourway:items/ender_compass_02"
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_02"
|
||||
"layer0": "findyourway:items/ender_compass_03"
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:item/ender_compass_03"
|
||||
"layer0": "findyourway:items/ender_compass_04"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_05"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_06"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_07"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_08"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_09"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_10"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_11"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_12"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_13"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_14"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_15"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_16"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_17"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_18"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_19"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_20"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_21"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_22"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_23"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_24"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_25"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_26"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_27"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_28"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_29"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_30"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/ender_compass_31"
|
||||
}
|
||||
}
|
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_16"
|
||||
},
|
||||
"defaults": {
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_16"
|
||||
}
|
||||
},
|
||||
"variants": {
|
||||
"normal": [{
|
||||
}],
|
||||
"inventory": [{
|
||||
}]
|
||||
},
|
||||
"overrides": [
|
||||
{ "predicate": { "angle": 0.000000 }, "model": "findyourway:item/item.findyourway.fortress_compass_16" },
|
||||
{ "predicate": { "angle": 0.015625 }, "model": "findyourway:item/item.findyourway.fortress_compass_17" },
|
||||
{ "predicate": { "angle": 0.046875 }, "model": "findyourway:item/item.findyourway.fortress_compass_18" },
|
||||
{ "predicate": { "angle": 0.078125 }, "model": "findyourway:item/item.findyourway.fortress_compass_19" },
|
||||
{ "predicate": { "angle": 0.109375 }, "model": "findyourway:item/item.findyourway.fortress_compass_20" },
|
||||
{ "predicate": { "angle": 0.140625 }, "model": "findyourway:item/item.findyourway.fortress_compass_21" },
|
||||
{ "predicate": { "angle": 0.171875 }, "model": "findyourway:item/item.findyourway.fortress_compass_22" },
|
||||
{ "predicate": { "angle": 0.203125 }, "model": "findyourway:item/item.findyourway.fortress_compass_23" },
|
||||
{ "predicate": { "angle": 0.234375 }, "model": "findyourway:item/item.findyourway.fortress_compass_24" },
|
||||
{ "predicate": { "angle": 0.265625 }, "model": "findyourway:item/item.findyourway.fortress_compass_25" },
|
||||
{ "predicate": { "angle": 0.296875 }, "model": "findyourway:item/item.findyourway.fortress_compass_26" },
|
||||
{ "predicate": { "angle": 0.328125 }, "model": "findyourway:item/item.findyourway.fortress_compass_27" },
|
||||
{ "predicate": { "angle": 0.359375 }, "model": "findyourway:item/item.findyourway.fortress_compass_28" },
|
||||
{ "predicate": { "angle": 0.390625 }, "model": "findyourway:item/item.findyourway.fortress_compass_29" },
|
||||
{ "predicate": { "angle": 0.421875 }, "model": "findyourway:item/item.findyourway.fortress_compass_30" },
|
||||
{ "predicate": { "angle": 0.453125 }, "model": "findyourway:item/item.findyourway.fortress_compass_31" },
|
||||
{ "predicate": { "angle": 0.484375 }, "model": "findyourway:item/item.findyourway.fortress_compass_00" },
|
||||
{ "predicate": { "angle": 0.515625 }, "model": "findyourway:item/item.findyourway.fortress_compass_01" },
|
||||
{ "predicate": { "angle": 0.546875 }, "model": "findyourway:item/item.findyourway.fortress_compass_02" },
|
||||
{ "predicate": { "angle": 0.578125 }, "model": "findyourway:item/item.findyourway.fortress_compass_03" },
|
||||
{ "predicate": { "angle": 0.609375 }, "model": "findyourway:item/item.findyourway.fortress_compass_04" },
|
||||
{ "predicate": { "angle": 0.640625 }, "model": "findyourway:item/item.findyourway.fortress_compass_05" },
|
||||
{ "predicate": { "angle": 0.671875 }, "model": "findyourway:item/item.findyourway.fortress_compass_06" },
|
||||
{ "predicate": { "angle": 0.703125 }, "model": "findyourway:item/item.findyourway.fortress_compass_07" },
|
||||
{ "predicate": { "angle": 0.734375 }, "model": "findyourway:item/item.findyourway.fortress_compass_08" },
|
||||
{ "predicate": { "angle": 0.765625 }, "model": "findyourway:item/item.findyourway.fortress_compass_09" },
|
||||
{ "predicate": { "angle": 0.796875 }, "model": "findyourway:item/item.findyourway.fortress_compass_10" },
|
||||
{ "predicate": { "angle": 0.828125 }, "model": "findyourway:item/item.findyourway.fortress_compass_11" },
|
||||
{ "predicate": { "angle": 0.859375 }, "model": "findyourway:item/item.findyourway.fortress_compass_12" },
|
||||
{ "predicate": { "angle": 0.890625 }, "model": "findyourway:item/item.findyourway.fortress_compass_13" },
|
||||
{ "predicate": { "angle": 0.921875 }, "model": "findyourway:item/item.findyourway.fortress_compass_14" },
|
||||
{ "predicate": { "angle": 0.953125 }, "model": "findyourway:item/item.findyourway.fortress_compass_15" },
|
||||
{ "predicate": { "angle": 0.984375 }, "model": "findyourway:item/item.findyourway.fortress_compass_16" }
|
||||
]
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_00"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_01"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_02"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_03"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_04"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_05"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_06"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_07"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_08"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_09"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_10"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_11"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_12"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_13"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_14"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_15"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_16"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_17"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_18"
|
||||
}
|
||||
}
|
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "findyourway:items/fortress_compass_19"
|
||||
}
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user