просто как в текстовом редакторе. только с компиляцией декомпиляцией. без зависимостей и библиотек. просто редактировать как txt. нужно в jar впихнуть отредактированный class. как редактировать class
можете просто сказать как редактировать
// Decompiled by DJ v3.12.12.96 Copyright 2011 Atanas Neshkov Date: 27.08.2019 23:38:49
// Home Page: http://members.fortunecity.com/neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: Freecam.java
package net.halalaboos.huzuni.mod.movement;
import net.minecraft.client.Minecraft;
import com.mojang.authlib.GameProfile;
import net.halalaboos.huzuni.Huzuni;
import net.halalaboos.huzuni.api.event.EventManager;
import net.halalaboos.huzuni.api.event.PlayerMoveEvent;
import net.halalaboos.huzuni.api.mod.BasicMod;
import net.halalaboos.huzuni.api.mod.Category;
import net.halalaboos.huzuni.api.settings.Node;
import net.halalaboos.huzuni.api.settings.Value;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityOtherPlayerMP;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.client.multiplayer.WorldClient;
// Referenced classes of package net.halalaboos.huzuni.mod.movement:
// Flight
public class Freecam extends BasicMod
{
private Freecam()
{
super("Freecam", "Allows an individual to fly FROM THEIR BODY?", 22);
oldFlying = false;
setCategory(Category.MOVEMENT);
setAuthor("Halalaboos");
addChildren(new Node[] {
speed
});
}
public void toggle()
{
super.toggle();
if(mc.field_71439_g != null && mc.field_71441_e != null)
if(isEnabled())
{
oldFlying = Flight.INSTANCE.isEnabled();
fakePlayer = new EntityOtherPlayerMP(mc.field_71441_e, new GameProfile(mc.field_71439_g.func_110124_au(), mc.field_71439_g.func_70005_c_()));
fakePlayer.func_82149_j(mc.field_71439_g);
fakePlayer.field_71071_by = mc.field_71439_g.field_71071_by;
fakePlayer.func_70080_a(mc.field_71439_g.field_70165_t, mc.field_71439_g.field_70163_u, mc.field_71439_g.field_70161_v, mc.field_71439_g.field_70177_z, mc.field_71439_g.field_70125_A);
fakePlayer.field_70759_as = mc.field_71439_g.field_70759_as;
mc.field_71441_e.func_73027_a(-69, fakePlayer);
Flight.INSTANCE.setEnabled(true);
} else
{
if(fakePlayer != null && mc.field_71439_g != null)
{
mc.field_71439_g.func_70080_a(fakePlayer.field_70165_t, fakePlayer.field_70163_u, fakePlayer.field_70161_v, fakePlayer.field_70177_z, fakePlayer.field_70125_A);
mc.field_71441_e.func_73028_b(-69);
Flight.INSTANCE.setEnabled(oldFlying);
}
if(mc.field_71439_g != null)
Flight.INSTANCE.setEnabled(oldFlying);
}
}
public void onEnable()
{
huzuni.eventManager.addListener(this);
}
public void onDisable()
{
huzuni.eventManager.removeListener(this);
}
@EventManager.EventMethod
public void onPlayerMove(PlayerMoveEvent event)
{
mc.field_71439_g.func_70031_b(false);
Flight.INSTANCE.setEnabled(true);
if(fakePlayer != null)
fakePlayer.func_70606_j(mc.field_71439_g.func_110143_aJ());
event.setMotionX(event.getMotionX() * (double)speed.getValue());
event.setMotionY(event.getMotionY() * (double)speed.getValue());
event.setMotionZ(event.getMotionZ() * (double)speed.getValue());
}
public static final Freecam INSTANCE = new Freecam();
public final Value speed = new Value("Speed", "", 0.1F, 1.0F, 10F, "movement speed");
private boolean oldFlying;
private EntityOtherPlayerMP fakePlayer;
}
в это
// Decompiled by DJ v3.12.12.96 Copyright 2011 Atanas Neshkov Date: 27.08.2019 23:38:10
// Home Page: http://members.fortunecity.com/neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name: FreecamHack.java
package net.wurstclient.forge.hacks;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.client.renderer.RenderGlobal;
import net.minecraft.client.settings.GameSettings;
import net.minecraft.client.settings.KeyBinding;
import net.minecraft.network.play.client.CPacketPlayer;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.common.eventhandler.EventBus;
import net.wurstclient.fmlevents.*;
import net.wurstclient.forge.Category;
import net.wurstclient.forge.Hack;
import net.wurstclient.forge.settings.SliderSetting;
import net.wurstclient.forge.utils.EntityFakePlayer;
import net.wurstclient.forge.utils.KeyBindingUtils;
@Hack.DontSaveState
public final class FreecamHack extends Hack
{
public FreecamHack()
{
super("Freecam", "Allows you to move the camera\nwithout moving your character.");
speed = new SliderSetting("Speed", 1.0D, 0.050000000000000003D, 10D, 0.050000000000000003D, net.wurstclient.forge.settings.SliderSetting.ValueDisplay.DECIMAL);
setCategory(Category.RENDER);
addSetting(speed);
}
protected void onEnable()
{
MinecraftForge.EVENT_BUS.register(this);
fakePlayer = new EntityFakePlayer();
GameSettings gs = mc.field_71474_y;
KeyBinding bindings[] = {
gs.field_74351_w, gs.field_74368_y, gs.field_74370_x, gs.field_74366_z, gs.field_74314_A, gs.field_74311_E
};
KeyBinding akeybinding[] = bindings;
int i = akeybinding.length;
for(int j = 0; j < i; j++)
{
KeyBinding binding = akeybinding[j];
KeyBindingUtils.resetPressed(binding);
}
}
protected void onDisable()
{
MinecraftForge.EVENT_BUS.unregister(this);
fakePlayer.resetPlayerPosition();
fakePlayer.despawn();
mc.field_71438_f.func_72712_a();
}
@SubscribeEvent
public void onUpdate(WUpdateEvent event)
{
EntityPlayerSP player = event.getPlayer();
player.field_70159_w = 0.0D;
player.field_70181_x = 0.0D;
player.field_70179_y = 0.0D;
player.field_70122_E = false;
player.field_70747_aH = speed.getValueF();
if(mc.field_71474_y.field_74314_A.func_151470_d())
player.field_70181_x += speed.getValue();
if(mc.field_71474_y.field_74311_E.func_151470_d())
player.field_70181_x -= speed.getValue();
}
@SubscribeEvent
public void onPlayerMove(WPlayerMoveEvent event)
{
event.getPlayer().field_70145_X = true;
}
@SubscribeEvent
public void onIsNormalCube(WIsNormalCubeEvent event)
{
event.setCanceled(true);
}
@SubscribeEvent
public void onSetOpaqueCube(WSetOpaqueCubeEvent event)
{
event.setCanceled(true);
}
@SubscribeEvent
public void onPacketOutput(WPacketOutputEvent event)
{
if(event.getPacket() instanceof CPacketPlayer)
event.setCanceled(true);
}
private final SliderSetting speed;
private EntityFakePlayer fakePlayer;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
У меня не отображаются ошибки, которые я вписал в BindResultrejectValue(
Хочу посмотреть как работают и из чего состоят реальные проектыТо-есть меня интересует не именно исходники на гитхабе(там я всеравно ничего...