Skip to content

Commit

Permalink
Small cleanup after testing
Browse files Browse the repository at this point in the history
 - Use TinyRemapper to remap mixins on Fabric. Mixins in the common
   project weren't being remapped correctly.

 - Update to latest NeoForge
   - Switch to the new tick events.
   - Call refreshDimensions() in the fake player constructor.
  • Loading branch information
SquidDev committed Apr 28, 2024
1 parent 959bdae commit 2226df7
Show file tree
Hide file tree
Showing 9 changed files with 22 additions and 31 deletions.
4 changes: 2 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
# Remember to update corresponding versions in fabric.mod.json/neoforge.mods.toml
fabric-api = "0.97.6+1.20.5"
fabric-loader = "0.15.10"
neoForge = "20.5.0-beta"
neoForge = "20.5.20-beta"
neoForgeSpi = "8.0.1"
mixin = "0.8.5"
parchment = "2024.04.14"
Expand Down Expand Up @@ -67,7 +67,7 @@ ideaExt = "1.1.7"
illuaminate = "0.1.0-71-g378d86e"
lwjgl = "3.3.3"
minotaur = "2.8.7"
neoGradle = "7.0.107"
neoGradle = "7.0.116"
nullAway = "0.10.25"
spotless = "6.23.3"
taskTree = "2.1.1"
Expand Down
2 changes: 1 addition & 1 deletion projects/fabric/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ sourceSets.main { resources.srcDir("src/generated/resources") }

loom {
accessWidenerPath.set(project(":common").file("src/main/resources/computercraft.accesswidener"))
mixin.defaultRefmapName.set("computercraft.refmap.json")
mixin.useLegacyMixinAp = false

mods {
register("computercraft") {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,14 @@
import net.minecraft.world.entity.Pose;
import net.minecraft.world.entity.player.Player;

public final class FakePlayer extends net.fabricmc.fabric.api.entity.FakePlayer {
final class FakePlayer extends net.fabricmc.fabric.api.entity.FakePlayer {
private static final EntityDimensions DIMENSIONS = EntityDimensions.fixed(0, 0);

private FakePlayer(ServerLevel serverLevel, GameProfile gameProfile) {
FakePlayer(ServerLevel serverLevel, GameProfile gameProfile) {
super(serverLevel, gameProfile);
refreshDimensions();
}

static FakePlayer create(ServerLevel serverLevel, GameProfile profile) {
return new FakePlayer(serverLevel, profile);
}

@Override
public boolean canHarmPlayer(Player other) {
return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ public boolean onNotifyNeighbour(Level level, BlockPos pos, BlockState block, Di

@Override
public ServerPlayer createFakePlayer(ServerLevel world, GameProfile name) {
return FakePlayer.create(world, name);
return new FakePlayer(world, name);
}

@Override
Expand Down
2 changes: 1 addition & 1 deletion projects/fabric/src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"depends": {
"fabricloader": ">=0.15.10",
"fabric-api": ">=0.97.3",
"minecraft": "=1.20.5"
"minecraft": ">=1.20.5 <1.20.7"
},
"accessWidener": "computercraft.accesswidener"
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.neoforge.client.event.*;
import net.neoforged.neoforge.client.event.sound.PlayStreamingSourceEvent;
import net.neoforged.neoforge.event.TickEvent;
import net.neoforged.neoforge.event.level.LevelEvent;

/**
Expand All @@ -24,13 +23,13 @@ private ForgeClientHooks() {
}

@SubscribeEvent
public static void onTick(TickEvent.ClientTickEvent event) {
if (event.phase == TickEvent.Phase.START) ClientHooks.onTick();
public static void onTick(ClientTickEvent.Pre event) {
ClientHooks.onTick();
}

@SubscribeEvent
public static void onRenderTick(TickEvent.RenderTickEvent event) {
if (event.phase == TickEvent.Phase.START) ClientHooks.onRenderTick();
public static void onRenderTick(RenderFrameEvent.Pre event) {
ClientHooks.onRenderTick();
}

@SubscribeEvent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
import net.neoforged.neoforge.event.AddReloadListenerEvent;
import net.neoforged.neoforge.event.LootTableLoadEvent;
import net.neoforged.neoforge.event.RegisterCommandsEvent;
import net.neoforged.neoforge.event.TickEvent;
import net.neoforged.neoforge.event.entity.EntityJoinLevelEvent;
import net.neoforged.neoforge.event.entity.living.LivingDropsEvent;
import net.neoforged.neoforge.event.level.ChunkEvent;
Expand All @@ -25,18 +24,21 @@
import net.neoforged.neoforge.event.server.ServerStartedEvent;
import net.neoforged.neoforge.event.server.ServerStartingEvent;
import net.neoforged.neoforge.event.server.ServerStoppedEvent;
import net.neoforged.neoforge.event.tick.ServerTickEvent;

/**
* Forge-specific dispatch for {@link CommonHooks}.
*/
@EventBusSubscriber(modid = ComputerCraftAPI.MOD_ID)
public class ForgeCommonHooks {
@SubscribeEvent
public static void onServerTick(TickEvent.ServerTickEvent event) {
switch (event.phase) {
case START -> CommonHooks.onServerTickStart(event.getServer());
case END -> CommonHooks.onServerTickEnd();
}
public static void onServerTick(ServerTickEvent.Pre event) {
CommonHooks.onServerTickStart(event.getServer());
}

@SubscribeEvent
public static void onServerTick(ServerTickEvent.Post event) {
CommonHooks.onServerTickStart(event.getServer());
}

@SubscribeEvent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,7 @@ class FakePlayerExt extends FakePlayer {

FakePlayerExt(ServerLevel serverLevel, GameProfile profile) {
super(serverLevel, profile);
}

@Override
public void doTick() {
super.doTick();
refreshDimensions();
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
import net.neoforged.neoforge.common.NeoForge;
import net.neoforged.neoforge.event.RegisterCommandsEvent;
import net.neoforged.neoforge.event.RegisterGameTestsEvent;
import net.neoforged.neoforge.event.TickEvent;
import net.neoforged.neoforge.event.server.ServerStartedEvent;
import net.neoforged.neoforge.event.tick.ServerTickEvent;

@Mod("cctest")
public class TestMod {
Expand All @@ -34,9 +34,7 @@ public TestMod(IEventBus modBus) {
private static void onInitializeClient() {
var bus = NeoForge.EVENT_BUS;

bus.addListener((TickEvent.ServerTickEvent e) -> {
if (e.phase == TickEvent.Phase.START) ClientTestHooks.onServerTick(e.getServer());
});
bus.addListener((ServerTickEvent.Pre e) -> ClientTestHooks.onServerTick(e.getServer()));
bus.addListener((ScreenEvent.Opening e) -> {
if (ClientTestHooks.onOpenScreen(e.getScreen())) e.setCanceled(true);
});
Expand Down

0 comments on commit 2226df7

Please sign in to comment.