Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,21 @@ jobs:
with:
name: DebugInfo-Be-Plugin-Latest
path: staging/debuginfo-be.jar

# - name: Generate release diff
# env:
# BEGIN_COMMIT: ${{ steps.get-previous-tag.outputs.tag }}
# END_COMMIT: ${{ steps.lookupPluginVersion.outputs.result }}
# run: git fetch --tags --force && git log --pretty=format:"* %s (%h)" ${BEGIN_COMMIT}..${END_COMMIT} > release_notes.md

#Using this to delete releases that only have the tag "release" when maven build is successful
- uses: dev-drprasad/delete-tag-and-release@v0.2.1
with:
tag_name: release #(required) tag name to delete
delete_release: true #(optional) default: true
#repo: <owner>/<repoName> #(optional) target repository. default: repo running this action
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Create release
uses: ncipollo/release-action@v1
with:
Expand All @@ -66,6 +76,7 @@ jobs:
prerelease: false
tag: "release" #${{steps.lookupPluginVersion.outputs.result}}
token: ${{ secrets.GITHUB_TOKEN }}

# - name: Upload jar to server
# env:
# PTERODACTYL_TOKEN: ${{ secrets.PTERODACTYL_TOKEN }}
Expand Down
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,13 @@ A jar packaged version of the latest release can be downloaded from the latest p

Mention Circuit10 or @TBYT

## Disclaimers

A scenario of using a proxy, e.g. Velocity, and geyser auth type offline will result in this plugin not working.

Remember, Cracked servers are not supported by GeyserMC and by setting your server as so, you will not receive active support.
"Cracked" or "offline mode" servers basically disable any sort of Mojang authentication and allow people with non-genuine versions of the game to join. Unless the server is behind an online mode BungeeCord instance, This is software piracy and is illegal!. By setting your server as so, you are condoning the use of piracy.

## Usage

Toggle the debug HUD with `/f3`
Expand Down
92 changes: 91 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,35 @@
<artifactId>debuginfo</artifactId>
<version>be</version>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<repositories>
<repository>
<id>spigotmc-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository>
<repository>
<id>opencollab-release-repo</id>
<url>https://repo.opencollab.dev/maven-releases/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>opencollab-snapshot-repo</id>
<url>https://repo.opencollab.dev/maven-snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<!-- <repository>
<id>dmulloy2-repo</id>
<url>https://repo.dmulloy2.net/nexus/repository/public/</url>
Expand All @@ -30,7 +54,19 @@
<version>1.19-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<!-- <dependency>
<dependency>
<groupId>org.spongepowered</groupId>
<artifactId>configurate-hocon</artifactId>
<version>4.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.geysermc.floodgate</groupId>
<artifactId>api</artifactId>
<version>2.2.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<!-- <dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot</artifactId>
<version>1.19-R0.1-SNAPSHOT</version>
Expand All @@ -39,6 +75,7 @@
</dependencies>

<build>
<finalName>debuginfo-be</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand All @@ -49,6 +86,59 @@
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.3.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
<relocations>
<relocation>
<pattern>org.spongepowered.configurate</pattern>
<shadedPattern>geyserparity.relocations.configurate</shadedPattern>
</relocation>
<relocation>
<pattern>io.leangen.geantyref</pattern>
<shadedPattern>geyserparity.relocations.geantyref</shadedPattern>
</relocation>
<relocation>
<pattern>com.typesafe.config</pattern>
<shadedPattern>geyserparity.relocations.typesafeconfig</shadedPattern>
</relocation>
</relocations>
</configuration>
</execution>
</executions>
<configuration>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
<artifactSet>
<excludes>
<exclude>org.checkerframework:*</exclude>
</excludes>
</artifactSet>
</configuration>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
</project>
28 changes: 18 additions & 10 deletions src/main/java/com/gmail/heathmitchell27/debuginfobe/CommandF3.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,40 @@
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.geysermc.floodgate.api.FloodgateApi;

