Hello guys,
I have the following problem.
I added a Command for changing the player block reach distance (4.5F & 5.0F).
For doing that, I created a new class
class RangeOrganisator extends PlayerControllerMP {
private float range;
private float range_creative;
public float range_default;
public RangeOrganisator(Minecraft mcIn, NetHandlerPlayClient p_i45062_2_) {
super(mcIn, p_i45062_2_);
range_creative = 5.0F;
range_default = 4.5F;
range = mcIn.playerController.isInCreativeMode() ? range_creative : range_default;
}
@Override
public float getBlockReachDistance() {
return range;
}
public void setBlockReachDistance(float _range) {
range = _range;
}
}
I know it's not a clean code because I only wanted to have it working first.
Well If I change it in the command class, getBlockReachDistance doesn't change.
public class CommandRange extends CommandBase {
@Override
public String getName() {
return "range";
}
@Override
public String getCommandUsage(ICommandSender sender) {
return "/range [range]";
}
@Override
public void execute(ICommandSender sender, String[] args) throws CommandException {
RangeOrganisator ro = new RangeOrganisator(SinglePlayerCommands.mc, null);
PlayerControllerMP mp = SinglePlayerCommands.mc.playerController;
sender.addChatMessage(new ChatComponentText("[sPC]: PlayerControllerMP: " + mp.getBlockReachDistance()));
sender.addChatMessage(new ChatComponentText("[sPC]: RangeOrganisator: " + ro.getBlockReachDistance()));
if (args.length > 0) {
ro.setBlockReachDistance(Float.parseFloat(args[0]));
}
else {
ro.setBlockReachDistance(ro.range_default);
}
sender.addChatMessage(new ChatComponentText("[sPC]: PlayerControllerMP new:" + mp.getBlockReachDistance()));
sender.addChatMessage(new ChatComponentText("[sPC]: RangeOrganisator new:" + ro.getBlockReachDistance()));
}
}
Do you know what to do?
Regards,
Ice