调整perk使用限制
This commit is contained in:
parent
8b5aa13ca7
commit
dc84d8d3b4
7 changed files with 21 additions and 33 deletions
|
@ -175,7 +175,7 @@ public class M79Item extends GunItem implements GeoItem, SpecialFireWeapon {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canApplyPerk(Perk perk) {
|
public boolean canApplyPerk(Perk perk) {
|
||||||
return PerkHelper.LAUNCHER_PERKS.test(perk);
|
return PerkHelper.LAUNCHER_PERKS.test(perk) || perk == ModPerks.MICRO_MISSILE.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -275,7 +275,7 @@ public class SecondaryCataclysm extends GunItem implements GeoItem, SpecialFireW
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canApplyPerk(Perk perk) {
|
public boolean canApplyPerk(Perk perk) {
|
||||||
return PerkHelper.LAUNCHER_PERKS.test(perk);
|
return PerkHelper.LAUNCHER_PERKS.test(perk) || perk == ModPerks.MICRO_MISSILE.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -203,7 +203,7 @@ public class MinigunItem extends GunItem implements GeoItem {
|
||||||
@Override
|
@Override
|
||||||
public boolean canApplyPerk(Perk perk) {
|
public boolean canApplyPerk(Perk perk) {
|
||||||
return switch (perk.type) {
|
return switch (perk.type) {
|
||||||
case AMMO -> true;
|
case AMMO -> perk != ModPerks.MICRO_MISSILE.get() && perk != ModPerks.LONGER_WIRE.get();
|
||||||
case FUNCTIONAL -> perk == ModPerks.FIELD_DOCTOR.get() || perk == ModPerks.INTELLIGENT_CHIP.get();
|
case FUNCTIONAL -> perk == ModPerks.FIELD_DOCTOR.get() || perk == ModPerks.INTELLIGENT_CHIP.get();
|
||||||
case DAMAGE -> perk == ModPerks.MONSTER_HUNTER.get() || perk == ModPerks.KILLING_TALLY.get();
|
case DAMAGE -> perk == ModPerks.MONSTER_HUNTER.get() || perk == ModPerks.KILLING_TALLY.get();
|
||||||
};
|
};
|
||||||
|
|
|
@ -173,7 +173,7 @@ public class VectorItem extends GunItem implements GeoItem {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ResourceLocation getGunIcon() {
|
public ResourceLocation getGunIcon() {
|
||||||
return new ResourceLocation(ModUtils.MODID, "textures/gun_icon/vector_icon.png");
|
return ModUtils.loc("textures/gun_icon/vector_icon.png");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -102,7 +102,6 @@ public class HuntingRifleItem extends GunItem implements GeoItem {
|
||||||
@Override
|
@Override
|
||||||
public AnimatableInstanceCache getAnimatableInstanceCache() {
|
public AnimatableInstanceCache getAnimatableInstanceCache() {
|
||||||
return this.cache;
|
return this.cache;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ItemStack getGunInstance() {
|
public static ItemStack getGunInstance() {
|
||||||
|
|
|
@ -165,7 +165,7 @@ public class BocekItem extends GunItem implements GeoItem, SpecialFireWeapon {
|
||||||
@Override
|
@Override
|
||||||
public boolean canApplyPerk(Perk perk) {
|
public boolean canApplyPerk(Perk perk) {
|
||||||
return switch (perk.type) {
|
return switch (perk.type) {
|
||||||
case AMMO -> !perk.descriptionId.equals("butterfly_bullet");
|
case AMMO -> !perk.descriptionId.equals("butterfly_bullet") && perk != ModPerks.MICRO_MISSILE.get();
|
||||||
case FUNCTIONAL -> perk == ModPerks.FIELD_DOCTOR.get() || perk == ModPerks.INTELLIGENT_CHIP.get();
|
case FUNCTIONAL -> perk == ModPerks.FIELD_DOCTOR.get() || perk == ModPerks.INTELLIGENT_CHIP.get();
|
||||||
case DAMAGE -> perk == ModPerks.MONSTER_HUNTER.get() || perk == ModPerks.KILLING_TALLY.get();
|
case DAMAGE -> perk == ModPerks.MONSTER_HUNTER.get() || perk == ModPerks.KILLING_TALLY.get();
|
||||||
};
|
};
|
||||||
|
|
|
@ -181,7 +181,8 @@ public class PerkHelper {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final Predicate<Perk> SHOTGUN_PERKS = perk -> switch (perk.type) {
|
public static final Predicate<Perk> SHOTGUN_PERKS = perk -> switch (perk.type) {
|
||||||
case AMMO -> !perk.descriptionId.equals("butterfly_bullet");
|
case AMMO -> !perk.descriptionId.equals("butterfly_bullet") && perk != ModPerks.MICRO_MISSILE.get()
|
||||||
|
&& perk != ModPerks.LONGER_WIRE.get();
|
||||||
case FUNCTIONAL -> perk == ModPerks.SUBSISTENCE.get()
|
case FUNCTIONAL -> perk == ModPerks.SUBSISTENCE.get()
|
||||||
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
||||||
|| perk == ModPerks.HEAL_CLIP.get()
|
|| perk == ModPerks.HEAL_CLIP.get()
|
||||||
|
@ -193,28 +194,19 @@ public class PerkHelper {
|
||||||
|| perk == ModPerks.VORPAL_WEAPON.get();
|
|| perk == ModPerks.VORPAL_WEAPON.get();
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final Predicate<Perk> RIFLE_PERKS = perk -> {
|
public static final Predicate<Perk> RIFLE_PERKS = perk -> switch (perk.type) {
|
||||||
switch (perk.type) {
|
case AMMO -> perk != ModPerks.MICRO_MISSILE.get() && perk != ModPerks.LONGER_WIRE.get();
|
||||||
case AMMO -> {
|
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get() || perk == ModPerks.FIELD_DOCTOR.get() ||
|
||||||
return true;
|
|
||||||
}
|
|
||||||
case FUNCTIONAL -> {
|
|
||||||
return perk == ModPerks.HEAL_CLIP.get() || perk == ModPerks.FIELD_DOCTOR.get() ||
|
|
||||||
perk == ModPerks.FOURTH_TIMES_CHARM.get() || perk == ModPerks.SUBSISTENCE.get() ||
|
perk == ModPerks.FOURTH_TIMES_CHARM.get() || perk == ModPerks.SUBSISTENCE.get() ||
|
||||||
perk == ModPerks.POWERFUL_ATTRACTION.get() || perk == ModPerks.INTELLIGENT_CHIP.get();
|
perk == ModPerks.POWERFUL_ATTRACTION.get() || perk == ModPerks.INTELLIGENT_CHIP.get();
|
||||||
}
|
case DAMAGE ->
|
||||||
case DAMAGE -> {
|
perk == ModPerks.KILL_CLIP.get() || perk == ModPerks.GUTSHOT_STRAIGHT.get() || perk == ModPerks.MONSTER_HUNTER.get() ||
|
||||||
return perk == ModPerks.KILL_CLIP.get() || perk == ModPerks.GUTSHOT_STRAIGHT.get() || perk == ModPerks.MONSTER_HUNTER.get() ||
|
|
||||||
perk == ModPerks.HEAD_SEEKER.get() || perk == ModPerks.DESPERADO.get() || perk == ModPerks.VORPAL_WEAPON.get();
|
perk == ModPerks.HEAD_SEEKER.get() || perk == ModPerks.DESPERADO.get() || perk == ModPerks.VORPAL_WEAPON.get();
|
||||||
}
|
|
||||||
default -> {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final Predicate<Perk> HANDGUN_PERKS = perk -> switch (perk.type) {
|
public static final Predicate<Perk> HANDGUN_PERKS = perk -> switch (perk.type) {
|
||||||
case AMMO -> !perk.descriptionId.equals("butterfly_bullet");
|
case AMMO -> !perk.descriptionId.equals("butterfly_bullet") && perk != ModPerks.MICRO_MISSILE.get()
|
||||||
|
&& perk != ModPerks.LONGER_WIRE.get();
|
||||||
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get()
|
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get()
|
||||||
|| perk == ModPerks.FIELD_DOCTOR.get()
|
|| perk == ModPerks.FIELD_DOCTOR.get()
|
||||||
|| perk == ModPerks.SUBSISTENCE.get()
|
|| perk == ModPerks.SUBSISTENCE.get()
|
||||||
|
@ -227,8 +219,8 @@ public class PerkHelper {
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final Predicate<Perk> SNIPER_RIFLE_PERKS = perk -> switch (perk.type) {
|
public static final Predicate<Perk> SNIPER_RIFLE_PERKS = perk -> switch (perk.type) {
|
||||||
case AMMO -> !perk.descriptionId.equals("butterfly_bullet");
|
case AMMO -> !perk.descriptionId.equals("butterfly_bullet") && perk != ModPerks.MICRO_MISSILE.get()
|
||||||
|
&& perk != ModPerks.LONGER_WIRE.get();
|
||||||
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get()
|
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get()
|
||||||
|| perk == ModPerks.FOURTH_TIMES_CHARM.get()
|
|| perk == ModPerks.FOURTH_TIMES_CHARM.get()
|
||||||
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
||||||
|
@ -240,7 +232,7 @@ public class PerkHelper {
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final Predicate<Perk> SMG_PERKS = perk -> switch (perk.type) {
|
public static final Predicate<Perk> SMG_PERKS = perk -> switch (perk.type) {
|
||||||
case AMMO -> true;
|
case AMMO -> perk != ModPerks.MICRO_MISSILE.get() && perk != ModPerks.LONGER_WIRE.get();
|
||||||
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get()
|
case FUNCTIONAL -> perk == ModPerks.HEAL_CLIP.get()
|
||||||
|| perk == ModPerks.FOURTH_TIMES_CHARM.get()
|
|| perk == ModPerks.FOURTH_TIMES_CHARM.get()
|
||||||
|| perk == ModPerks.SUBSISTENCE.get()
|
|| perk == ModPerks.SUBSISTENCE.get()
|
||||||
|
@ -255,8 +247,7 @@ public class PerkHelper {
|
||||||
};
|
};
|
||||||
|
|
||||||
public static final Predicate<Perk> MACHINE_GUN_PERKS = perk -> switch (perk.type) {
|
public static final Predicate<Perk> MACHINE_GUN_PERKS = perk -> switch (perk.type) {
|
||||||
case AMMO -> true;
|
case AMMO -> perk != ModPerks.MICRO_MISSILE.get() && perk != ModPerks.LONGER_WIRE.get();
|
||||||
|
|
||||||
case FUNCTIONAL -> perk == ModPerks.FOURTH_TIMES_CHARM.get()
|
case FUNCTIONAL -> perk == ModPerks.FOURTH_TIMES_CHARM.get()
|
||||||
|| perk == ModPerks.SUBSISTENCE.get()
|
|| perk == ModPerks.SUBSISTENCE.get()
|
||||||
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
||||||
|
@ -271,7 +262,5 @@ public class PerkHelper {
|
||||||
public static final Predicate<Perk> LAUNCHER_PERKS = perk -> perk == ModPerks.MONSTER_HUNTER.get()
|
public static final Predicate<Perk> LAUNCHER_PERKS = perk -> perk == ModPerks.MONSTER_HUNTER.get()
|
||||||
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
|| perk == ModPerks.POWERFUL_ATTRACTION.get()
|
||||||
|| perk == ModPerks.INTELLIGENT_CHIP.get()
|
|| perk == ModPerks.INTELLIGENT_CHIP.get()
|
||||||
|| perk == ModPerks.VORPAL_WEAPON.get()
|
|| perk == ModPerks.VORPAL_WEAPON.get();
|
||||||
|| perk == ModPerks.MICRO_MISSILE.get();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue