Enaium

Enaium

Blog

04 May 2020

Java插件化开发

在java程序开发过程中. 可能需要加载插件的功能. 所以要动态加载Jar文件来实现插件的加载. 我这边用了Kotlin 一. 创建接口 interface PluginInitializer { fun onInitialize()//插件初始化 } 二. 加载插件 加载的插件可能会抛出什么异常所以要用try private val file = File("plugins")...

20 Apr 2020

使用 SpringBoot+Vue 实现留言版

完成源码 一.新建Vue项目和SpringBoot项目 新建Vue项目 新建文件夹SpringBoot-Vue-MessageBoard 创建Vue项目使用vue ui命令(需要vue 3.0 选择刚才的目录 名字为Vue创建后V还是小写 创建后可以改为大写 取消git初始化 手动配置 取消 打开 创建项目,不保存预设 新建SpringBoot项目 用IDEA打开SpringBoot-Vue-MessageBoard这个目录 创建SpringBoot项目 右键 选择Spring...

28 Mar 2020

[全民写端第二季]#2移植

一. 把第一季的源码复制过来 二. 注入 注入run 和 top @Mixin(Minecraft.class) public class MinecraftMixin { @Inject(at = @At("RETURN"), method = "startGame") private void...

25 Mar 2020

[全民写端第二季]#1配置开发环境

下载FoxBase 如果你想修改名字可以在gradle.build文件修改archivesBaseName 从项目的根目录运行以下命令: ./gradlew setupDevWorkspace idea genIntellijRuns build 打开 IntelliJ IDEA. Open Open => Select FoxBase folder Click Import gradle...

14 Mar 2020

[全民写端]#12绘制ClickGUI

一. 先复制进去FontUtils FontUtils package cn.enaium.coreium.utils; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.FontRenderer; import net.minecraft.util.StringUtils; public class FontUtils { private static FontRenderer fontRenderer; public...

03 Mar 2020

[全民写端]#11绘制主菜单

一. 搜索GuiMainMenu这个类 二. 删除drawScreen方法内所有 三. 删除无用方法(显示为灰色的方法) 四. 在drawScreen方法绘制 public void drawScreen(int mouseX, int mouseY, float partialTicks) { //获取屏幕长和高 ScaledResolution s...

01 Mar 2020

用Gitee搭建私有Maven仓库

一. 新建仓库 二. 上传index <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title></title> </head> <body> Enaium's maven...

28 Feb 2020

[全民写端]#9添加配置

一. 添加Config 下载Config解压到你想要的目录 二.添加到Start [...] public ConfigManager configManager; public void start() { [...] configManager = new ConfigManager(); Display.setTitle(Coreium.INSTANCE.name); [...] configManager.loadConfig();...

26 Feb 2020

[全民写端]#8简化代码

一. 简化端名和版本 在INSTANCE写 public String name = "Coreium"; public String version = "B1"; 就可以直接使用Coreium.INSTANCE.name来获取 二. 简化Module 在Module类中加入protected Minecraft mc =...

25 Feb 2020

[全民写端]#7添加Command

一. 添加Command 下载Command解压到你想要的目录 二. 添加到Start [...] public CommandManager commandManager; public void start() { [...] commandManager = new CommandManager(); Display.setTitle("Coreium"); moduleManager.loadMods();...

25 Feb 2020

[全民写端]#6添加Setting

一. 写Setting类 package cn.enaium.coreium.setting; import cn.enaium.coreium.module.Module; import java.util.ArrayList; public class Setting { private Module module; private String name; private boolean...

25 Feb 2020

[全民写端]#5自动疾跑

一. 新建Sprint类 package cn.enaium.coreium.module.movement; import cn.enaium.coreium.event.EventTarget; import cn.enaium.coreium.event.events.EventUpdate; import cn.enaium.coreium.module.Category; import cn.enaium.coreium.module.Module; import net.minecraft.client.Minecraft; import org.lwjgl.input.Keyboard; public class Sprint extends...

25 Feb 2020

[全民写端]#4添加Event和Module

一. 添加Event 下载Event解压到你想要的目录 修改Event 二. 钩子 在EntityPlayerSP类里面找到onUpdate方法 在第一行写 new EventUpdate().call(); 在Minecraft类里找到runTick方法 找到Keyboard.next()循环 在if (k == 62 && this.entityRenderer != null)下面写...

25 Feb 2020

[全民写端]#3添加OptiFine

一. 下载Optifine本站下载 二. 删除src\minecraft所有内容 将Optifine解压进去(保留你写的包) 三. 根据#2的方法修改Minecraft类调用Start 和 Stop 四. 导入vecmath包 五. 修改类名net.minecraft.client.renderer包下的EntityRenderer$1 EntityRenderer$2 改为EntityRenderer1 EntityRenderer2 六. 启动

25 Feb 2020

[全民写端]#2设置启动和停止

一. 写启动和停止 在你想要的地方新建一个类 改为enum 写一个枚举 INSTANCE; 写两个方法分别是 start 和 stop public enum Coreium { INSTANCE; public void start() { }...

24 Feb 2020

[全民写端]#1配置开发环境

需要 JAVA8+ 和 IDEA 一. 下载MCP 二. 解压到你想要的路径,文件名你想起什么名字就起什么名字 三. 打开文件夹运行decompile.bat,Linux 或者Mac OS 运行decompile.sh(这一步必有正版启动器,而且默认目录%APPDATA%.minecraft\versions 必须要有MC1.8.8版本,运行前还要运行过1.8.8MC.) 反编译完成 四. 导入IDEA Next Next Next...

24 Feb 2020

Minecraft Fabric 进阶教程 #2 绘制界面

绘制界面不需用注入Mixin 新建一个类 ExampleGui.java 继承Screen构造器 public ExampleGui() { super(new LiteralText("")); } 绘制 这是绘制一个背景 绘制背景这种全部覆盖时要在super上面不然按钮或者其他东西会被背景盖住 @Override public void render(int mouseX, int mouseY,...

24 Feb 2020

Minecraft Fabric 进阶教程 #1 绘制按钮

在Mixin包里新建一个类 注入到TitleScreen.class里 注入到这个类的init的方法的头部也就是最上面所以at是HEAD 因为init方法没有参数所以方法就是init()V 因为注入都有一个回调信息所以要有一个回调参数CallbackInfo @Mixin(TitleScreen.class) public class TitleMixin { @Inject(at = @At("HEAD"), method = "init()V") private void init(CallbackInfo info)...

09 Feb 2020

星露谷MOD开发教程 #1 配置开发环境

要求 安装了SMAPI IDE (推荐使用Visual Studio或者Rider) 准备 创建一个类库项目 引用Pathoschild.Stardew.ModBuildConfigNuget包 创建一个类 新建manifest.json文件 格式 { "Name": "<your project name>", "Author": "<your name>", "Version":...

03 Feb 2020

使用WPF设计工具-MaterialDesignInXamlToolkit

MaterialDesignInXamlToolkit 安装Nuget包MaterialDesignThemes 添加到App.xaml <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Light.xaml" /> <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml" /> <ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Primary/MaterialDesignColor.DeepPurple.xaml" /> <ResourceDictionary Source="pack://application:,,,/MaterialDesignColors;component/Themes/Recommended/Accent/MaterialDesignColor.Lime.xaml" /> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> 加入Window中...