// Path: src/main/java/wecui/obfuscation/Obfuscation.java
// public class Obfuscation implements InitializationFactory {
// 
//     protected WorldEditCUI controller;
//     protected Minecraft minecraft;
// 
//     public Obfuscation(WorldEditCUI controller) {
//         this.controller = controller;
//     }
// 
//     @Override
//     public void initialize() {
//         this.minecraft = this.controller.getMinecraft();
//     }
// 
//     public boolean isMultiplayerWorld() {
//         return true; // TODO - Temprarily until I can figure out the new server thing
//         //return minecraft.l();
//     }
// 
//     /**
//      * Displays a chat message on the screen, if the player is currently playing
//      * @param chat 
//      */
//     public void showChatMessage(String chat) {
//         if (getPlayer() != null) {
//             getPlayer().b(chat);
//         }
//     }
// 
//     public EntityPlayerSP getPlayer() {
//         return getPlayer(minecraft);
//     }
// 
//     public WorldClient getWorld() {
//         return getWorld(minecraft);
//     }
// 
//     public Entity spawnEntity() {
//         Minecraft mc = this.controller.getMinecraft();
// 
//         Entity entity = new RenderEntity(this.controller, getWorld(mc));
//         setEntityPositionToPlayer(mc, entity);
//         getWorld(mc).d(entity);
//         setEntityPositionToPlayer(mc, entity);
//         controller.getDebugger().debug("RenderEntity spawned");
//         return entity;
//     }
// 
//     public static double getPlayerX(EntityPlayerSP player) {
//         return player.t;
//     }
// 
//     public static double getPlayerY(EntityPlayerSP player) {
//         return player.u;
//     }
// 
//     public static double getPlayerZ(EntityPlayerSP player) {
//         return player.v;
//     }
// 
//     public double getPlayerXGuess(float renderTick) {
//         EntityPlayerSP plyr = getPlayer();
//         return plyr.q + ((plyr.t - plyr.q) * renderTick);
//     }
// 
//     public double getPlayerYGuess(float renderTick) {
//         EntityPlayerSP plyr = getPlayer();
//         return plyr.r + ((plyr.u - plyr.r) * renderTick);
//     }
// 
//     public double getPlayerZGuess(float renderTick) {
//         EntityPlayerSP plyr = getPlayer();
//         return plyr.s + ((plyr.v - plyr.s) * renderTick);
//     }
// 
//     public static EntityPlayerSP getPlayer(Minecraft mc) {
//         return mc.g;
//     }
// 
//     public static WorldClient getWorld(Minecraft mc) {
//         return mc.e;
//     }
// 
//     public static void setEntityPositionToPlayer(Minecraft mc, Entity entity) {
//         entity.b(getPlayerX(mc.g), getPlayerY(mc.g), getPlayerZ(mc.g));
//     }
// 
//     public NetClientHandler getNetClientHandler(EntityClientPlayerMP player) {
//         return player.a;
//     }
// 
//     public static String getChatFromPacket(Packet3Chat packet) {
//         return packet.b;
//     }
// 
//     public static byte[] getBytesFromPacket(Packet250CustomPayload packet) {
//         return packet.c;
//     }
// 
//     public static Packet250CustomPayload newPayloadPacket(String name, int len, byte[] data) {
//         Packet250CustomPayload packet = new Packet250CustomPayload();
//         packet.a = name;
//         packet.b = len;
//         packet.c = data;
//         return packet;
//     }
// 
//     public static File getMinecraftDir() {
//         return Minecraft.b();
//     }
// 
//     public static File getWorldEditCUIDir() {
//         return new File(getMinecraftDir(), "mods" + File.separator + "WorldEditCUI");
//     }
// }


import java.util.logging.Level;
import java.util.logging.Logger;
import wecui.obfuscation.Obfuscation;
package deobf;


public class EntityUpdateThread extends Thread {

    private mod_WorldEditCUI mod;

    public EntityUpdateThread(mod_WorldEditCUI mod) {
        this.mod = mod;
    }
    
