Skip to content

Commit 5fb65cc

Browse files
committed
Save work in progress
Client and serveur side try, don't work
1 parent ce5d0aa commit 5fb65cc

6 files changed

Lines changed: 73 additions & 33 deletions

File tree

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package firelack.freeinventory.mixin.client;
2+
3+
import net.minecraft.client.gui.screen.Screen;
4+
import org.spongepowered.asm.mixin.Mixin;
5+
import org.spongepowered.asm.mixin.injection.At;
6+
import org.spongepowered.asm.mixin.injection.Inject;
7+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
8+
9+
@Mixin(Screen.class)
10+
public class InPortalClientMixin {
11+
/**
12+
* Empêche la fermeture automatique du screen côté client
13+
* par la méthode shouldCloseOnDimChange()
14+
*/
15+
@Inject(
16+
method = "shouldCloseOnDimChange",
17+
at = @At("HEAD"),
18+
cancellable = true
19+
)
20+
private void freeinv$keepScreenOpenOnDimChange(CallbackInfoReturnable<Boolean> cir) {
21+
cir.setReturnValue(false); // Empêche la fermeture lors d'un changement de dimension
22+
}
23+
}

src/main/java/firelack/freeinventory/mixin/ExampleMixin.java

Lines changed: 0 additions & 15 deletions
This file was deleted.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package firelack.freeinventory.mixin;
2+
3+
import net.minecraft.server.network.ServerPlayerEntity;
4+
import org.spongepowered.asm.mixin.Mixin;
5+
import org.spongepowered.asm.mixin.injection.At;
6+
import org.spongepowered.asm.mixin.injection.Inject;
7+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
8+
9+
@Mixin(ServerPlayerEntity.class)
10+
public class InPortalServerMixin {
11+
/**
12+
* Empêche la fermeture de l'inventaire côté serveur
13+
*/
14+
@Inject(
15+
method = "closeHandledScreen",
16+
at = @At("HEAD"),
17+
cancellable = true
18+
)
19+
private void freeinv$keepInventoryOpenServer(CallbackInfo ci) {
20+
ci.cancel();
21+
}
22+
}

src/main/resources/fabric.mod.json

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,36 @@
1-
{
1+
{
22
"schemaVersion": 1,
33
"id": "free-inventory",
44
"version": "${version}",
55
"name": "Free Inventory",
6-
"description": "This is an example description! Tell everyone what your mod is about!",
7-
"authors": [
8-
"Me!"
9-
],
6+
"description": "Keep your inventory and menus open anywhere – even in portals or while sleeping!",
7+
"authors": ["Firelack"],
108
"contact": {
11-
"homepage": "https://fabricmc.net/",
12-
"sources": "https://github.com/FabricMC/fabric-example-mod"
9+
"homepage": "https://github.com/Firelack/FreeInventory",
10+
"sources": "https://github.com/Firelack/FreeInventory"
1311
},
14-
"license": "CC0-1.0",
12+
"license": "MIT",
1513
"icon": "assets/free-inventory/icon.png",
1614
"environment": "*",
1715
"entrypoints": {
1816
"main": [
19-
"firelack.freeinventory.FreeInventory"
17+
"firelack.freeinventory.FreeInventory"
2018
],
2119
"client": [
22-
"firelack.freeinventory.FreeInventoryClient"
20+
"firelack.freeinventory.FreeInventoryClient"
2321
],
2422
"fabric-datagen": [
25-
"firelack.freeinventory.FreeInventoryDataGenerator"
23+
"firelack.freeinventory.FreeInventoryDataGenerator"
2624
]
2725
},
2826
"mixins": [
29-
"free-inventory.mixins.json",
30-
{
31-
"config": "free-inventory.client.mixins.json",
32-
"environment": "client"
33-
}
27+
"free-inventory.mixins.json"
3428
],
29+
"client": {
30+
"mixins": [
31+
"free-inventory.client.mixins.json"
32+
]
33+
},
3534
"depends": {
3635
"fabricloader": ">=0.17.2",
3736
"minecraft": "~1.21.1",
@@ -41,4 +40,4 @@
4140
"suggests": {
4241
"another-mod": "*"
4342
}
44-
}
43+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"required": true,
3+
"package": "firelack.freeinventory.mixin.client",
4+
"compatibilityLevel": "JAVA_21",
5+
"mixins": [
6+
"InPortalClientMixin"
7+
],
8+
"injectors": {
9+
"defaultRequire": 1
10+
}
11+
}

src/main/resources/free-inventory.mixins.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"package": "firelack.freeinventory.mixin",
44
"compatibilityLevel": "JAVA_21",
55
"mixins": [
6-
"ExampleMixin"
6+
"InPortalServerMixin"
77
],
88
"injectors": {
99
"defaultRequire": 1

0 commit comments

Comments
 (0)