修改效果弹的持续时间
This commit is contained in:
parent
bed10267ba
commit
8d7b0a11b6
3 changed files with 12 additions and 12 deletions
|
@ -371,11 +371,11 @@ public class GunEventHandler {
|
|||
if (perk instanceof AmmoPerk ammoPerk) {
|
||||
int level = PerkHelper.getItemPerkLevel(perk, heldItem);
|
||||
|
||||
bypassArmorRate = bypassArmorRate + ammoPerk.bypassArmorRate + (perk == ModPerks.AP_BULLET.get()? 0.05f * (level - 1) : 0);
|
||||
bypassArmorRate += ammoPerk.bypassArmorRate + (perk == ModPerks.AP_BULLET.get() ? 0.05f * (level - 1) : 0);
|
||||
projectile.setRGB(ammoPerk.rgb);
|
||||
|
||||
if (ammoPerk.mobEffect.get() != null) {
|
||||
projectile.effect(() -> new MobEffectInstance(ammoPerk.mobEffect.get(), 100, level - 1));
|
||||
projectile.effect(() -> new MobEffectInstance(ammoPerk.mobEffect.get(), 70 + 30 * level, level - 1));
|
||||
}
|
||||
}
|
||||
bypassArmorRate = Mth.clamp(bypassArmorRate, 0, 1);
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package net.mcreator.superbwarfare.event;
|
||||
|
||||
import net.mcreator.superbwarfare.init.ModTags;
|
||||
import net.mcreator.superbwarfare.item.PerkItem;
|
||||
import net.mcreator.superbwarfare.perk.PerkHelper;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
|
@ -16,7 +17,7 @@ public class TempEventHandler {
|
|||
ItemStack left = event.getLeft();
|
||||
ItemStack right = event.getRight();
|
||||
|
||||
if (right.getItem() instanceof PerkItem perkItem) {
|
||||
if (right.getItem() instanceof PerkItem perkItem && left.is(ModTags.Items.GUN)) {
|
||||
ItemStack output = left.copy();
|
||||
|
||||
int level = PerkHelper.getItemPerkLevel(perkItem.getPerk(), output);
|
||||
|
|
|
@ -168,11 +168,11 @@ public class FireMessage {
|
|||
if (perk instanceof AmmoPerk ammoPerk) {
|
||||
int pLevel = PerkHelper.getItemPerkLevel(perk, stack);
|
||||
|
||||
bypassArmorRate = bypassArmorRate + ammoPerk.bypassArmorRate + (perk == ModPerks.AP_BULLET.get()? 0.05f * (pLevel - 1) : 0);
|
||||
bypassArmorRate += ammoPerk.bypassArmorRate + (perk == ModPerks.AP_BULLET.get() ? 0.05f * (pLevel - 1) : 0);
|
||||
projectile.setRGB(ammoPerk.rgb);
|
||||
|
||||
if (ammoPerk.mobEffect.get() != null) {
|
||||
projectile.effect(() -> new MobEffectInstance(ammoPerk.mobEffect.get(), 100, pLevel - 1));
|
||||
projectile.effect(() -> new MobEffectInstance(ammoPerk.mobEffect.get(), 70 + 30 * pLevel, pLevel - 1));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -252,7 +252,6 @@ public class FireMessage {
|
|||
boolean zoom = player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zoom;
|
||||
float bypassArmorRate = (float) heldItem.getOrCreateTag().getDouble("BypassesArmor");
|
||||
|
||||
|
||||
ProjectileEntity projectile = new ProjectileEntity(player.level())
|
||||
.shooter(player)
|
||||
.headShot(headshot)
|
||||
|
@ -263,15 +262,15 @@ public class FireMessage {
|
|||
if (perk instanceof AmmoPerk ammoPerk) {
|
||||
int level = PerkHelper.getItemPerkLevel(perk, heldItem);
|
||||
|
||||
bypassArmorRate = bypassArmorRate + ammoPerk.bypassArmorRate + (perk == ModPerks.AP_BULLET.get()? 0.05f * (level - 1) : 0);
|
||||
bypassArmorRate += ammoPerk.bypassArmorRate + (perk == ModPerks.AP_BULLET.get() ? 0.05f * (level - 1) : 0);
|
||||
projectile.setRGB(ammoPerk.rgb);
|
||||
|
||||
if (ammoPerk.mobEffect.get() != null) {
|
||||
projectile.effect(() -> new MobEffectInstance(ammoPerk.mobEffect.get(), 100, level - 1));
|
||||
projectile.effect(() -> new MobEffectInstance(ammoPerk.mobEffect.get(), 70 + 30 * level, level - 1));
|
||||
}
|
||||
}
|
||||
bypassArmorRate = Mth.clamp(bypassArmorRate, 0, 1);
|
||||
|
||||
bypassArmorRate = Mth.clamp(bypassArmorRate, 0, 1);
|
||||
projectile.bypassArmorRate(bypassArmorRate);
|
||||
|
||||
if (perk == ModPerks.SILVER_BULLET.get()) {
|
||||
|
|
Loading…
Add table
Reference in a new issue