Merge branch 'development'

This commit is contained in:
Christian Koop 2022-01-17 13:54:29 +01:00
commit ecf2ee3f48
No known key found for this signature in database
GPG Key ID: 89A8181384E010A3
6 changed files with 46 additions and 14 deletions

BIN
.DS_Store vendored

Binary file not shown.

24
pom.xml
View File

@ -2,7 +2,7 @@
<groupId>com.songoda</groupId> <groupId>com.songoda</groupId>
<artifactId>UltimateStacker</artifactId> <artifactId>UltimateStacker</artifactId>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<version>2.1.8</version> <version>2.2.0</version>
<build> <build>
<defaultGoal>clean install</defaultGoal> <defaultGoal>clean install</defaultGoal>
<finalName>UltimateStacker-${project.version}</finalName> <finalName>UltimateStacker-${project.version}</finalName>
@ -101,29 +101,31 @@
</pluginRepositories> </pluginRepositories>
<repositories> <repositories>
<repository> <repository>
<id>public</id> <id>songoda-public</id>
<url>http://repo.songoda.com/repository/public/</url> <url>https://repo.songoda.com/repository/public/</url>
</repository> </repository>
<repository>
<id>spigotmc-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository>
<repository> <repository>
<id>CodeMC</id> <id>CodeMC</id>
<url>https://repo.codemc.org/repository/maven-public</url> <url>https://repo.codemc.org/repository/maven-public/</url>
</repository>
<repository>
<id>spigot-repo</id>
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
</repository> </repository>
</repositories> </repositories>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.spigotmc</groupId> <groupId>org.spigotmc</groupId>
<artifactId>spigot</artifactId> <artifactId>spigot-api</artifactId>
<version>1.17</version> <version>1.18-R0.1-SNAPSHOT</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.songoda</groupId> <groupId>com.songoda</groupId>
<artifactId>SongodaCore</artifactId> <artifactId>SongodaCore</artifactId>
<version>LATEST</version> <version>2.6.10</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -367,12 +367,17 @@ public class UltimateStacker extends SongodaPlugin {
spawnerStackManager.removeSpawner(stack.getLocation()); spawnerStackManager.removeSpawner(stack.getLocation());
// are holograms enabled? // are holograms enabled?
if (!stack.areHologramsEnabled() && !HologramManager.getManager().isEnabled()) return; if (!stack.areHologramsEnabled() && !HologramManager.getManager().isEnabled()) return;
// create the hologram // update the hologram
HologramManager.updateHologram(stack.getLocation(), stack.getHologramName()); if (!HologramManager.isHologramLoaded(stack.getHologramId())) {
HologramManager.createHologram(stack.getHologramId(), stack.getLocation(), stack.getHologramName());
return;
}
HologramManager.updateHologram(stack.getHologramId(), stack.getHologramName());
} }
public void removeHologram(Hologramable stack) { public void removeHologram(Hologramable stack) {
HologramManager.removeHologram(stack.getLocation()); HologramManager.removeHologram(stack.getHologramId());
} }
//////// Convenient API ////////// //////// Convenient API //////////

View File

@ -11,4 +11,6 @@ public interface Hologramable {
boolean areHologramsEnabled(); boolean areHologramsEnabled();
boolean isValid(); boolean isValid();
String getHologramId();
} }

View File

@ -10,8 +10,15 @@ import com.songoda.ultimatestacker.utils.Stackable;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.World; import org.bukkit.World;
import java.util.UUID;
public class BlockStack implements Stackable, Hologramable { public class BlockStack implements Stackable, Hologramable {
// This is the unique identifier for this stack.
// It is reset on every plugin load.
// Used for holograms.
private final UUID uniqueId = UUID.randomUUID();
// The id that identifies this stack in the database. // The id that identifies this stack in the database.
private int id; private int id;
@ -105,6 +112,11 @@ public class BlockStack implements Stackable, Hologramable {
this.id = id; this.id = id;
} }
@Override
public String getHologramId() {
return "UltimateStacker-" + uniqueId;
}
@Override @Override
public String toString() { public String toString() {
return "BlockStack{" + return "BlockStack{" +

View File

@ -12,9 +12,15 @@ import org.bukkit.World;
import org.bukkit.block.CreatureSpawner; import org.bukkit.block.CreatureSpawner;
import java.util.Random; import java.util.Random;
import java.util.UUID;
public class SpawnerStack extends SSpawner implements Stackable, Hologramable { public class SpawnerStack extends SSpawner implements Stackable, Hologramable {
// This is the unique identifier for this spawner.
// It is reset on every plugin load.
// Used for holograms.
private final UUID uniqueId = UUID.randomUUID();
private int id; private int id;
private int amount; private int amount;
@ -93,6 +99,11 @@ public class SpawnerStack extends SSpawner implements Stackable, Hologramable {
return location.getWorld(); return location.getWorld();
} }
@Override
public String getHologramId() {
return "UltimateStacker-" + uniqueId;
}
@Override @Override
public String toString() { public String toString() {
return "SpawnerStack:{" return "SpawnerStack:{"