// Path: src/main/java/com/techjar/vivecraftforge/VivecraftForge.java
// @Mod(modid = "VivecraftForge", name = "Vivecraft Forge Extensions", version = "@VERSION@", dependencies = "required-after:Forge@[10.13.4.1558,)", acceptableRemoteVersions = "@RAW_VERSION@.*")
// public class VivecraftForge {
// 	@Instance("VivecraftForge")
// 	public static VivecraftForge instance;
// 	
// 	@SidedProxy(clientSide = "com.techjar.vivecraftforge.proxy.ProxyClient", serverSide = "com.techjar.vivecraftforge.proxy.ProxyServer")
// 	public static ProxyCommon proxy;
// 
// 	public static SimpleNetworkWrapper networkVersion;
// 	//public static SimpleNetworkWrapper networkFreeMove; // currently not used
// 	public static SimpleNetworkWrapper networkLegacy;
// 	public static SimpleNetworkWrapper networkOK;
// 	
// 	public static VivecraftForgeChannelHandler packetPipeline;
// 
// 	@EventHandler
// 	public void preInit(FMLPreInitializationEvent event) {
// 		Configuration config = new Configuration(event.getSuggestedConfigurationFile());
// 		config.load();
// 		Config.vrCreeperSwellDistance = config.get(Configuration.CATEGORY_GENERAL, "vrCreeperSwellDistance", 1.75, "Distance at which creepers swell and explode for VR players. Default: 1.75").getDouble(1.75D);
// 		if (config.hasChanged()) config.save();
// 	}
// 
// 	@EventHandler
// 	public void load(FMLInitializationEvent event) {
// 		packetPipeline = VivecraftForgeChannelHandler.init();
// 		proxy.registerNetworkChannels();
// 		proxy.registerEventHandlers();
// 		proxy.registerEntities();
// 		proxy.registerRenderers();
// 	}
// 
// 	@EventHandler
// 	public void postInit(FMLPostInitializationEvent event) {
// 		// Stub Method
// 	}
// }


import com.techjar.vivecraftforge.VivecraftForge;
import io.netty.buffer.ByteBuf;
import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
package com.techjar.vivecraftforge.network;



public class ViveMessage implements IMessage {
	public static class Handle implements IMessageHandler<ViveMessage, IMessage> {
		@Override
		public IMessage onMessage(ViveMessage message, MessageContext ctx) {
// Path: src/main/java/com/techjar/vivecraftforge/VivecraftForge.java
// @Mod(modid = "VivecraftForge", name = "Vivecraft Forge Extensions", version = "@VERSION@", dependencies = "required-after:Forge@[10.13.4.1558,)", acceptableRemoteVersions = "@RAW_VERSION@.*")
// public class VivecraftForge {
// 	@Instance("VivecraftForge")
// 	public static VivecraftForge instance;
// 	
// 	@SidedProxy(clientSide = "com.techjar.vivecraftforge.proxy.ProxyClient", serverSide = "com.techjar.vivecraftforge.proxy.ProxyServer")
// 	public static ProxyCommon proxy;
// 
// 	public static SimpleNetworkWrapper networkVersion;
// 	//public static SimpleNetworkWrapper networkFreeMove; // currently not used
// 	public static SimpleNetworkWrapper networkLegacy;
// 	public static SimpleNetworkWrapper networkOK;
// 	
// 	public static VivecraftForgeChannelHandler packetPipeline;
// 
// 	@EventHandler
// 	public void preInit(FMLPreInitializationEvent event) {
// 		Configuration config = new Configuration(event.getSuggestedConfigurationFile());
// 		config.load();
// 		Config.vrCreeperSwellDistance = config.get(Configuration.CATEGORY_GENERAL, "vrCreeperSwellDistance", 1.75, "Distance at which creepers swell and explode for VR players. Default: 1.75").getDouble(1.75D);
// 		if (config.hasChanged()) config.save();
// 	}
// 
// 	@EventHandler
// 	public void load(FMLInitializationEvent event) {
// 		packetPipeline = VivecraftForgeChannelHandler.init();
// 		proxy.registerNetworkChannels();
// 		proxy.registerEventHandlers();
// 		proxy.registerEntities();
// 		proxy.registerRenderers();
// 	}
// 
// 	@EventHandler
// 	public void postInit(FMLPostInitializationEvent event) {
// 		// Stub Method
// 	}
// }


// Path: src/main/java/com/techjar/vivecraftforge/network/ViveMessage.java
import com.techjar.vivecraftforge.VivecraftForge;
import io.netty.buffer.ByteBuf;
import cpw.mods.fml.common.network.ByteBufUtils;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;

package com.techjar.vivecraftforge.network;



public class ViveMessage implements IMessage {
	public static class Handle implements IMessageHandler<ViveMessage, IMessage> {
		@Override
		public IMessage onMessage(ViveMessage message, MessageContext ctx) {
			VivecraftForge.networkOK.sendTo(new ViveMessage("Teleport to your heart's content!"), ctx.getServerHandler().playerEntity);