Skip to content

Commit

Permalink
Merge pull request DaFuqs#582 from DaFuqs/1.20.1-main
Browse files Browse the repository at this point in the history
So so stupid.
  • Loading branch information
Azzyypaaras authored Nov 18, 2024
2 parents dc92a64 + f62920a commit 0541843
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ public static void removeSingleStatusEffect(@NotNull LivingEntity entity, Status
List<StatusEffectInstance> negativeEffects = new ArrayList<>();
for (StatusEffectInstance statusEffectInstance : currentEffects) {
StatusEffect effect = statusEffectInstance.getEffectType();
if (effect.getCategory() == category && !SpectrumStatusEffectTags.isIn(SpectrumStatusEffectTags.SOPORIFIC, effect) && !SpectrumStatusEffectTags.isIncurable(effect)) {
if (effect.getCategory() == category && !SpectrumStatusEffectTags.isIn(SpectrumStatusEffectTags.SOPORIFIC, effect) && !SpectrumStatusEffectTags.isUnclearable(effect)) {
negativeEffects.add(statusEffectInstance);
}
}
Expand Down Expand Up @@ -90,7 +90,7 @@ public static void shortenNegativeStatusEffects(@NotNull LivingEntity entity, in
}

public static boolean affects(StatusEffect statusEffect) {
return statusEffect.getCategory() == StatusEffectCategory.HARMFUL && !SpectrumStatusEffectTags.isIn(SpectrumStatusEffectTags.SOPORIFIC, statusEffect) && !SpectrumStatusEffectTags.isIncurable(statusEffect);
return statusEffect.getCategory() == StatusEffectCategory.HARMFUL && !SpectrumStatusEffectTags.isIn(SpectrumStatusEffectTags.SOPORIFIC, statusEffect) && !SpectrumStatusEffectTags.isUnclearable(statusEffect);
}

public static void preventPhantomSpawns(@NotNull ServerPlayerEntity serverPlayerEntity) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@ public abstract class LivingEntityMixin {
private boolean spectrum$canHaveStatusEffect(boolean original, @Local(argsOnly = true) StatusEffectInstance statusEffectInstance) {
var instance = (LivingEntity) (Object) this;

if (original && this.hasStatusEffect(SpectrumStatusEffects.IMMUNITY) && statusEffectInstance.getEffectType().getCategory() == StatusEffectCategory.HARMFUL && !SpectrumStatusEffectTags.isIncurable(statusEffectInstance.getEffectType())) {
if (original && this.hasStatusEffect(SpectrumStatusEffects.IMMUNITY) && statusEffectInstance.getEffectType().getCategory() == StatusEffectCategory.HARMFUL && !SpectrumStatusEffectTags.isImmunityImmune(statusEffectInstance.getEffectType())) {
if (Incurable.isIncurable(statusEffectInstance)) {
var immunity = getStatusEffect(SpectrumStatusEffects.IMMUNITY);
var cost = 600 * (statusEffectInstance.getAmplifier() + 1);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,15 @@

public class SpectrumStatusEffectTags {

public static TagKey<StatusEffect> INCURABLE;
public static TagKey<StatusEffect> NO_EFFECT_CLEAR;
public static TagKey<StatusEffect> IMMUNITY_IMMUNE;
public static TagKey<StatusEffect> NO_DURATION_EXTENSION;
public static TagKey<StatusEffect> SOPORIFIC;
public static TagKey<StatusEffect> NIGHT_ALCHEMY;

public static void register() {
INCURABLE = of("uncurable");
NO_EFFECT_CLEAR = of("unclearable");
IMMUNITY_IMMUNE = of("immunity_immune");
NO_DURATION_EXTENSION = of("no_duration_extension");
SOPORIFIC = of("soporific");
NIGHT_ALCHEMY = of("night_alchemy");
Expand All @@ -28,8 +30,12 @@ public static boolean isIn(TagKey<StatusEffect> tag, StatusEffect effect) {
return Registries.STATUS_EFFECT.getEntry(effect).isIn(tag);
}

public static boolean isIncurable(StatusEffect statusEffect) {
return isIn(SpectrumStatusEffectTags.INCURABLE, statusEffect);
public static boolean isImmunityImmune(StatusEffect statusEffect) {
return isIn(SpectrumStatusEffectTags.IMMUNITY_IMMUNE, statusEffect);
}

public static boolean isUnclearable(StatusEffect statusEffect) {
return isIn(SpectrumStatusEffectTags.NO_EFFECT_CLEAR, statusEffect);
}

public static boolean hasEffectWithTag(LivingEntity livingEntity, TagKey<StatusEffect> tag) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"values": [
"spectrum:eternal_slumber",
"spectrum:fatal_slumber"
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"values": [
"spectrum:eternal_slumber",
"#spectrum:immunity_immune"
]
}

0 comments on commit 0541843

Please sign in to comment.