Skip to content

Commit 329293e

Browse files
committed
feat: Add Stardew Fishing support #16
1 parent 103f3bc commit 329293e

File tree

3 files changed

+31
-1
lines changed

3 files changed

+31
-1
lines changed

forge/dependencies.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ dependencies {
66
modCompileOnly("curse.maven:aquaculture-60028:6296111")
77
//modRuntimeOnly("curse.maven:cloth-config-348521:5729105")
88
modCompileOnly("curse.maven:tide-884685:6106864")
9+
modCompileOnly("curse.maven:stardew-fishing-1066037:6434447")
910
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package net.blay09.mods.littlejoys.forge.mixin;
2+
3+
import com.bonker.stardewfishing.common.FishingHookLogic;
4+
import net.blay09.mods.littlejoys.api.LittleJoysAPI;
5+
import net.blay09.mods.littlejoys.handler.FishingSpotHolder;
6+
import net.minecraft.server.level.ServerLevel;
7+
import net.minecraft.world.entity.player.Player;
8+
import net.minecraft.world.item.ItemStack;
9+
import org.jetbrains.annotations.Nullable;
10+
import org.spongepowered.asm.mixin.Mixin;
11+
import org.spongepowered.asm.mixin.injection.At;
12+
import org.spongepowered.asm.mixin.injection.Inject;
13+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
14+
15+
@Mixin(FishingHookLogic.class)
16+
public class StardewFishingFishingHookLogicMixin {
17+
@Inject(method = "endMinigame", at = @At("HEAD"), remap = false)
18+
private static void endMinigame(Player player, boolean success, double accuracy, boolean gotChest, @Nullable ItemStack fishingRod, CallbackInfo ci) {
19+
try {
20+
if (success && player.fishing instanceof FishingSpotHolder fishingSpotHolder && player.level() instanceof ServerLevel serverLevel) {
21+
fishingSpotHolder.getFishingSpot().ifPresent(fishingSpot ->
22+
LittleJoysAPI.consumeFishingSpot(player, serverLevel, fishingSpot));
23+
}
24+
} catch (Throwable e) {
25+
throw new RuntimeException("LittleJoys crashed during endMinigame hook", e);
26+
}
27+
}
28+
}

forge/src/main/resources/littlejoys.forge.mixins.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
"refmap": "littlejoys.refmap.json",
77
"mixins": [
88
"AquaFishingBobberEntityMixin",
9-
"TideFishingHookMixin"
9+
"TideFishingHookMixin",
10+
"StardewFishingFishingHookLogicMixin"
1011
],
1112
"client": [
1213
],

0 commit comments

Comments
 (0)