Skip to content

Commit 8f9aa3b

Browse files
Merge pull request #43 from XTerPL/1.20.2
Boolean Values + 1.20.2
2 parents ecd0786 + c78045f commit 8f9aa3b

File tree

83 files changed

+1170
-270
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+1170
-270
lines changed

gradle.properties

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
org.gradle.jvmargs=-Xmx1G
33
# Fabric Properties
44
# check these on https://modmuss50.me/fabric.html
5-
minecraft_version=1.20
6-
yarn_mappings=1.20.1+build.1
7-
loader_version=0.14.21
5+
minecraft_version=1.20.2
6+
yarn_mappings=1.20.2+build.4
7+
loader_version=0.15.3
88
# Mod Properties
99
mod_version=1.0-SNAPSHOT
1010
maven_group=io.github.techstreet.dfscript
1111
archives_base_name=DFScript
1212
# Dependencies
1313
# check this on https://modmuss50.me/fabric.html
14-
fabric_version=0.83.0+1.20.1
14+
fabric_version=0.91.2+1.20.2

src/main/java/io/github/techstreet/dfscript/DFScript.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ public void onInitialize() {
4747
// allows FileDialog class to open without a HeadlessException
4848
System.setProperty("java.awt.headless", "false");
4949

50-
PLAYER_UUID = MC.getSession().getUuid();
50+
PLAYER_UUID = MC.getSession().getUuidOrNull().toString();
5151
PLAYER_NAME = MC.getSession().getUsername();
5252

5353
MOD_VERSION = FabricLoader.getInstance().getModContainer(MOD_ID).get().getMetadata().getVersion().getFriendlyString();

src/main/java/io/github/techstreet/dfscript/event/ServerLeaveEvent.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.github.techstreet.dfscript.event;
22

33
import io.github.techstreet.dfscript.event.system.Event;
4-
import net.minecraft.network.packet.s2c.play.DisconnectS2CPacket;
4+
import net.minecraft.network.packet.s2c.common.DisconnectS2CPacket;
55

66
public class ServerLeaveEvent implements Event {
77
private final DisconnectS2CPacket packet;

src/main/java/io/github/techstreet/dfscript/features/AuthHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import io.github.techstreet.dfscript.loader.Loadable;
1010
import io.github.techstreet.dfscript.script.util.AuthcodeResponse;
1111
import io.github.techstreet.dfscript.script.util.ServercodeResponse;
12-
import net.minecraft.client.util.Session;
12+
import net.minecraft.client.session.Session;
1313
import org.apache.commons.codec.digest.DigestUtils;
1414

1515
import java.io.BufferedReader;
@@ -78,7 +78,7 @@ public static void regen() {
7878
// Authorization step two - Fake server connect
7979
try {
8080
Session session = DFScript.MC.getSession();
81-
DFScript.MC.getSessionService().joinServer(session.getProfile(), session.getAccessToken(), commonSecret);
81+
DFScript.MC.getSessionService().joinServer(session.getUuidOrNull(), session.getAccessToken(), commonSecret);
8282
} catch (AuthenticationException e) {
8383
// DFScript.LOGGER.error(e.getMessage());
8484
// e.printStackTrace();
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package io.github.techstreet.dfscript.mixin.game;
2+
3+
import com.mojang.blaze3d.systems.RenderSystem;
4+
import io.github.techstreet.dfscript.DFScript;
5+
import io.github.techstreet.dfscript.event.*;
6+
import io.github.techstreet.dfscript.event.system.EventManager;
7+
import io.github.techstreet.dfscript.util.hypercube.HypercubeRank;
8+
import io.github.techstreet.dfscript.util.hypercube.HypercubeUtil;
9+
import net.minecraft.client.network.ClientCommonNetworkHandler;
10+
import net.minecraft.client.network.ClientPlayNetworkHandler;
11+
import net.minecraft.network.ClientConnection;
12+
import net.minecraft.network.listener.ClientCommonPacketListener;
13+
import net.minecraft.network.packet.s2c.common.DisconnectS2CPacket;
14+
import net.minecraft.network.packet.s2c.play.GameJoinS2CPacket;
15+
import net.minecraft.network.packet.s2c.play.GameMessageS2CPacket;
16+
import net.minecraft.network.packet.s2c.play.TeamS2CPacket;
17+
import org.spongepowered.asm.mixin.Mixin;
18+
import org.spongepowered.asm.mixin.injection.At;
19+
import org.spongepowered.asm.mixin.injection.Inject;
20+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
21+
22+
@Mixin(ClientCommonNetworkHandler.class)
23+
public class MClientCommonNetworkHandler {
24+
@Inject(method = "onDisconnect", at = @At("RETURN"), cancellable = true)
25+
private void onDisconnect(DisconnectS2CPacket packet, CallbackInfo ci) {
26+
ServerLeaveEvent event = new ServerLeaveEvent(packet);
27+
EventManager.getInstance().dispatch(event);
28+
}
29+
}

src/main/java/io/github/techstreet/dfscript/mixin/game/MClientPlayNetworkHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import net.minecraft.client.network.ClientPlayNetworkHandler;
1111
import net.minecraft.network.ClientConnection;
1212
import net.minecraft.network.packet.s2c.play.*;
13+
import net.minecraft.network.packet.s2c.common.*;
1314
import net.minecraft.text.Text;
1415
import org.spongepowered.asm.mixin.Mixin;
1516
import org.spongepowered.asm.mixin.injection.At;
@@ -80,11 +81,11 @@ private void onGameJoin(GameJoinS2CPacket packet, CallbackInfo ci) {
8081
// EventManager.getInstance().dispatch(event);
8182
}
8283

83-
@Inject(method = "onDisconnect", at = @At("RETURN"), cancellable = true)
84+
/* @Inject(method = "onDisconnect", at = @At("RETURN"), cancellable = true)
8485
private void onDisconnect(DisconnectS2CPacket packet, CallbackInfo ci) {
8586
ServerLeaveEvent event = new ServerLeaveEvent(packet);
8687
EventManager.getInstance().dispatch(event);
87-
}
88+
}*/
8889

8990
@Inject(method = "sendChatMessage", at = @At("HEAD"), cancellable = true)
9091
private void chat(String content, CallbackInfo ci) {

src/main/java/io/github/techstreet/dfscript/mixin/render/MInGameHUD.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,6 @@
1515

1616
@Mixin(InGameHud.class)
1717
public class MInGameHUD {
18-
19-
@Inject(at = @At("HEAD"), method = "renderScoreboardSidebar", cancellable = true)
20-
private void renderScoreboardSidebar(CallbackInfo info) {
21-
MinecraftClient client = DFScript.MC;
22-
if (client.options.debugEnabled) {
23-
info.cancel();
24-
}
25-
}
26-
2718
@Inject(at = @At("HEAD"), method = "render")
2819
private void render(DrawContext context, float tickDelta, CallbackInfo ci) {
2920
OverlayManager.getInstance().render(context);

src/main/java/io/github/techstreet/dfscript/mixin/render/MMultiplayerScreen.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,25 @@
99
import net.minecraft.text.Text;
1010
import net.minecraft.util.Identifier;
1111
import org.spongepowered.asm.mixin.Mixin;
12+
import org.spongepowered.asm.mixin.Unique;
1213
import org.spongepowered.asm.mixin.injection.At;
1314
import org.spongepowered.asm.mixin.injection.Inject;
1415
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
1516

1617
@Mixin(MultiplayerScreen.class)
1718
public class MMultiplayerScreen extends Screen {
19+
@Unique
1820
private final Identifier identifier_main = new Identifier(DFScript.MOD_ID + ":scripts.png");
21+
@Unique
22+
private final Identifier identifier_main_highlight = new Identifier(DFScript.MOD_ID + ":scripts_highlight.png");
1923

2024
protected MMultiplayerScreen(Text title) {
2125
super(title);
2226
}
2327

2428
@Inject(at = @At("HEAD"), method = "init", cancellable = true)
2529
private void init(CallbackInfo ci) {
26-
this.addDrawableChild(new BlendableTexturedButtonWidget(5, 5, 20, 20, 0, 0, 20, identifier_main, 20, 40, (button) -> {
30+
this.addDrawableChild(new BlendableTexturedButtonWidget(5, 5, 20, 20, identifier_main, identifier_main_highlight, (button) -> {
2731
ScriptListScreen screen = new ScriptListScreen(false);
2832
DFScript.MC.setScreen(screen);
2933
}));

src/main/java/io/github/techstreet/dfscript/screen/CScreen.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,14 @@ protected CScreen(int width, int height) {
2626

2727
@Override
2828
public void render(@NotNull DrawContext context, int mouseX, int mouseY, float tickDelta) {
29-
renderBackground(context);
29+
//renderBackground(context, mouseX, mouseY, tickDelta);
30+
super.render(context, mouseX, mouseY, tickDelta);
3031
context.getMatrices().push();
3132
MinecraftClient mc = DFScript.MC;
3233

3334
MatrixStack stack = context.getMatrices();
3435

36+
assert mc.currentScreen != null;
3537
stack.translate(mc.currentScreen.width/2f, mc.currentScreen.height/2f, 0);
3638

3739
// float scaleFactor = (float) mc.getWindow().getScaleFactor();
@@ -58,7 +60,6 @@ public void render(@NotNull DrawContext context, int mouseX, int mouseY, float t
5860
cWidget.renderOverlay(context, mouseX, mouseY, tickDelta);
5961
}
6062
stack.pop();
61-
super.render(context, mouseX, mouseY, tickDelta);
6263
}
6364

6465
@Override
@@ -100,20 +101,21 @@ public boolean mouseClicked(double mouseX, double mouseY, int button) {
100101
}
101102

102103
@Override
103-
public boolean mouseScrolled(double mouseX, double mouseY, double amount) {
104+
public boolean mouseScrolled(double mouseX, double mouseY, double horizontal, double vertical) {
104105
mouseX = translateMouseX(mouseX);
105106
mouseY = translateMouseY(mouseY);
106107

107108
for (CWidget cWidget : widgets) {
108-
cWidget.mouseScrolled(mouseX, mouseY, amount);
109+
cWidget.mouseScrolled(mouseX, mouseY, vertical, horizontal);
109110
}
110-
return super.mouseScrolled(mouseX, mouseY, amount);
111+
return super.mouseScrolled(mouseX, mouseY, horizontal, vertical);
111112
}
112113

113114
public double translateMouseX(double mouseX) {
114115
MinecraftClient mc = DFScript.MC;
115116
// float s = (float) mc.getWindow().getScaleFactor();
116117
float scaleFactor = 2;
118+
assert mc.currentScreen != null;
117119
mouseX += -mc.currentScreen.width/2f;
118120
mouseX /= scaleFactor;
119121
mouseX += width/2f;
@@ -124,6 +126,7 @@ public double translateMouseY(double mouseY) {
124126
MinecraftClient mc = DFScript.MC;
125127
// float scaleFactor = (float) mc.getWindow().getScaleFactor();
126128
float scaleFactor = 2;
129+
assert mc.currentScreen != null;
127130
mouseY += -mc.currentScreen.height/2f;
128131
mouseY /= scaleFactor;
129132
mouseY += height/2f;

src/main/java/io/github/techstreet/dfscript/screen/script/ScriptAddArgumentScreen.java

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,22 @@ public ScriptAddArgumentScreen(Script script, ScriptParametrizedPart action, int
5757
functionArgumentIcon.setCustomName(Text.literal("Function Argument")
5858
.fillStyle(Style.EMPTY.withItalic(false)));
5959

60+
ItemStack trueIcon = new ItemStack(Items.LIME_DYE);
61+
trueIcon.setCustomName(Text.literal("True")
62+
.fillStyle(Style.EMPTY.withItalic(false)));
63+
64+
ItemStack falseIcon = new ItemStack(Items.RED_DYE);
65+
falseIcon.setCustomName(Text.literal("False")
66+
.fillStyle(Style.EMPTY.withItalic(false)));
6067

6168
CItem addNumber = new CItem(2, 40, numberIcon);
6269
CItem addText = new CItem(12, 40, textIcon);
63-
CItem addVariable = new CItem(22, 40, variableIcon);
64-
CItem addClientValue = new CItem(32, 40, clientValueIcon);
65-
CItem addConfigValue = new CItem(42, 40, configValueIcon);
66-
CItem addFunctionArgument = new CItem(52, 40, functionArgumentIcon);
70+
CItem addTrue = new CItem(22, 40, trueIcon);
71+
CItem addFalse = new CItem(32, 40, falseIcon);
72+
CItem addVariable = new CItem(42, 40, variableIcon);
73+
CItem addClientValue = new CItem(52, 40, clientValueIcon);
74+
CItem addConfigValue = new CItem(62, 40, configValueIcon);
75+
CItem addFunctionArgument = new CItem(72, 40, functionArgumentIcon);
6776

6877
input.setChangedListener(() -> input.textColor = 0xFFFFFF);
6978

@@ -102,9 +111,23 @@ public ScriptAddArgumentScreen(Script script, ScriptParametrizedPart action, int
102111
DFScript.MC.setScreen(new ScriptAddFunctionArgValueScreen(action, script, index, header, overwrite));
103112
});
104113

114+
addTrue.setClickListener((btn) -> {
115+
if(overwrite != null) action.getArguments().remove(index);
116+
action.getArguments().add(index, new ScriptBoolArgument(true));
117+
close();
118+
});
119+
120+
addFalse.setClickListener((btn) -> {
121+
if(overwrite != null) action.getArguments().remove(index);
122+
action.getArguments().add(index, new ScriptBoolArgument(false));
123+
close();
124+
});
125+
105126
widgets.add(input);
106127
widgets.add(addNumber);
107128
widgets.add(addText);
129+
widgets.add(addTrue);
130+
widgets.add(addFalse);
108131
widgets.add(addVariable);
109132
widgets.add(addClientValue);
110133
widgets.add(addConfigValue);

0 commit comments

Comments
 (0)