aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorElis Eriksson <Spelis@duck.com>2025-08-20 13:50:09 +0200
committerElis Eriksson <Spelis@duck.com>2025-08-20 13:50:09 +0200
commit9e0fbda93c31fae950c473414362f307dd4dc79f (patch)
tree3dbd8a8da6cee9f72e3f360300c4bbd415680c3e /src
downloadvalvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.tar
valvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.tar.gz
valvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.tar.bz2
valvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.tar.lz
valvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.tar.xz
valvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.tar.zst
valvesprint-9e0fbda93c31fae950c473414362f307dd4dc79f.zip
Initial
Diffstat (limited to 'src')
-rw-r--r--src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakClient.java28
-rw-r--r--src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakDataGenerator.java12
-rw-r--r--src/client/resources/valvesneak.client.mixins.json14
-rw-r--r--src/main/java/eu/projnull/spelis/valvesneak/Valvesneak.java10
-rw-r--r--src/main/resources/assets/valvesneak/icon.pngbin0 -> 181 bytes
-rw-r--r--src/main/resources/assets/valvesneak/lang/en_us.json3
-rw-r--r--src/main/resources/fabric.mod.json35
-rw-r--r--src/main/resources/valvesneak.mixins.json14
8 files changed, 116 insertions, 0 deletions
diff --git a/src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakClient.java b/src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakClient.java
new file mode 100644
index 0000000..9546e3e
--- /dev/null
+++ b/src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakClient.java
@@ -0,0 +1,28 @@
+package eu.projnull.spelis.valvesneak.client;
+
+import net.fabricmc.api.ClientModInitializer;
+import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents;
+import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
+import net.minecraft.client.option.KeyBinding;
+import net.minecraft.client.util.InputUtil;
+import org.lwjgl.glfw.GLFW;
+
+public class ValvesneakClient implements ClientModInitializer {
+ private KeyBinding walkBind = KeyBindingHelper.registerKeyBinding(new KeyBinding(
+ "key.valvesneak.walk",
+ InputUtil.Type.KEYSYM,
+ GLFW.GLFW_KEY_LEFT_SHIFT,
+ "key.categories.movement"
+ ));
+
+ @Override
+ public void onInitializeClient() {
+ ClientTickEvents.START_CLIENT_TICK.register(client -> {
+ if (client.player != null) {
+ if (client.player.input.hasForwardMovement()) {
+ client.player.setSprinting(!walkBind.isPressed() && !client.player.isSneaking());
+ }
+ }
+ });
+ }
+}
diff --git a/src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakDataGenerator.java b/src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakDataGenerator.java
new file mode 100644
index 0000000..de41e68
--- /dev/null
+++ b/src/client/java/eu/projnull/spelis/valvesneak/client/ValvesneakDataGenerator.java
@@ -0,0 +1,12 @@
+package eu.projnull.spelis.valvesneak.client;
+
+import net.fabricmc.fabric.api.datagen.v1.DataGeneratorEntrypoint;
+import net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator;
+
+public class ValvesneakDataGenerator implements DataGeneratorEntrypoint {
+
+ @Override
+ public void onInitializeDataGenerator(FabricDataGenerator fabricDataGenerator) {
+ FabricDataGenerator.Pack pack = fabricDataGenerator.createPack();
+ }
+}
diff --git a/src/client/resources/valvesneak.client.mixins.json b/src/client/resources/valvesneak.client.mixins.json
new file mode 100644
index 0000000..5e2f221
--- /dev/null
+++ b/src/client/resources/valvesneak.client.mixins.json
@@ -0,0 +1,14 @@
+{
+ "required": true,
+ "minVersion": "0.8",
+ "package": "eu.projnull.spelis.valvesneak.mixin.client",
+ "compatibilityLevel": "JAVA_8",
+ "client": [
+ ],
+ "injectors": {
+ "defaultRequire": 1
+ },
+ "overwrites": {
+ "requireAnnotations": true
+ }
+}
diff --git a/src/main/java/eu/projnull/spelis/valvesneak/Valvesneak.java b/src/main/java/eu/projnull/spelis/valvesneak/Valvesneak.java
new file mode 100644
index 0000000..ad1159a
--- /dev/null
+++ b/src/main/java/eu/projnull/spelis/valvesneak/Valvesneak.java
@@ -0,0 +1,10 @@
+package eu.projnull.spelis.valvesneak;
+
+import net.fabricmc.api.ModInitializer;
+
+public class Valvesneak implements ModInitializer {
+
+ @Override
+ public void onInitialize() {
+ }
+}
diff --git a/src/main/resources/assets/valvesneak/icon.png b/src/main/resources/assets/valvesneak/icon.png
new file mode 100644
index 0000000..6dbef2d
--- /dev/null
+++ b/src/main/resources/assets/valvesneak/icon.png
Binary files differ
diff --git a/src/main/resources/assets/valvesneak/lang/en_us.json b/src/main/resources/assets/valvesneak/lang/en_us.json
new file mode 100644
index 0000000..00bf1d1
--- /dev/null
+++ b/src/main/resources/assets/valvesneak/lang/en_us.json
@@ -0,0 +1,3 @@
+{
+ "key.valvesneak.walk": "Walk"
+} \ No newline at end of file
diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json
new file mode 100644
index 0000000..fe513b6
--- /dev/null
+++ b/src/main/resources/fabric.mod.json
@@ -0,0 +1,35 @@
+{
+ "schemaVersion": 1,
+ "id": "valvesneak",
+ "version": "${version}",
+ "name": "ValveSneak",
+ "description": "Sprinting like Valve games.",
+ "authors": [],
+ "contact": {},
+ "license": "MIT",
+ "icon": "assets/valvesneak/icon.png",
+ "environment": "client",
+ "entrypoints": {
+ "fabric-datagen": [
+ "eu.projnull.spelis.valvesneak.client.ValvesneakDataGenerator"
+ ],
+ "client": [
+ "eu.projnull.spelis.valvesneak.client.ValvesneakClient"
+ ],
+ "main": [
+ "eu.projnull.spelis.valvesneak.Valvesneak"
+ ]
+ },
+ "mixins": [
+ "valvesneak.mixins.json",
+ {
+ "config": "valvesneak.client.mixins.json",
+ "environment": "client"
+ }
+ ],
+ "depends": {
+ "fabricloader": "*",
+ "fabric": "*",
+ "minecraft": "*"
+ }
+}
diff --git a/src/main/resources/valvesneak.mixins.json b/src/main/resources/valvesneak.mixins.json
new file mode 100644
index 0000000..ae5b49b
--- /dev/null
+++ b/src/main/resources/valvesneak.mixins.json
@@ -0,0 +1,14 @@
+{
+ "required": true,
+ "minVersion": "0.8",
+ "package": "eu.projnull.spelis.valvesneak.mixin",
+ "compatibilityLevel": "JAVA_8",
+ "mixins": [
+ ],
+ "injectors": {
+ "defaultRequire": 1
+ },
+ "overwrites": {
+ "requireAnnotations": true
+ }
+}