Skip to content

Commit 8722ef8

Browse files
committed
[PlaybackController] Replace a method with event
1 parent 7fdf347 commit 8722ef8

File tree

3 files changed

+20
-2
lines changed

3 files changed

+20
-2
lines changed

src/main/java/com/minecrafttas/tasmod/events/EventClient.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.minecrafttas.mctcommon.events.EventListenerRegistry.EventBase;
44

55
import net.minecraft.client.Minecraft;
6+
import net.minecraft.client.gui.GuiScreen;
67

78
/**
89
* TASmod specific events fired on the client side
@@ -22,6 +23,17 @@ public static interface EventDrawHotbar extends EventBase {
2223
public void onDrawHotbar();
2324
}
2425

26+
/**
27+
* Fired when a screen in a gui is drawn
28+
*/
29+
@FunctionalInterface
30+
public static interface EventDrawScreen extends EventBase {
31+
/**
32+
* Fired when a screen in a gui is drawn
33+
*/
34+
public void onDrawScreen(GuiScreen screen, int xCoordinate, int yCoordinate);
35+
}
36+
2537
/**
2638
* Fired when drawing something on screen. Ignores F1
2739
*/

src/main/java/com/minecrafttas/tasmod/mixin/playbackhooks/MixinGuiScreen.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77
import org.spongepowered.asm.mixin.injection.Redirect;
88
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
99

10+
import com.minecrafttas.mctcommon.events.EventListenerRegistry;
1011
import com.minecrafttas.tasmod.TASmodClient;
12+
import com.minecrafttas.tasmod.events.EventClient.EventDrawScreen;
1113
import com.minecrafttas.tasmod.util.Ducks.GuiScreenDuck;
1214
import com.minecrafttas.tasmod.virtual.VirtualInput;
1315
import com.minecrafttas.tasmod.virtual.event.VirtualKeyboardEvent;
@@ -107,7 +109,7 @@ private static boolean redirectIsAltKeyDown(int i) {
107109

108110
@Inject(method = "drawScreen", at = @At("HEAD"))
109111
private void injectDrawScreen(int i, int j, float f, CallbackInfo ci) {
110-
TASmodClient.controller.onDrawScreen((GuiScreen) (Object) this, i, j); // TODO Replace with event
112+
EventListenerRegistry.fireEvent(EventDrawScreen.class, (GuiScreen) (Object) this, i, j);
111113
}
112114

113115
@Shadow

src/main/java/com/minecrafttas/tasmod/playback/PlaybackControllerClient.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
import com.minecrafttas.tasmod.TASmod;
3939
import com.minecrafttas.tasmod.TASmodClient;
4040
import com.minecrafttas.tasmod.events.EventClient.EventClientTickPost;
41+
import com.minecrafttas.tasmod.events.EventClient.EventDrawScreen;
4142
import com.minecrafttas.tasmod.events.EventPlaybackClient;
4243
import com.minecrafttas.tasmod.events.EventPlaybackClient.EventControllerStateChange;
4344
import com.minecrafttas.tasmod.events.EventPlaybackClient.EventPlaybackJoinedWorld;
@@ -95,6 +96,7 @@ public class PlaybackControllerClient implements
9596

9697
EventClientInit,
9798
EventClientTickPost,
99+
EventDrawScreen,
98100

99101
EventVirtualInput.EventVirtualKeyboardTick,
100102
EventVirtualInput.EventVirtualMouseTick,
@@ -429,8 +431,10 @@ public VirtualCameraAngle onVirtualCameraTick(VirtualCameraAngle vcamera) {
429431
}
430432

431433
/**
432-
* Updates the cursor location on screen
434+
* {@inheritDoc}
435+
* <p>Updates the cursor location on screen
433436
*/
437+
@Override
434438
public void onDrawScreen(GuiScreen screen, int x, int y) {
435439
if (!isPlayingback())
436440
return;

0 commit comments

Comments
 (0)