From 1ca2b9068eb3eb4c1936eb61810f8b92f4f4928d Mon Sep 17 00:00:00 2001 From: OMGeeky Date: Mon, 23 Jun 2025 15:09:41 +0200 Subject: [PATCH] extract isImmunity & isClear & isInfinite --- .../gpl/rpg/atcontentstudio/model/gamedata/Common.java | 9 +++++++++ .../atcontentstudio/ui/gamedataeditors/CommonEditor.java | 6 +++--- .../atcontentstudio/ui/gamedataeditors/ItemEditor.java | 7 +++---- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/com/gpl/rpg/atcontentstudio/model/gamedata/Common.java b/src/com/gpl/rpg/atcontentstudio/model/gamedata/Common.java index 0b1909a..37d6fa2 100644 --- a/src/com/gpl/rpg/atcontentstudio/model/gamedata/Common.java +++ b/src/com/gpl/rpg/atcontentstudio/model/gamedata/Common.java @@ -32,6 +32,15 @@ public final class Common { cclone.duration = this.duration; return cclone; } + public boolean isInfinite(){ + return duration != null && duration == ActorCondition.DURATION_FOREVER; + } + public boolean isImmunity(){ + return (magnitude == null || magnitude == ActorCondition.MAGNITUDE_CLEAR) && (duration != null && duration > ActorCondition.DURATION_NONE); + } + public boolean isClear(){ + return (magnitude == null || magnitude == ActorCondition.MAGNITUDE_CLEAR) && (duration == null || duration == ActorCondition.DURATION_NONE); + } } public static class ActorConditionEffect { diff --git a/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/CommonEditor.java b/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/CommonEditor.java index e968f9d..00bd0b2 100644 --- a/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/CommonEditor.java +++ b/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/CommonEditor.java @@ -22,9 +22,9 @@ public class CommonEditor { if (effect.condition != null) { - boolean immunity = (effect.magnitude == null || effect.magnitude == ActorCondition.MAGNITUDE_CLEAR) && (effect.duration != null && effect.duration > ActorCondition.DURATION_NONE); - boolean clear = (effect.magnitude == null || effect.magnitude == ActorCondition.MAGNITUDE_CLEAR) && (effect.duration == null || effect.duration == ActorCondition.DURATION_NONE); - boolean forever = effect.duration != null && effect.duration == ActorCondition.DURATION_FOREVER; + boolean immunity = effect.isImmunity(); + boolean clear = effect.isClear(); + boolean forever = effect.isInfinite(); if (clear) { label.setIcon(new ImageIcon(effect.condition.getIcon())); diff --git a/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java b/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java index 2e2cfd6..6f956c6 100644 --- a/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java +++ b/src/com/gpl/rpg/atcontentstudio/ui/gamedataeditors/ItemEditor.java @@ -632,10 +632,9 @@ public class ItemEditor extends JSONElementEditor { } public void updateHitTargetTimedConditionWidgets(Common.TimedActorConditionEffect condition) { - - boolean immunity = (condition.magnitude == null || condition.magnitude == ActorCondition.MAGNITUDE_CLEAR) && (condition.duration != null && condition.duration > ActorCondition.DURATION_NONE); - boolean clear = (condition.magnitude == null || condition.magnitude == ActorCondition.MAGNITUDE_CLEAR) && (condition.duration == null || condition.duration == ActorCondition.DURATION_NONE); - boolean forever = condition.duration != null && condition.duration == ActorCondition.DURATION_FOREVER; + boolean immunity = condition.isImmunity(); + boolean clear = condition.isClear(); + boolean forever = condition.isInfinite(); hitTargetConditionClear.setSelected(clear); hitTargetConditionApply.setSelected(!clear && !immunity);