    @Override
    public void run() {
        while(true) {
            try {
                Thread.sleep(30000);
            } catch (InterruptedException ex) {
                Logger.getLogger(EntityUpdateThread.class.getName()).log(Level.SEVERE, null, ex);
            }
            
            if( mod.lastEntity != null ) {
// Path: src/main/java/wecui/obfuscation/Obfuscation.java
// public class Obfuscation implements InitializationFactory {
// 
//     protected WorldEditCUI controller;
//     protected Minecraft minecraft;
// 
//     public Obfuscation(WorldEditCUI controller) {
//         this.controller = controller;
//     }
// 
//     @Override
//     public void initialize() {
//         this.minecraft = this.controller.getMinecraft();
//     }
// 
//     public boolean isMultiplayerWorld() {
//         return true; // TODO - Temprarily until I can figure out the new server thing
//         //return minecraft.l();
//     }
// 
//     /**
//      * Displays a chat message on the screen, if the player is currently playing
//      * @param chat 
//      */
//     public void showChatMessage(String chat) {
//         if (getPlayer() != null) {
//             getPlayer().b(chat);
//         }
//     }
// 
//     public EntityPlayerSP getPlayer() {
//         return getPlayer(minecraft);
//     }
// 
//     public WorldClient getWorld() {
//         return getWorld(minecraft);
//     }
// 
//     public Entity spawnEntity() {
//         Minecraft mc = this.controller.getMinecraft();
// 
//         Entity entity = new RenderEntity(this.controller, getWorld(mc));
//         setEntityPositionToPlayer(mc, entity);
//         getWorld(mc).d(entity);
//         setEntityPositionToPlayer(mc, entity);
//         controller.getDebugger().debug("RenderEntity spawned");
//         return entity;
//     }
// 
//     public static double getPlayerX(EntityPlayerSP player) {
//         return player.t;
//     }
// 
//     public static double getPlayerY(EntityPlayerSP player) {
//         return player.u;
//     }
// 
//     public static double getPlayerZ(EntityPlayerSP player) {
//         return player.v;
//     }
// 
//     public double getPlayerXGuess(float renderTick) {
//         EntityPlayerSP plyr = getPlayer();
//         return plyr.q + ((plyr.t - plyr.q) * renderTick);
//     }
// 
//     public double getPlayerYGuess(float renderTick) {
//         EntityPlayerSP plyr = getPlayer();
//         return plyr.r + ((plyr.u - plyr.r) * renderTick);
//     }
// 
//     public double getPlayerZGuess(float renderTick) {
//         EntityPlayerSP plyr = getPlayer();
//         return plyr.s + ((plyr.v - plyr.s) * renderTick);
//     }
// 
//     public static EntityPlayerSP getPlayer(Minecraft mc) {
//         return mc.g;
//     }
// 
//     public static WorldClient getWorld(Minecraft mc) {
//         return mc.e;
//     }
// 
//     public static void setEntityPositionToPlayer(Minecraft mc, Entity entity) {
//         entity.b(getPlayerX(mc.g), getPlayerY(mc.g), getPlayerZ(mc.g));
//     }
// 
//     public NetClientHandler getNetClientHandler(EntityClientPlayerMP player) {
//         return player.a;
//     }
// 
//     public static String getChatFromPacket(Packet3Chat packet) {
//         return packet.b;
//     }
// 
//     public static byte[] getBytesFromPacket(Packet250CustomPayload packet) {
//         return packet.c;
//     }
// 
//     public static Packet250CustomPayload newPayloadPacket(String name, int len, byte[] data) {
//         Packet250CustomPayload packet = new Packet250CustomPayload();
//         packet.a = name;
//         packet.b = len;
//         packet.c = data;
//         return packet;
//     }
// 
//     public static File getMinecraftDir() {
//         return Minecraft.b();
//     }
// 
//     public static File getWorldEditCUIDir() {
//         return new File(getMinecraftDir(), "mods" + File.separator + "WorldEditCUI");
//     }
// }


// Path: src/main/java/deobf/EntityUpdateThread.java
import java.util.logging.Level;
import java.util.logging.Logger;
import wecui.obfuscation.Obfuscation;

package deobf;


public class EntityUpdateThread extends Thread {

    private mod_WorldEditCUI mod;

    public EntityUpdateThread(mod_WorldEditCUI mod) {
        this.mod = mod;
    }
    
    @Override
    public void run() {
        while(true) {
            try {
                Thread.sleep(30000);
            } catch (InterruptedException ex) {
                Logger.getLogger(EntityUpdateThread.class.getName()).log(Level.SEVERE, null, ex);
            }
            
            if( mod.lastEntity != null ) {
                Obfuscation.setEntityPositionToPlayer(mod.controller.getMinecraft(), mod.lastEntity);