-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
крч сделал нормальный прицел, в тех двух у меня он просто переливался так что вот вам градиентный
DisplayUtils:
JavaScript лол:
package im.expensive.functions.impl.render;
import com.google.common.eventbus.Subscribe;
import com.jhlabs.image.Gradient;
import im.expensive.Expensive;
import im.expensive.events.EventDisplay;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import im.expensive.functions.settings.Setting;
import im.expensive.functions.settings.impl.BooleanSetting;
import im.expensive.functions.settings.impl.ModeSetting;
import im.expensive.functions.settings.impl.SliderSetting;
import im.expensive.ui.styles.Style;
import im.expensive.utils.math.MathUtil;
import im.expensive.utils.render.ColorUtils;
import im.expensive.utils.render.DisplayUtils;
import im.expensive.utils.text.GradientUtil;
import net.minecraft.client.settings.PointOfView;
import net.minecraft.util.math.RayTraceResult.Type;
import java.awt.*;
@FunctionRegister(name = "Crosshair", type = Category.Render)
public class Crosshair extends Function {
private final ModeSetting mode = new ModeSetting("Вид", "Круг", "Круг", "Орбиз", "Класический");
private final SliderSetting radius = new SliderSetting("Радиус", 3f, 3f, 6f, 0.1f);
private final BooleanSetting staticCrosshair = new BooleanSetting("Статический", false);
/*private float lastYaw;
private float lastPitch;
private float animatedYaw;
private float animatedPitch;
private float animation;
private float animationSize;
private final int outlineColor = Color.BLACK.getRGB();
private final int entityColor = Color.RED.getRGB();*/
private float lastYaw;
private float lastPitch;
private float animatedYaw;
private float animatedPitch;
private float animation;
private float animationSize;
private final int outlineColor;
private final int entityColor;
public Crosshair() {
//addSettings(mode, staticCrosshair);
this.outlineColor = Color.BLACK.getRGB();
this.entityColor = Color.RED.getRGB();
this.addSettings(new Setting[]{this.mode, this.staticCrosshair, this.radius});
}
@Subscribe
public void onDisplay(EventDisplay e) {
if (mc.player == null || mc.world == null || e.getType() != EventDisplay.Type.POST) {
return;
}
float x = mc.getMainWindow().getScaledWidth() / 2f;
float y = mc.getMainWindow().getScaledHeight() / 2f;
float padding = 5.0F;
float cooldown;
float length;
switch (mode.getIndex()) {
case 0 -> {
//this.addSettings(new Setting[]{this.radius});
cooldown = 5.0F;
int color = ColorUtils.interpolate(HUD.getColor(1), HUD.getColor(1), 1.0F - this.animation);
if (!(Boolean) this.staticCrosshair.get()) {
x += this.animatedYaw;
y += this.animatedPitch;
}
this.animationSize = MathUtil.fast(this.animationSize, (1.0F - mc.player.getCooledAttackStrength(1.0F)) * 260.0F, 10.0F);
length = 3.0F + ((Boolean) this.staticCrosshair.get() ? 0.0F : this.animationSize);
if (mc.gameSettings.getPointOfView() == PointOfView.FIRST_PERSON) {
DisplayUtils.drawCircle2(x, y, 0.0F, 360.0F, radius.get(), 3.0F, false, ColorUtils.getColor(90));
DisplayUtils.drawCircle(x, y, 0.0F, this.animationSize, radius.get(), 3.0F, false, ColorUtils.rgb(23, 21, 21));
}
}
case 1 -> {
float size = 5;
animatedYaw = MathUtil.fast(animatedYaw,
((lastYaw - mc.player.rotationYaw) + mc.player.moveStrafing) * size,
5);
animatedPitch = MathUtil.fast(animatedPitch,
((lastPitch - mc.player.rotationPitch) + mc.player.moveForward) * size, 5);
animation = MathUtil.fast(animation, mc.objectMouseOver.getType() == Type.ENTITY ? 1 : 0, 5);
int color = ColorUtils.interpolate(HUD.getColor(1), HUD.getColor(1), 1 - animation);
if (!staticCrosshair.get()) {
x += animatedYaw;
y += animatedPitch;
}
animationSize = MathUtil.fast(animationSize, (1 - mc.player.getCooledAttackStrength(1)) * 3, 10);
float radius = 3 + (staticCrosshair.get() ? 0 : animationSize);
if (mc.gameSettings.getPointOfView() == PointOfView.FIRST_PERSON) {
DisplayUtils.drawShadowCircle(x, y, radius * 2, ColorUtils.setAlpha(color, 64));
DisplayUtils.drawCircle(x, y, radius, color);
}
lastYaw = mc.player.rotationYaw;
lastPitch = mc.player.rotationPitch;
}
case 2 -> {
if (mc.gameSettings.getPointOfView() != PointOfView.FIRST_PERSON) return;
cooldown = 1 - mc.player.getCooledAttackStrength(0);
float thickness = 1;
/*float */length = 3;
float gap = 2 + 8 * cooldown;
int color = mc.pointedEntity != null ? entityColor : -1;
drawOutlined(x - thickness / 2, y - gap - length, thickness, length, color);
drawOutlined(x - thickness / 2, y + gap, thickness, length, color);
drawOutlined(x - gap - length, y - thickness / 2, length, thickness, color);
drawOutlined(x + gap, y - thickness / 2, length, thickness, color);
}
}
}
private void drawOutlined(
final float x,
final float y,
final float w,
final float h,
final int hex
) {
DisplayUtils.drawRectW(x - 0.5, y - 0.5, w + 1, h + 1, outlineColor); // бля че за хуйня поч его хуярит салат что наделал
DisplayUtils.drawRectW(x, y, w, h, hex);
}
}
Javascipt xD:
public static void drawCircle2(float x, float y, float start, float end, float radius, float width, boolean filled, int color) {
if (start > end) {
float endOffset = end;
end = start;
start = endOffset;
}
GlStateManager.enableBlend();
RenderSystem.disableAlphaTest();
GL11.glDisable(3553);
RenderSystem.blendFuncSeparate(770, 771, 1, 0);
RenderSystem.shadeModel(7425);
GL11.glEnable(2848);
GL11.glLineWidth(width);
GL11.glBegin(3);
float i;
float cos;
float sin;
for(i = end; i >= start; --i) {
ColorUtils.setColor(HUDAncient.getColor((int)(i * 1.0F), 1.0F));
cos = MathHelper.cos((float)((double)i * Math.PI / 180.0)) * radius;
sin = MathHelper.sin((float)((double)i * Math.PI / 180.0)) * radius;
GL11.glVertex2f(x + cos, y + sin);
}
GL11.glEnd();
GL11.glDisable(2848);
if (filled) {
GL11.glBegin(6);
for(i = end; i >= start; --i) {
ColorUtils.setColor(HUDAncient.getColor((int)(i * 1.0F), 1.0F));
cos = MathHelper.cos((float)((double)i * Math.PI / 180.0)) * radius;
sin = MathHelper.sin((float)((double)i * Math.PI / 180.0)) * radius;
GL11.glVertex2f(x + cos, y + sin);
}
GL11.glEnd();
}
RenderSystem.enableAlphaTest();
RenderSystem.shadeModel(7424);
GL11.glEnable(3553);
GlStateManager.disableBlend();
}
Пожалуйста, авторизуйтесь для просмотра ссылки.
Вложения
-
282.2 KB Просмотры: 281