Skip to content

Commit 60823f7

Browse files
authored
update (#13)
1 parent 3a7e492 commit 60823f7

File tree

6 files changed

+37
-29
lines changed

6 files changed

+37
-29
lines changed

gradle.properties

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
org.gradle.jvmargs=-Xmx2G
22

33
# Fabric (https://fabricmc.net/versions.html)
4-
minecraft_version=1.19
5-
yarn_mappings=1.19+build.1
6-
loader_version=0.14.7
4+
minecraft_version=1.19.2
5+
yarn_mappings=1.19.2+build.4
6+
loader_version=0.14.9
77

88
# Mod Properties
99
mod_version=0.1
10-
maven_group=dummy.package
10+
maven_group=anticope
1111
archives_base_name=e621-addon
1212

13-
# Dependency Versions
13+
# Dependency Versions.
1414

1515
# Meteor (https://maven.meteordev.org/)
16-
meteor_version=0.5.0-SNAPSHOT
16+
meteor_version=0.5.1-SNAPSHOT

src/main/java/anticope/esixtwoone/E621Hud.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,5 @@ public String getCommit() {
4545
.getCustomValue("github:sha")
4646
.getAsString();
4747
return commit.isEmpty() ? null : commit.trim();
48-
4948
}
5049
}

src/main/java/anticope/esixtwoone/ImageHUD.java

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package anticope.esixtwoone;
22

3+
import meteordevelopment.meteorclient.MeteorClient;
34
import meteordevelopment.meteorclient.events.world.TickEvent;
45
import meteordevelopment.meteorclient.renderer.Renderer2D;
56
import meteordevelopment.meteorclient.renderer.GL;
@@ -20,7 +21,6 @@
2021
import net.minecraft.client.texture.NativeImageBackedTexture;
2122
import net.minecraft.util.Identifier;
2223

23-
import anticope.esixtwoone.sources.ESixTwoOne;
2424
import anticope.esixtwoone.sources.Source;
2525
import anticope.esixtwoone.sources.Source.Size;
2626
import anticope.esixtwoone.sources.Source.SourceType;
@@ -34,7 +34,7 @@ public class ImageHUD extends HudElement {
3434
private boolean locked = false;
3535
private boolean empty = true;
3636
private int ticks = 0;
37-
private Source source = new ESixTwoOne();
37+
private Source source;
3838

3939
private static final Identifier TEXID = new Identifier("e621", "tex");
4040

@@ -46,6 +46,7 @@ public class ImageHUD extends HudElement {
4646
.defaultValue(100)
4747
.min(10)
4848
.sliderRange(70, 1000)
49+
.onChanged(o -> updateSize())
4950
.build()
5051
);
5152

@@ -55,40 +56,31 @@ public class ImageHUD extends HudElement {
5556
.defaultValue(100)
5657
.min(10)
5758
.sliderRange(70, 1000)
59+
.onChanged(o -> updateSize())
5860
.build()
5961
);
6062

6163
private final Setting<String> tags = sgGeneral.add(new StringSetting.Builder()
6264
.name("tags")
6365
.description("Tags")
6466
.defaultValue("femboy")
65-
.onChanged((v) -> {
66-
source.reset();
67-
empty = true;
68-
})
67+
.onChanged((v) -> updateSource())
6968
.build()
7069
);
7170

7271
private final Setting<Size> size = sgGeneral.add(new EnumSetting.Builder<Size>()
7372
.name("size")
7473
.description("Size mode.")
7574
.defaultValue(Size.preview)
76-
.onChanged((v) -> {
77-
source.reset();
78-
empty = true;
79-
})
75+
.onChanged((v) -> updateSource())
8076
.build()
8177
);
8278

8379
private final Setting<SourceType> sourceType = sgGeneral.add(new EnumSetting.Builder<SourceType>()
8480
.name("source")
8581
.description("Source Type.")
8682
.defaultValue(SourceType.e621)
87-
.onChanged((v) -> {
88-
source = Source.getSource(v);
89-
source.reset();
90-
empty = true;
91-
})
83+
.onChanged(v -> updateSource())
9284
.build()
9385
);
9486

@@ -98,11 +90,20 @@ public class ImageHUD extends HudElement {
9890
.defaultValue(1200)
9991
.max(3000)
10092
.min(20)
93+
.sliderRange(20, 3000)
10194
.build()
10295
);
10396

10497
public ImageHUD() {
10598
super(INFO);
99+
updateSource();
100+
MeteorClient.EVENT_BUS.subscribe(this);
101+
}
102+
103+
@Override
104+
public void remove() {
105+
super.remove();
106+
MeteorClient.EVENT_BUS.unsubscribe(this);
106107
}
107108

108109
private static ImageHUD create() {
@@ -111,7 +112,6 @@ private static ImageHUD create() {
111112

112113
@EventHandler
113114
public void onTick(TickEvent.Post event) {
114-
if (mc.world == null) return;
115115
ticks ++;
116116
if (ticks >= refreshRate.get()) {
117117
ticks = 0;
@@ -132,6 +132,16 @@ public void render(HudRenderer renderer) {
132132
Renderer2D.TEXTURE.render(null);
133133
}
134134

135+
private void updateSize() {
136+
setSize(imgWidth.get(), imgHeight.get());
137+
}
138+
139+
private void updateSource() {
140+
source = Source.getSource(sourceType.get());
141+
source.reset();
142+
empty = true;
143+
}
144+
135145
private void loadImage() {
136146
if (locked || source == null)
137147
return;
@@ -152,6 +162,6 @@ private void loadImage() {
152162
}
153163
locked = false;
154164
}).start();
155-
setSize(imgWidth.get(), imgHeight.get());
165+
updateSize();
156166
}
157167
}

src/main/java/anticope/esixtwoone/sources/ESixTwoOne.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,4 @@ public String randomImage(String filter, Size size) {
3030
}
3131
return null;
3232
}
33-
3433
}

