0.1.0 Initial Release

This commit is contained in:
BigPappa committed 2026-09-03 11:52:20 -05:00
1 parent 6635f8543e
commit dcdfa73df7
6 files changed
+150

No files matched your search

+50
View File
@@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.rsscripting</groupId>
<artifactId>RS-FasterMinecarts</artifactId>
<version>0.1.0</version>
<packaging>jar</packaging>
<properties>
<maven.compiler.release>21</maven.compiler.release>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<id>papermc</id>
<url>https://repo.papermc.io/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>io.papermc.paper</groupId>
<artifactId>paper-api</artifactId>
<version>1.21.10-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>RS-FasterMinecarts-0-1-0</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.14.1</version>
<configuration>
<release>21</release>
</configuration>
</plugin>
</plugins>
</build>
</project>
@@ -0,0 +1,66 @@
package com.rsscripting.rsfasterminecarts;
import org.bukkit.entity.Minecart;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.vehicle.VehicleEnterEvent;
import org.bukkit.event.vehicle.VehicleExitEvent;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
public class MinecartListener implements Listener {
private final RSFasterMinecarts plugin;
private final Map<UUID, Double> originalSpeeds = new HashMap<>();
public MinecartListener(RSFasterMinecarts plugin) {
this.plugin = plugin;
}
@EventHandler
public void onVehicleEnter(VehicleEnterEvent event) {
if (!(event.getVehicle() instanceof Minecart minecart)) {
return;
}
if (!(event.getEntered() instanceof Player)) {
return;
}
UUID minecartId = minecart.getUniqueId();
// Do not multiply an already modified minecart.
if (originalSpeeds.containsKey(minecartId)) {
return;
}
double originalSpeed = minecart.getMaxSpeed();
double multiplier = plugin.getConfig().getDouble("max-speed", 3.0);
originalSpeeds.put(minecartId, originalSpeed);
minecart.setMaxSpeed(originalSpeed * multiplier);
}
@EventHandler
public void onVehicleExit(VehicleExitEvent event) {
if (!(event.getVehicle() instanceof Minecart minecart)) {
return;
}
UUID minecartId = minecart.getUniqueId();
Double originalSpeed = originalSpeeds.remove(minecartId);
if (originalSpeed == null) {
return;
}
minecart.setMaxSpeed(originalSpeed);
}
}
@@ -0,0 +1,24 @@
package com.rsscripting.rsfasterminecarts;
import org.bukkit.plugin.java.JavaPlugin;
public class RSFasterMinecarts extends JavaPlugin {
@Override
public void onEnable() {
saveDefaultConfig();
getServer().getPluginManager().registerEvents(
new MinecartListener(this),
this
);
getLogger().info("RS-FasterMinecarts enabled.");
}
@Override
public void onDisable() {
getLogger().info("RS-FasterMinecarts disabled.");
}
}
+4
View File
@@ -0,0 +1,4 @@
# Maximum speed multiplier for player-occupied minecarts.
# 1.0 = normal Minecraft speed
# 3.0 = three times normal speed
max-speed: 3.0
+6
View File
@@ -0,0 +1,6 @@
name: RS-FasterMinecarts
version: ${project.version}
main: com.rsscripting.rsfasterminecarts.RSFasterMinecarts
api-version: '1.21'
description: Increases the maximum speed of player-occupied minecarts.
author: RS Scripting