Skip to content

Instantly share code, notes, and snippets.

View tterrag1098's full-sized avatar

tterrag tterrag1098

View GitHub Profile
package com.enderio.core.common.util;
import io.netty.buffer.ByteBuf;
import lombok.NoArgsConstructor;
import lombok.experimental.UtilityClass;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiNewChat;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.util.ChatComponentText;
public class SpecialFont extends FontRenderer {
private FontRenderer wrapped;
private ItemStack stack = EnderFood.ENDERIOS.getStack();
public SpecialFont(FontRenderer wrapped) {
super(Minecraft.getMinecraft().gameSettings, new ResourceLocation("textures/font/ascii.png"), Minecraft.getMinecraft().renderEngine, false);
this.wrapped = wrapped;
}
@Override
@tterrag1098
tterrag1098 / changelog-auth.gradle
Last active August 29, 2015 14:28 — forked from matthewprenger/changelog-auth.gradle
Jenkins Gradle Changelog Init Script, place this in ~/.gradle/init.d/changelog.gradle on your Jenkins server. Projects can simply call 'project.changelog' to get the changes for the current build.
def buildUrl = System.getenv().BUILD_URL
if (buildUrl != null) {
def auth = "<USER>:<APITOKEN>".getBytes().encodeBase64().toString()
def url = new URL("$buildUrl/api/xml?depth=20").openConnection()
url.setRequestProperty("Authorization", "Basic " + auth)
String data = url.getInputStream().text
def changelog = ""
@tterrag1098
tterrag1098 / ItemOffsetTool.java
Last active August 27, 2015 12:42
V* SHIFTING :D
package team.chisel.item;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
package crazypants.enderio.api.teleport;
import java.util.concurrent.Callable;
import com.google.common.util.concurrent.Callables;
import crazypants.enderio.EnderIO;
import crazypants.enderio.config.Config;
public enum TravelSource {
@tterrag1098
tterrag1098 / CoefficientTable.java
Last active September 25, 2015 18:21
Fourier Stuff
package tterrag.fourier;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
public class CoefficientTable
{
@Getter
@RequiredArgsConstructor
public static class Pair
package com.enderio.core.client.gui.serverlist;
import java.io.Closeable;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Collections;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;

From Zero to modding

  1. Obtain a source distribution from forge's [files][] site. (Look for the Mdk file type, or Src in older 1.8/1.7 versions).
  2. Extract the downloaded source distribution to an empty directory. You should see a bunch of files, and an example mod is placed in src/main/java for you to look at. Only a few of these files are strictly necessary for mod development:
    • build.gradle
    • gradlew (both .bat and .sh)
    • The gradle folder
    • You may reuse these files for all your projects.
  3. Move the files listed above to a new folder, this will be your mod project folder.
public final class ParticleFixer {
public static void addHitEffects(World world, BlockPos pos, EnumFacing side) {
IBlockState state = world.getBlockState(pos);
Block block = state.getBlock();
state = block.getActualState(state, world, pos);
if (block.getRenderType() != -1) {
int i = pos.getX();
int j = pos.getY();
public void download(final ImageType type) {
if (locations.get(type) == MISSING_TEXTURE) {
TextureManager texturemanager = Minecraft.getMinecraft().getTextureManager();
final String filepath = "creations/" + owner.user_id + "/" + type.name() + "/" + owner.id;
final ResourceLocation res = new ResourceLocation(CTBMod.DOMAIN, filepath);
ITextureObject texture = texturemanager.getTexture(res);
if (texture == null) {
downloadExecutor.execute(new Runnable() {