public class CommandF3 implements CommandExecutor {
public class CommandF3 implements CommandExecutor
{
MyListener myListener;
public CommandF3(MyListener myListener) {
this.myListener = myListener;
}

// This method is called, when somebody uses our command
// This method is called, when somebody uses our command
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
public boolean onCommand(CommandSender sender, Command command, String label, String[] args)
{
if(label.equals("f3"))
{
if (sender instanceof Player) {
Player player = (Player) sender;

// Return if no brand yet sent or the player isn't on Geyser
if (BrandPluginMessageListener.playerBrands.get(player) == null ||
!BrandPluginMessageListener.playerBrands.get(player).equals("Geyser")) {
sender.sendMessage(ChatColor.RED + "You don't appear to be a Geyser player!");

// Return if player is not on floodgate and if no brand yet sent or the player isn't on Geyser.
if ((BrandPluginMessageListener.playerBrands.get(player) == null || !BrandPluginMessageListener.playerBrands.get(player).equals("Geyser"))
&&(!FloodgateApi.getInstance().isFloodgatePlayer(player.getUniqueId())))
{
sender.sendMessage(ChatColor.RED + "You don't appear to be a Bedrock player!");
return true;
}

Boolean currentOption = MyListener.showDebugScreenMap.get(player);
if (currentOption == null) currentOption = false;

try {
if(args.length==1)
{
int number = Integer.parseInt(args[0]);
MyListener.particleLevel = number;
myListener.setParticleLevel(sender, number);
}
}
catch (NumberFormatException e) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.plugin.messaging.Messenger;
import org.bukkit.scheduler.BukkitScheduler;
import org.spongepowered.configurate.CommentedConfigurationNode;
import org.spongepowered.configurate.ConfigurateException;
import org.spongepowered.configurate.hocon.HoconConfigurationLoader;

public class DebugInfoBe extends JavaPlugin {
@Override
Expand All @@ -13,8 +16,26 @@ public void onLoad() {
}

@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(new MyListener(), this);
public void onEnable()
{
final HoconConfigurationLoader loader = HoconConfigurationLoader.builder()
.path(getDataFolder().toPath().resolve("debuginfobe.conf"))
.defaultOptions(opts -> opts.header("DebugInfo-BE"))
.build();

final DebugInfoBeConfiguration config;
try {
final CommentedConfigurationNode node = loader.load();
config = node.get(DebugInfoBeConfiguration.class);
loader.save(node);
} catch (ConfigurateException e) {
getLogger().warning("Could not load config!");
e.printStackTrace();
return;
}

MyListener myListener = new MyListener(this, config);
getServer().getPluginManager().registerEvents(myListener, this);

Messenger messenger = Bukkit.getMessenger();
messenger.registerIncomingPluginChannel(this, "minecraft:brand", new BrandPluginMessageListener());
Expand All @@ -24,14 +45,14 @@ public void onEnable() {
@Override
public void run() {
for (Player player : Bukkit.getOnlinePlayers()) {
// Update every 0.25 seconds
MyListener.updateInfo(player, player.getLocation());
// Update every 0.25 seconds
myListener.updateInfo(player, player.getLocation());
}
}
}, 0L, 5L);

this.getCommand("f3").setExecutor(new CommandF3());
this.getCommand("debuginfo-be").setExecutor(new CommandF3());
this.getCommand("f3").setExecutor(new CommandF3(myListener));
this.getCommand("debuginfo-be").setExecutor(new CommandF3(myListener));
getLogger().info("Enabled debuginfo-be!");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package com.gmail.heathmitchell27.debuginfobe;


import org.spongepowered.configurate.objectmapping.ConfigSerializable;
import org.spongepowered.configurate.objectmapping.meta.Comment;

@ConfigSerializable
public final class DebugInfoBeConfiguration {
/* README.md
* Toggle the Chunk Border Particle Level with /f3 <ParticleLevel>

An example would be /f3 2
To turn off borders use /f3 0
*/
@Comment("\nFor example, if set to 4, this will show 8 y levels of particles, if in this example default particle level is 2.")
private int defaultParticleMultiplier = 1;
@Comment("\nThe Max Number for the Particle Level a player can set.")
private int defaultMaxParticleLevel = 16;
//This will show up first in the .conf file although it is placed last here.
@Comment("\nIf you do not want Chunk Border Particles Showing for players, set defaultParticleLevel to 0 and defaultMaxParticleLevel to 0."
+ "\nFor example, if set to 2, this will show 2 y levels of particles, if in this example the multiplier is 1.")
private int defaultParticleLevel = 8;

public int defaultParticleMultiplier() {
return defaultParticleMultiplier;
}

public int defaultParticleLevel() {
return defaultParticleLevel;
}

public int defaultMaxParticleLevel() {
return defaultMaxParticleLevel;
}
}
Loading