This commit is contained in:
sebseb7
2023-12-15 23:54:04 +01:00
parent 8b29b70eb8
commit d5a9d92488
6 changed files with 38 additions and 14 deletions

View File

@@ -1,5 +1,5 @@
plugins { plugins {
id 'fabric-loom' version '1.2-SNAPSHOT' id 'fabric-loom' version '1.4-SNAPSHOT'
id 'com.diffplug.spotless' version '6.19.0' id 'com.diffplug.spotless' version '6.19.0'
id "com.modrinth.minotaur" version "2.+" id "com.modrinth.minotaur" version "2.+"
} }
@@ -11,13 +11,16 @@ repositories {
maven { url 'https://masa.dy.fi/maven' } maven { url 'https://masa.dy.fi/maven' }
maven { url 'https://maven.terraformersmc.com/releases/' } maven { url 'https://maven.terraformersmc.com/releases/' }
maven { url 'https://jitpack.io' } maven { url 'https://jitpack.io' }
flatDir {
dirs '.'
}
} }
dependencies { dependencies {
minecraft "com.mojang:minecraft:${project.minecraft_version}" minecraft "com.mojang:minecraft:${project.minecraft_version}"
mappings "net.fabricmc:yarn:${project.mappings_version}:v2" mappings "net.fabricmc:yarn:${project.mappings_version}:v2"
modImplementation "net.fabricmc:fabric-loader:${project.fabric_loader_version}" modImplementation "net.fabricmc:fabric-loader:${project.fabric_loader_version}"
modImplementation "com.github.Nyan-Work:malilib:${project.malilib_version}" modImplementation "fi.dy.masa.malilib:malilib-fabric-${project.minecraft_version_out}:${project.malilib_version}"
modCompileOnly "com.terraformersmc:modmenu:${project.mod_menu_version}" modCompileOnly "com.terraformersmc:modmenu:${project.mod_menu_version}"
} }
@@ -58,7 +61,7 @@ modrinth {
syncBodyFrom = rootProject.file("README.md").text syncBodyFrom = rootProject.file("README.md").text
projectId = 'C1naQCmt' projectId = 'C1naQCmt'
uploadFile = remapJar uploadFile = remapJar
gameVersions = ['1.20.2'] gameVersions = ['1.20.3','1.20.4']
loaders = ['fabric'] loaders = ['fabric']
dependencies = [] dependencies = []
} }

View File

@@ -7,12 +7,12 @@ mod_name = AutoTrade
author = sebseb7 author = sebseb7
mod_file_name = autotrade-fabric mod_file_name = autotrade-fabric
mod_version = 0.0.5 mod_version = 0.0.6
malilib_version = 0.16.2-nyan.6 malilib_version = 0.18.0
minecraft_version_out = 1.20.2 minecraft_version_out = 1.20.4
minecraft_version = 1.20.2 minecraft_version = 1.20.4
mappings_version = 1.20.2+build.4 mappings_version = 1.20.4+build.1
fabric_loader_version = 0.14.22 fabric_loader_version = 0.15.1
mod_menu_version = 8.0.0 mod_menu_version = 9.0.0-pre.1

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists

View File

