diff --git a/.idea/EndlessJumper.iml b/.idea/EndlessJumper.iml
new file mode 100644
index 0000000..a376b96
--- /dev/null
+++ b/.idea/EndlessJumper.iml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ ADVENTURE
+
+ 1
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
index a008a5e..b2dfa1f 100644
--- a/.idea/jarRepositories.xml
+++ b/.idea/jarRepositories.xml
@@ -11,16 +11,16 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 06e8b35..ef964bb 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -8,7 +8,7 @@
-
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build.sh b/build.sh
new file mode 100755
index 0000000..a25f67a
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,2 @@
+mvn -f pom.xml clean package
+
diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml
new file mode 100644
index 0000000..7a4f369
--- /dev/null
+++ b/dependency-reduced-pom.xml
@@ -0,0 +1,44 @@
+
+
+ 4.0.0
+ org.example
+ EndlessJumper
+ 1.0-SNAPSHOT
+
+
+
+ maven-shade-plugin
+ 3.5.3
+
+
+ package
+
+ shade
+
+
+
+
+ eu.mhsl.minecraft.endlessjumper.EndlessJumper
+
+
+
+
+
+
+
+
+
+
+ spongepowered
+ https://repo.spongepowered.org/maven
+
+
+ jitpack
+ https://jitpack.io
+
+
+
+ 17
+ 17
+
+
diff --git a/pom.xml b/pom.xml
index 497f8df..43504e6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,15 +26,34 @@
- com.github.Minestom
- Minestom
- 484727d02a
-
-
- org.jboss.shrinkwrap.resolver
- shrinkwrap-resolver-depchain
-
-
+ net.minestom
+ minestom-snapshots
+ d707b0674f
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 3.5.3
+
+
+ package
+
+ shade
+
+
+
+
+ eu.mhsl.minecraft.endlessjumper.EndlessJumper
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/eu/mhsl/minecraft/endlessjumper/EndlessJumper.java b/src/main/java/eu/mhsl/minecraft/endlessjumper/EndlessJumper.java
index 7a355ea..136f496 100644
--- a/src/main/java/eu/mhsl/minecraft/endlessjumper/EndlessJumper.java
+++ b/src/main/java/eu/mhsl/minecraft/endlessjumper/EndlessJumper.java
@@ -6,12 +6,14 @@ import net.minestom.server.coordinate.Pos;
import net.minestom.server.entity.Player;
import net.minestom.server.entity.PlayerSkin;
import net.minestom.server.event.GlobalEventHandler;
+import net.minestom.server.event.player.AsyncPlayerConfigurationEvent;
import net.minestom.server.event.player.PlayerDisconnectEvent;
-import net.minestom.server.event.player.PlayerLoginEvent;
import net.minestom.server.event.player.PlayerMoveEvent;
+import net.minestom.server.extras.velocity.VelocityProxy;
import net.minestom.server.instance.InstanceContainer;
import net.minestom.server.instance.InstanceManager;
import net.minestom.server.instance.block.Block;
+import net.minestom.server.timer.TaskSchedule;
import java.util.HashMap;
@@ -24,12 +26,12 @@ public class EndlessJumper {
HashMap games = new HashMap<>();
- eventHandler.addListener(PlayerLoginEvent.class, event -> {
+ eventHandler.addListener(AsyncPlayerConfigurationEvent.class, event -> {
final Player p = event.getPlayer();
p.setRespawnPoint(new Pos(0.5,101.5,0.5));
final InstanceContainer world = instanceManager.createInstanceContainer();
- world.setChunkGenerator(new TerrainGenerator());
+ world.setGenerator(new TerrainGenerator());
Pos startingAt = new Pos(0,100,0);
world.setBlock(startingAt, Block.DIAMOND_BLOCK);
@@ -41,7 +43,11 @@ public class EndlessJumper {
event.setSpawningInstance(world);
- games.put(p, new JumpGenerator(startingAt, p, world));
+ MinecraftServer.getSchedulerManager().scheduleTask(
+ () -> games.put(p, new JumpGenerator(startingAt, p, world)),
+ TaskSchedule.seconds(3),
+ TaskSchedule.stop()
+ );
});
eventHandler.addListener(PlayerMoveEvent.class, event -> {
@@ -70,11 +76,10 @@ public class EndlessJumper {
//if(p.getPosition().z() > target.z()+2) generator.highlight();
});
- eventHandler.addListener(PlayerDisconnectEvent.class, event -> {
- games.remove(event.getPlayer());
- });
+ eventHandler.addListener(PlayerDisconnectEvent.class, event -> games.remove(event.getPlayer()));
- server.start("0.0.0.0", 25565);
+ VelocityProxy.enable("iph0YHK9jNWZ");
+ server.start("0.0.0.0", 25501);
}
}
diff --git a/src/main/java/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.java b/src/main/java/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.java
index 9b4c54a..0c1b452 100644
--- a/src/main/java/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.java
+++ b/src/main/java/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.java
@@ -1,36 +1,12 @@
package eu.mhsl.minecraft.endlessjumper;
-import net.minestom.server.instance.Chunk;
-import net.minestom.server.instance.ChunkGenerator;
-import net.minestom.server.instance.ChunkPopulator;
-import net.minestom.server.instance.batch.ChunkBatch;
-import net.minestom.server.instance.block.Block;
-import net.minestom.server.world.biomes.Biome;
+import net.minestom.server.instance.generator.GenerationUnit;
+import net.minestom.server.instance.generator.Generator;
import org.jetbrains.annotations.NotNull;
-import org.jetbrains.annotations.Nullable;
-import java.util.Arrays;
-import java.util.List;
-
-public class TerrainGenerator implements ChunkGenerator {
+public class TerrainGenerator implements Generator {
@Override
- public void generateChunkData(@NotNull ChunkBatch batch, int chunkX, int chunkZ) {
- for(byte x = 0; x < Chunk.CHUNK_SIZE_X; x++) {
- for(byte z = 0; z < Chunk.CHUNK_SIZE_Z; z++) {
- for(byte y = 0; y < 1; y++) {
- batch.setBlock(x, y, z, Block.AIR);
- }
- }
- }
- }
+ public void generate(@NotNull GenerationUnit unit) {
- @Override
- public void fillBiomes(@NotNull Biome[] biomes, int chunkX, int chunkZ) {
- Arrays.fill(biomes, Biome.PLAINS);
- }
-
- @Override
- public @Nullable List getPopulators() {
- return null;
}
}
diff --git a/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.java b/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.java
index ef3f685..7750bb8 100644
--- a/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.java
+++ b/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.java
@@ -17,8 +17,6 @@ public class BlockPalette {
blocks.add(Block.OXIDIZED_COPPER);
blocks.add(Block.OXIDIZED_CUT_COPPER);
-
-
return blocks.get(r.nextInt(0, blocks.size()));
}
}
diff --git a/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.java b/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.java
index 4c946e6..c9074e5 100644
--- a/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.java
+++ b/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.java
@@ -8,23 +8,23 @@ import net.minestom.server.coordinate.Pos;
import net.minestom.server.entity.Player;
import net.minestom.server.instance.InstanceContainer;
import net.minestom.server.instance.block.Block;
+import net.minestom.server.network.packet.server.play.ParticlePacket;
import net.minestom.server.particle.Particle;
-import net.minestom.server.particle.ParticleCreator;
import net.minestom.server.sound.SoundEvent;
import java.util.ArrayList;
import java.util.Random;
public class JumpGenerator {
- private Player player;
- private InstanceContainer world;
- private ArrayList blocks = new ArrayList<>();
+ private final Player player;
+ private final InstanceContainer world;
+ private final ArrayList blocks = new ArrayList<>();
private Pos checkpoint;
private Pos starting;
private int combo = 0;
- private int preview = 2;
+ private final int preview = 2;
public JumpGenerator(Pos starting, Player player, InstanceContainer world) {
@@ -53,12 +53,12 @@ public class JumpGenerator {
this.checkpoint = current;
this.player.playSound(Sound.sound(SoundEvent.ENTITY_PLAYER_LEVELUP, Sound.Source.BLOCK, 0.3f, 1f));
this.player.showTitle(Title.title(Component.text(""), Component.text("Checkpoint", TextColor.color(0, 255, 0))));
- this.player.sendPacket(ParticleCreator.createParticlePacket(Particle.CRIT, current.x()+0.5, current.y()+0.5, current.z()+0.5, 1.5f, 1.5f, 1.5f, 50));
+ this.player.sendPacket(new ParticlePacket(Particle.CRIT, current, current.add(0.5), 1.5f, 50));
}
this.world.setBlock(target.add(0, 1 ,0), Block.LIGHT);
this.blocks.add(target);
- this.player.sendPacket(ParticleCreator.createParticlePacket(Particle.CRIT, target.x()+0.5, target.y()+0.5, target.z()+0.5, 1, 1, 1, 10));
- this.player.sendPacket(ParticleCreator.createParticlePacket(Particle.FALLING_NECTAR, target.x()+0.5, target.y()+1.5, target.z()+0.5, 0.3f, 0.1f, 0.3f, 10));
+ this.player.sendPacket(new ParticlePacket(Particle.CRIT, target, target.add(0.5), 1, 10));
+ this.player.sendPacket(new ParticlePacket(Particle.FALLING_NECTAR, target, target.add(0.5),0.3f, 10));
this.combo++;
}
@@ -95,14 +95,6 @@ public class JumpGenerator {
return checkpoint;
}
- public Player getPlayer() {
- return player;
- }
-
- public InstanceContainer getWorld() {
- return world;
- }
-
public ArrayList getBlocks() {
return blocks;
}
diff --git a/target/EndlessJumper-1.0-SNAPSHOT.jar b/target/EndlessJumper-1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..f81cd35
Binary files /dev/null and b/target/EndlessJumper-1.0-SNAPSHOT.jar differ
diff --git a/target/classes/eu/mhsl/minecraft/endlessjumper/EndlessJumper.class b/target/classes/eu/mhsl/minecraft/endlessjumper/EndlessJumper.class
index 58e750e..2beb5ee 100644
Binary files a/target/classes/eu/mhsl/minecraft/endlessjumper/EndlessJumper.class and b/target/classes/eu/mhsl/minecraft/endlessjumper/EndlessJumper.class differ
diff --git a/target/classes/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.class b/target/classes/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.class
index 4e45687..cf8c761 100644
Binary files a/target/classes/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.class and b/target/classes/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.class differ
diff --git a/target/classes/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.class b/target/classes/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.class
index 3c9fe19..a07d1a6 100644
Binary files a/target/classes/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.class and b/target/classes/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.class differ
diff --git a/target/classes/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.class b/target/classes/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.class
index fff6843..eb470db 100644
Binary files a/target/classes/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.class and b/target/classes/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.class differ
diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties
new file mode 100644
index 0000000..d5d28ca
--- /dev/null
+++ b/target/maven-archiver/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Fri Dec 19 20:45:21 CET 2025
+artifactId=EndlessJumper
+groupId=org.example
+version=1.0-SNAPSHOT
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 0000000..cee0f9e
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -0,0 +1,5 @@
+eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.class
+eu/mhsl/minecraft/endlessjumper/TerrainGenerator.class
+eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.class
+eu/mhsl/minecraft/endlessjumper/BlockMath.class
+eu/mhsl/minecraft/endlessjumper/EndlessJumper.class
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 0000000..625f4aa
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,5 @@
+/home/elias/projects/Minecraft/EndlessJumper/src/main/java/eu/mhsl/minecraft/endlessjumper/EndlessJumper.java
+/home/elias/projects/Minecraft/EndlessJumper/src/main/java/eu/mhsl/minecraft/endlessjumper/BlockMath.java
+/home/elias/projects/Minecraft/EndlessJumper/src/main/java/eu/mhsl/minecraft/endlessjumper/TerrainGenerator.java
+/home/elias/projects/Minecraft/EndlessJumper/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/JumpGenerator.java
+/home/elias/projects/Minecraft/EndlessJumper/src/main/java/eu/mhsl/minecraft/endlessjumper/generator/BlockPalette.java
diff --git a/target/original-EndlessJumper-1.0-SNAPSHOT.jar b/target/original-EndlessJumper-1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..e5e33e2
Binary files /dev/null and b/target/original-EndlessJumper-1.0-SNAPSHOT.jar differ