9
0
mirror of https://github.com/Xiao-MoMi/Custom-Crops.git synced 2025-12-28 03:19:15 +00:00
This commit is contained in:
XiaoMoMi
2023-06-28 23:45:30 +08:00
parent 9e5117f401
commit 65518aeebf
16 changed files with 39 additions and 15 deletions

View File

@@ -4,7 +4,7 @@ plugins {
}
group = 'net.momirealms'
version = '3.3.0.0-beta'
version = '3.3.0.0'
repositories {
mavenCentral()

View File

@@ -33,7 +33,7 @@ public abstract class AbstractRequirement {
this.actions = actions;
}
public void notMetMessage(CurrentState currentState) {
public void notMetActions(CurrentState currentState) {
Player player = currentState.getPlayer();
if (msg != null && player != null) {
for (String str : msg) {

View File

@@ -38,7 +38,7 @@ public class BiomeImpl extends AbstractRequirement implements Requirement {
if (biomes.contains(currentBiome)) {
return true;
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -42,7 +42,7 @@ public class CustomPapi extends AbstractRequirement implements Requirement {
if (currentState.getPlayer() == null) return true;
for (PapiRequirement requirement : papiRequirement) {
if (!requirement.isMet(player)) {
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -39,7 +39,7 @@ public class DateImpl extends AbstractRequirement implements Requirement {
if (dates.contains(current)) {
return true;
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -0,0 +1,23 @@
package net.momirealms.customcrops.api.object.requirement;
import net.momirealms.customcrops.api.object.action.Action;
import org.jetbrains.annotations.Nullable;
public class EntityAmountInChunkImpl extends AbstractRequirement implements Requirement {
private final int amount;
public EntityAmountInChunkImpl(@Nullable String[] msg, @Nullable Action[] actions, int amount) {
super(msg, actions);
this.amount = amount;
}
@Override
public boolean isConditionMet(CurrentState currentState) {
if (currentState.getLocation().getChunk().getEntities().length <= amount) {
return true;
}
notMetActions(currentState);
return false;
}
}

View File

@@ -40,7 +40,7 @@ public class JobLevelImpl extends AbstractRequirement implements Requirement {
if (jobInterface.getLevel(currentState.getPlayer(), jobName) >= level) {
return true;
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -38,7 +38,7 @@ public class PermissionImpl extends AbstractRequirement implements Requirement {
if (currentState.getPlayer() == null || currentState.getPlayer().hasPermission(permission)) {
return true;
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -54,7 +54,7 @@ public class SeasonImpl extends AbstractRequirement implements Requirement {
}
}
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -38,7 +38,7 @@ public class SkillLevelImpl extends AbstractRequirement implements Requirement {
if (skillInterface.getLevel(currentState.getPlayer()) >= level) {
return true;
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -40,7 +40,7 @@ public class TimeImpl extends AbstractRequirement implements Requirement {
return true;
}
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -42,7 +42,7 @@ public class WeatherImpl extends AbstractRequirement implements Requirement {
return true;
}
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -38,7 +38,7 @@ public class WorldImpl extends AbstractRequirement implements Requirement {
if (worlds.contains(world.getName())) {
return true;
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -40,7 +40,7 @@ public class YPosImpl extends AbstractRequirement implements Requirement {
return true;
}
}
notMetMessage(currentState);
notMetActions(currentState);
return false;
}
}

View File

@@ -221,6 +221,7 @@ public class ConfigUtils {
case "skill-level" -> requirements.add(new SkillLevelImpl(msg, getActions(actionSec), innerSec.getInt("value")));
case "job-level" -> requirements.add(new JobLevelImpl(msg, getActions(actionSec), innerSec.getInt("value.level"), innerSec.getString("value.job")));
case "date" -> requirements.add(new DateImpl(msg, getActions(actionSec), new HashSet<>(innerSec.getStringList("value"))));
case "max-entity-amount-in-chunk" -> requirements.add(new EntityAmountInChunkImpl(msg, getActions(actionSec), innerSec.getInt("value")));
case "papi-condition" -> requirements.add(new CustomPapi(msg, getActions(actionSec), Objects.requireNonNull(innerSec.getConfigurationSection("value")).getValues(false)));
}
}

View File

@@ -56,7 +56,7 @@ public class SeasonPapi extends PlaceholderExpansion {
@Override
public @Nullable String onRequest(OfflinePlayer player, @NotNull String params) {
String[] split = params.split("_", 2);
if (split[1] == null) {
if (split.length == 1) {
switch (split[0]) {
case "season" -> {
Player online_player = player.getPlayer();
@@ -74,7 +74,7 @@ public class SeasonPapi extends PlaceholderExpansion {
return String.valueOf(1 + ConfigManager.seasonInterval - plugin.getIntegrationManager().getSeasonInterface().getDate(player.getPlayer().getWorld().getName()));
}
}
} else {
} else if (split.length == 2) {
switch (split[0]) {
case "season" -> {
return plugin.getIntegrationManager().getSeasonInterface().getSeason(split[1]).getDisplay();