Plan/PlanPluginBridge/src/main/java/com/djrapitops/pluginbridge/plan/ontime/OntimeVotes.java

63 lines
1.8 KiB
Java

package com.djrapitops.pluginbridge.plan.ontime;
import java.io.Serializable;
import java.util.UUID;
import main.java.com.djrapitops.plan.data.additional.AnalysisType;
import main.java.com.djrapitops.plan.data.additional.PluginData;
import me.edge209.OnTime.OnTimeAPI;
import static org.bukkit.Bukkit.getOfflinePlayer;
import org.bukkit.OfflinePlayer;
/**
* PluginData class for Ontime-plugin.
*
* Registered to the plugin by OnTimeHook
*
* Gives Total Votes Integer as value.
*
* @author Rsl1122
* @since 3.1.0
* @see OnTimeHook
*/
public class OntimeVotes extends PluginData {
/**
* Class Constructor, sets the parameters of the PluginData object.
*/
public OntimeVotes() {
super("OnTime", "votes", AnalysisType.LONG_TOTAL, AnalysisType.LONG_AVG);
super.setAnalysisOnly(false);
super.setIcon("check");
super.setPrefix("Votes All Time: ");
}
@Override
public String getHtmlReplaceValue(String modifierPrefix, UUID uuid) {
OfflinePlayer offlinePlayer = getOfflinePlayer(uuid);
if (!offlinePlayer.hasPlayedBefore()) {
return "";
}
String name = offlinePlayer.getName();
long votesTotal = OnTimeAPI.getPlayerTimeData(name, OnTimeAPI.data.TOTALVOTE);
if (votesTotal == -1) {
return parseContainer(modifierPrefix, "No votes.");
}
return parseContainer(modifierPrefix, votesTotal + "");
}
@Override
public Serializable getValue(UUID uuid) {
OfflinePlayer offlinePlayer = getOfflinePlayer(uuid);
if (!offlinePlayer.hasPlayedBefore()) {
return -1L;
}
String name = offlinePlayer.getName();
long votesTotal = OnTimeAPI.getPlayerTimeData(name, OnTimeAPI.data.TOTALVOTE);
if (votesTotal == -1) {
return -1L;
}
return votesTotal;
}
}