Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Визуальная часть AspectRatio | EvaWare V3

Начинающий
Начинающий
Статус
Онлайн
Регистрация
10 Июл 2025
Сообщения
30
Реакции
0
Выберите загрузчик игры
  1. Fabric
  2. Прочие моды
марафон бесполезных вещей на EvaWare v3?

1) Создаём класс AspectRatioModule.java по пути sweetie/evaware/client/features/modules/render/
package sweetie.evaware.client.features.modules.render;

import lombok.Getter;
import sweetie.evaware.api.module.Category;
import sweetie.evaware.api.module.Module;
import sweetie.evaware.api.module.ModuleRegister;
import sweetie.evaware.api.module.setting.SliderSetting;

@ModuleRegister(name = "AspectRatio", category = Category.RENDER)
public class AspectRatioModule extends Module {
@Getter
private static final AspectRatioModule instance = new AspectRatioModule();
public final SliderSetting ratio = new SliderSetting("Ratio").value(1.33f).range(0.5f, 3.0f).step(0.01f);

public AspectRatioModule() {
addSettings(ratio);
}

@override
public void onEvent() {
}
}


2.1) Идём в MixinGameRenderer.java по пути sweetie/evaware/inject/render/MixinGameRenderer.java и делаем класс абстрактным
public abstract class MixinGameRenderer


2.2) Добавляем в этот-же миксин импорты
import org.joml.Matrix4f;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import sweetie.evaware.client.features.modules.render.AspectRatioModule;
import org.spongepowered.asm.mixin.Shadow;


2.3) Добавляем этот метод (не спрашивайте зачем, я сам хз, без этого у меня почему-то не работало)
@Shadow
public abstract float getViewDistance();



2.4) Вставляем этот void в самый конец миксина
@Inject(method = "getBasicProjectionMatrix", at = @At("HEAD"), cancellable = true)
public void onGetBasicProjectionMatrix(float fov, CallbackInfoReturnable<Matrix4f> cir) {
if (AspectRatioModule.getInstance().isEnabled()) {
Matrix4f matrix4f = new Matrix4f();
float aspectRatio = AspectRatioModule.getInstance().ratio.getValue();
matrix4f.perspective((float) Math.toRadians(fov), aspectRatio, 0.05F, this.getViewDistance() * 4.0F);
cir.setReturnValue(matrix4f);
}
}


3) Объявляем функцию в ModuleManager.java, путь - sweetie/evaware/api/module/ModuleManager.java
AspectRatioModule.getInstance()


СС :
1769011976190.png
1769011993361.png


1768947179069.png
 
окак
марафон бесполезных вещей на EvaWare v3?

1) Создаём класс AspectRatioModule.java по пути sweetie/evaware/client/features/modules/render/
package sweetie.evaware.client.features.modules.render;

import lombok.Getter;
import sweetie.evaware.api.module.Category;
import sweetie.evaware.api.module.Module;
import sweetie.evaware.api.module.ModuleRegister;
import sweetie.evaware.api.module.setting.SliderSetting;

@ModuleRegister(name = "AspectRatio", category = Category.RENDER)
public class AspectRatioModule extends Module {
@Getter
private static final AspectRatioModule instance = new AspectRatioModule();
public final SliderSetting ratio = new SliderSetting("Ratio").value(1.33f).range(0.5f, 3.0f).step(0.01f);

public AspectRatioModule() {
addSettings(ratio);
}

@override
public void onEvent() {
}
}


2.1) Идём в MixinGameRenderer.java по пути sweetie/evaware/inject/render/MixinGameRenderer.java и делаем класс абстрактным
public abstract class MixinGameRenderer


2.2) Добавляем в этот-же миксин импорты
import org.joml.Matrix4f;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import sweetie.evaware.client.features.modules.render.AspectRatioModule;
import org.spongepowered.asm.mixin.Shadow;


2.3) Добавляем этот метод (не спрашивайте зачем, я сам хз, без этого у меня почему-то не работало)
@Shadow
public abstract float getViewDistance();



2.4) Вставляем этот void в самый конец миксина
@Inject(method = "getBasicProjectionMatrix", at = @At("HEAD"), cancellable = true)
public void onGetBasicProjectionMatrix(float fov, CallbackInfoReturnable<Matrix4f> cir) {
if (AspectRatioModule.getInstance().isEnabled()) {
Matrix4f matrix4f = new Matrix4f();
float aspectRatio = AspectRatioModule.getInstance().ratio.getValue();
matrix4f.perspective((float) Math.toRadians(fov), aspectRatio, 0.05F, this.getViewDistance() * 4.0F);
cir.setReturnValue(matrix4f);
}
}


3) Объявляем функцию в ModuleManager.java, путь - sweetie/evaware/api/module/ModuleManager.java
AspectRatioModule.getInstance()


СС : Посмотреть вложение 325400Посмотреть вложение 325401

1768947179069.png
растяг фимоза
 
Назад
Сверху Снизу