@@ -7,6 +7,9 @@ import org.apache.logging.log4j.Logger;
public class AutoTrade implements ModInitializer { public class AutoTrade implements ModInitializer {
public static final Logger logger = LogManager.getLogger(Reference.MOD_ID); public static final Logger logger = LogManager.getLogger(Reference.MOD_ID);
public static long sessionStart = 0;
public static int sold = 0;
public static int bought = 0;
@Override @Override
public void onInitialize() { public void onInitialize() {

View File

@@ -1,5 +1,6 @@
package com.github.sebseb7.autotrade.event; package com.github.sebseb7.autotrade.event;
import com.github.sebseb7.autotrade.AutoTrade;
import com.github.sebseb7.autotrade.config.Configs; import com.github.sebseb7.autotrade.config.Configs;
import com.github.sebseb7.autotrade.config.Hotkeys; import com.github.sebseb7.autotrade.config.Hotkeys;
import com.github.sebseb7.autotrade.gui.GuiConfigs; import com.github.sebseb7.autotrade.gui.GuiConfigs;
@@ -52,6 +53,7 @@ public class KeybindCallbacks implements IHotkeyCallback, IClientTickHandler {
private boolean outputOpened = false; private boolean outputOpened = false;
private int tickCount = 0; private int tickCount = 0;
private int voidDelay = 0; private int voidDelay = 0;
private int screenOpened = 0;
public static KeybindCallbacks getInstance() { public static KeybindCallbacks getInstance() {
return INSTANCE; return INSTANCE;
@@ -152,6 +154,11 @@ public class KeybindCallbacks implements IHotkeyCallback, IClientTickHandler {
? "autotrade.message.toggled_mod_on" ? "autotrade.message.toggled_mod_on"
: "autotrade.message.toggled_mod_off"; : "autotrade.message.toggled_mod_off";
InfoUtils.showGuiOrInGameMessage(Message.MessageType.INFO, msg); InfoUtils.showGuiOrInGameMessage(Message.MessageType.INFO, msg);
if (this.functionalityEnabled()) {
AutoTrade.sold = 0;
AutoTrade.bought = 0;
AutoTrade.sessionStart = System.currentTimeMillis() / 1000L;
}
} else if (key == Hotkeys.OPEN_GUI_SETTINGS.getKeybind()) { } else if (key == Hotkeys.OPEN_GUI_SETTINGS.getKeybind()) {
GuiBase.openGui(new GuiConfigs()); GuiBase.openGui(new GuiConfigs());
return true; return true;
@@ -224,6 +231,7 @@ public class KeybindCallbacks implements IHotkeyCallback, IClientTickHandler {
handler.switchTo(i); handler.switchTo(i);
handler.setRecipeIndex(i); handler.setRecipeIndex(i);
mc.getNetworkHandler().sendPacket(new SelectMerchantTradeC2SPacket(i)); mc.getNetworkHandler().sendPacket(new SelectMerchantTradeC2SPacket(i));
AutoTrade.sold += offer.getMaxUses();
try { try {
mc.interactionManager.clickSlot(handler.syncId, slot.id, 0, SlotActionType.QUICK_MOVE, mc.interactionManager.clickSlot(handler.syncId, slot.id, 0, SlotActionType.QUICK_MOVE,
mc.player); mc.player);
@@ -236,6 +244,7 @@ public class KeybindCallbacks implements IHotkeyCallback, IClientTickHandler {
Slot slot = handler.getSlot(2); Slot slot = handler.getSlot(2);
handler.switchTo(i); handler.switchTo(i);
handler.setRecipeIndex(i); handler.setRecipeIndex(i);
AutoTrade.bought += offer.getMaxUses();
mc.getNetworkHandler().sendPacket(new SelectMerchantTradeC2SPacket(i)); mc.getNetworkHandler().sendPacket(new SelectMerchantTradeC2SPacket(i));
try { try {
mc.interactionManager.clickSlot(handler.syncId, slot.id, 0, SlotActionType.QUICK_MOVE, mc.interactionManager.clickSlot(handler.syncId, slot.id, 0, SlotActionType.QUICK_MOVE,
@@ -285,7 +294,7 @@ public class KeybindCallbacks implements IHotkeyCallback, IClientTickHandler {
for (Entity entity : mc.player.clientWorld.getEntities()) { for (Entity entity : mc.player.clientWorld.getEntities()) {
if (entity instanceof VillagerEntity) { if (entity instanceof VillagerEntity) {
if (entity.getPos().distanceTo(mc.player.getPos()) < 3) { if (entity.getPos().distanceTo(mc.player.getPos()) < 2.5f) {
if (found == false) { if (found == false) {
if (newVillagersInRange.contains(entity) == false) { if (newVillagersInRange.contains(entity) == false) {
found = true; found = true;
@@ -352,6 +361,15 @@ public class KeybindCallbacks implements IHotkeyCallback, IClientTickHandler {
villagersInRange = new Vector<Entity>(); villagersInRange = new Vector<Entity>();
inputInRange = false; inputInRange = false;
outputInRange = false; outputInRange = false;
if (GuiUtils.getCurrentScreen() instanceof MerchantScreen) {
GuiUtils.getCurrentScreen().close();
}
if (GuiUtils.getCurrentScreen() instanceof ShulkerBoxScreen) {
GuiUtils.getCurrentScreen().close();
}
if (GuiUtils.getCurrentScreen() instanceof GenericContainerScreen) {
GuiUtils.getCurrentScreen().close();
}
} }
} }

View File

@@ -30,7 +30,7 @@
], ],
"depends": { "depends": {
"minecraft": "1.20.2", "minecraft": ">=1.20.3",
"malilib": "0.16.x" "malilib": ">=0.18.0"
} }
} }