src/main/java/anticope/esixtwoone/sources/GelBooru.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,13 @@ public String randomImage(String filter, Size size) {
2525
JsonElement result = Http.get(query).sendJson(JsonElement.class);
2626
if (result == null) return null;
2727
if (result instanceof JsonArray array) {
28-
if (array.get(random.nextInt(0, 11)) instanceof JsonObject post) {
28+
if (array.get(random.nextInt(0, Math.min(11, array.size()))) instanceof JsonObject post) {
2929
var url = post.get(size.toString()+"_url").getAsString();
3030
return url;
3131
}
3232
} else if (result instanceof JsonObject object) {
3333
if (object.get("post") instanceof JsonArray array) {
34-
if (array.get(random.nextInt(0, 11)) instanceof JsonObject post) {
34+
if (array.get(random.nextInt(0, Math.min(11, array.size()))) instanceof JsonObject post) {
3535
var url = post.get(size.toString()+"_url").getAsString();
3636
return url;
3737
}
@@ -40,5 +40,4 @@ public String randomImage(String filter, Size size) {
4040

4141
return null;
4242
}
43-
4443
}

src/main/java/anticope/esixtwoone/sources/Source.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package anticope.esixtwoone.sources;
22

33
import java.net.URLEncoder;
4+
import java.nio.charset.StandardCharsets;
45
import java.util.Random;
56

67
import anticope.esixtwoone.E621Hud;
@@ -26,7 +27,7 @@ public enum SourceType {
2627

2728
public String getRandomImage(String filter, Size size) {
2829
try {
29-
return randomImage(URLEncoder.encode(filter, "UTF-8"), size);
30+
return randomImage(URLEncoder.encode(filter, StandardCharsets.UTF_8), size);
3031
} catch (Exception ex) {
3132
E621Hud.LOG.error("Failed to fetch an image.", ex);
3233
}

0 commit comments

Comments
 (0)