Fix Server Side Crash

This commit is contained in:
Kam committed 2026-02-21 17:10:48 -05:00
1 parent 8e73428458
commit 61d253638a
6 files changed
+26 -7

No files matched your search

@@ -1,5 +1,7 @@
package kamkeel.npcs.controllers.data.ability.conditions;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import kamkeel.npcs.controllers.data.ability.UserType;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
@@ -7,7 +9,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
import noppes.npcs.client.gui.advanced.SubGuiCustomEffectSelect;
import noppes.npcs.client.gui.builder.FieldDef;
import noppes.npcs.client.gui.util.SubGuiInterface;
import noppes.npcs.controllers.CustomEffectController;
import noppes.npcs.controllers.data.CustomEffect;
@@ -33,11 +34,12 @@ public class ConditionHasEffect extends AbilityCondition {
return CustomEffectController.getInstance().hasEffect(player, effectId, effectIndex);
}
@SideOnly(Side.CLIENT)
@Override
public void getConditionDefinitions(List<FieldDef> defs) {
defs.add(FieldDef.subGuiField("condition.select_effect",
() -> new SubGuiCustomEffectSelect(effectId, effectIndex),
(SubGuiInterface gui) -> {
gui -> {
SubGuiCustomEffectSelect sel = (SubGuiCustomEffectSelect) gui;
if (sel.getSelectedEffectId() >= 0) {
effectId = sel.getSelectedEffectId();
@@ -55,6 +57,7 @@ public class ConditionHasEffect extends AbilityCondition {
}));
}
@SideOnly(Side.CLIENT)
@Override
public String getConditionSummary() {
String filterLabel = StatCollector.translateToLocal(getFilter().toString());
@@ -1,5 +1,7 @@
package kamkeel.npcs.controllers.data.ability.conditions;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
@@ -52,12 +54,14 @@ public class ConditionHitCount extends AbilityCondition {
this.withinTicks = Math.max(0, withinTicks);
}
@SideOnly(Side.CLIENT)
@Override
public void getConditionDefinitions(List<FieldDef> defs) {
defs.add(FieldDef.intField("condition.required_hits", this::getRequiredHits, this::setRequiredHits).min(1));
defs.add(FieldDef.intField("condition.within_ticks", this::getWithinTicks, this::setWithinTicks).min(0));
}
@SideOnly(Side.CLIENT)
@Override
public String getConditionSummary() {
String filterLabel = StatCollector.translateToLocal(getFilter().toString());
@@ -1,5 +1,7 @@
package kamkeel.npcs.controllers.data.ability.conditions;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@@ -127,6 +129,7 @@ public class ConditionItem extends AbilityCondition {
return itemName.equals(registryName);
}
@SideOnly(Side.CLIENT)
@Override
public void getConditionDefinitions(List<FieldDef> defs) {
defs.add(FieldDef.enumField("condition.usage_type", UsageType.class,
@@ -150,6 +153,7 @@ public class ConditionItem extends AbilityCondition {
// .hover("condition.hover.required_count"));
}
@SideOnly(Side.CLIENT)
@Override
public String getConditionSummary() {
String filterLabel = StatCollector.translateToLocal(getFilter().toString());
@@ -1,5 +1,7 @@
package kamkeel.npcs.controllers.data.ability.conditions;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import kamkeel.npcs.controllers.data.ability.UserType;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
@@ -7,7 +9,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
import noppes.npcs.client.gui.builder.FieldDef;
import noppes.npcs.client.gui.select.GuiQuestSelection;
import noppes.npcs.client.gui.util.SubGuiInterface;
import noppes.npcs.controllers.QuestController;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.controllers.data.Quest;
@@ -32,11 +33,12 @@ public class ConditionQuestCompleted extends AbilityCondition {
return PlayerData.get(player).questData.hasFinishedQuest(questId);
}
@SideOnly(Side.CLIENT)
@Override
public void getConditionDefinitions(List<FieldDef> defs) {
defs.add(FieldDef.subGuiField("condition.select_quest",
() -> new GuiQuestSelection(questId),
(SubGuiInterface gui) -> {
gui -> {
GuiQuestSelection sel = (GuiQuestSelection) gui;
if (sel.selectedQuest != null) {
questId = sel.selectedQuest.id;
@@ -50,6 +52,7 @@ public class ConditionQuestCompleted extends AbilityCondition {
.clearable(() -> questId = -1));
}
@SideOnly(Side.CLIENT)
@Override
public String getConditionSummary() {
String filterLabel = StatCollector.translateToLocal(getFilter().toString());
@@ -1,5 +1,7 @@
package kamkeel.npcs.controllers.data.ability.conditions;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
@@ -95,6 +97,7 @@ public abstract class ConditionThreshold extends AbilityCondition {
return thresholdType.test(value, threshold);
}
@SideOnly(Side.CLIENT)
@Override
public void getConditionDefinitions(List<FieldDef> defs) {
defs.add(FieldDef.floatField("condition.threshold_flat", this::getThresholdFlat, this::setThresholdFlat)
@@ -122,6 +125,7 @@ public abstract class ConditionThreshold extends AbilityCondition {
thresholdType = ThresholdType.fromOrdinal(nbt.getInteger("thresholdType"));
}
@SideOnly(Side.CLIENT)
@Override
public String getConditionSummary() {
String filterLabel = StatCollector.translateToLocal(getFilter().toString());
@@ -118,10 +118,11 @@ public class FieldDef {
return def;
}
public static FieldDef subGuiField(String label, Supplier<SubGuiInterface> factory, Consumer<SubGuiInterface> resultHandler) {
@SuppressWarnings("unchecked")
public static <T> FieldDef subGuiField(String label, Supplier<T> factory, Consumer<T> resultHandler) {
FieldDef def = new FieldDef(label, FieldType.SUB_GUI);
def.subGuiFactory = factory;
def.subGuiResultHandler = resultHandler;
def.subGuiFactory = (Supplier<SubGuiInterface>) (Supplier<?>) factory;
def.subGuiResultHandler = (Consumer<SubGuiInterface>) (Consumer<?>) resultHandler;
return def;
}