Update from Git Manager GUI
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
package de.mviper.adventskalender;
|
||||
|
||||
import me.clip.placeholderapi.expansion.PlaceholderExpansion;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.Month;
|
||||
|
||||
public class AdventCalendarExpansion extends PlaceholderExpansion {
|
||||
|
||||
@Override
|
||||
public @NotNull String getIdentifier() {
|
||||
return "ak";
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull String getAuthor() {
|
||||
return "M_Viper";
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull String getVersion() {
|
||||
return "2.0.0";
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean persist() {
|
||||
return true; // Expansion bleibt nach PAPI-Reload registriert
|
||||
}
|
||||
|
||||
@Override
|
||||
public String onPlaceholderRequest(Player player, String identifier) {
|
||||
if (player == null) return "";
|
||||
|
||||
// Aktuellen Tag ermitteln (Berücksichtigt den test_day aus der Config)
|
||||
int testDay = Adventskalender.getInstance().getConfig().getInt("general.test_day", 0);
|
||||
LocalDate date = LocalDate.now();
|
||||
int currentDay = (testDay > 0) ? testDay : (date.getMonth() == Month.DECEMBER ? date.getDayOfMonth() : 0);
|
||||
|
||||
switch (identifier.toLowerCase()) {
|
||||
|
||||
// %ak_claimed% - Anzahl der bereits geöffneten Türchen
|
||||
case "claimed":
|
||||
return String.valueOf(DataHandler.getClaimedDays(player).size());
|
||||
|
||||
// %ak_day% - Der aktuelle Tag des Adventskalenders (1-24)
|
||||
case "day":
|
||||
return String.valueOf(currentDay);
|
||||
|
||||
// %ak_has_claimed_today% - Gibt "Ja" oder "Nein" zurück, ob heute schon geöffnet wurde
|
||||
case "has_claimed_today":
|
||||
if (currentDay == 0) return "Keine Adventszeit";
|
||||
return DataHandler.hasClaimed(player, currentDay) ? "Ja" : "Nein";
|
||||
|
||||
// %ak_remaining% - Wie viele Türchen sind noch offen (für diesen Spieler)?
|
||||
case "remaining":
|
||||
int claimedCount = DataHandler.getClaimedDays(player).size();
|
||||
return String.valueOf(24 - claimedCount);
|
||||
|
||||
// %ak_is_global% - Zeigt an, ob der globale Modus aktiv ist
|
||||
case "is_global":
|
||||
boolean isGlobal = Adventskalender.getInstance().getConfig().getBoolean("calendar.use_global_calendar", false);
|
||||
return isGlobal ? "Global" : "Spieler-basiert";
|
||||
}
|
||||
|
||||
return null; // Placeholder unbekannt
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user