提取所有载具的伤害免疫
This commit is contained in:
parent
cd6bc52270
commit
45156fe81c
26 changed files with 1172 additions and 381 deletions
|
@ -3,12 +3,13 @@ package com.atsuishio.superbwarfare.entity.vehicle;
|
|||
import com.atsuishio.superbwarfare.Mod;
|
||||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.MortarShellEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.*;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.*;
|
||||
import com.atsuishio.superbwarfare.init.*;
|
||||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModParticleTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
import com.mojang.math.Axis;
|
||||
|
@ -30,7 +31,6 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.MoverType;
|
||||
|
@ -152,33 +152,7 @@ public class A10Entity extends ContainerMobileVehicleEntity implements GeoEntity
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(getHealth() > 0.1f ? 0.4f : 0.05f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(2.4f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.75f, ModDamageTypes.MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.25f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.85f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(15f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 0.25f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof MortarShellEntity) {
|
||||
return 1.25f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(7);
|
||||
.custom((source, damage) -> getSourceAngle(source, 0.25f) * damage * (getHealth() > 0.1f ? 0.4f : 0.05f));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -3,7 +3,7 @@ package com.atsuishio.superbwarfare.entity.vehicle;
|
|||
import com.atsuishio.superbwarfare.Mod;
|
||||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.*;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ContainerMobileVehicleEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.HelicopterEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ThirdPersonCameraPosition;
|
||||
|
@ -15,7 +15,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.tools.Ammo;
|
||||
import com.atsuishio.superbwarfare.tools.CustomExplosion;
|
||||
import com.atsuishio.superbwarfare.tools.InventoryTool;
|
||||
|
@ -33,7 +32,6 @@ import net.minecraft.sounds.SoundEvent;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
|
@ -130,45 +128,13 @@ public class Ah6Entity extends ContainerMobileVehicleEntity implements GeoEntity
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(getHealth() > 0.1f ? 0.7f : 0.05f)
|
||||
.multiply(0.2f, DamageTypes.ARROW)
|
||||
.multiply(0.4f, DamageTypes.TRIDENT)
|
||||
.multiply(0.4f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(0.4f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(0.4f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(0.4f, DamageTypes.PLAYER_ATTACK)
|
||||
.multiply(4, DamageTypes.LAVA)
|
||||
.multiply(4, DamageTypes.EXPLOSION)
|
||||
.multiply(4, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(0.8f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.16f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(10, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof CannonShellEntity) {
|
||||
return 0.9f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof SmallCannonShellEntity) {
|
||||
return 1.3f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 2.2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof RgoGrenadeEntity) {
|
||||
return 6f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof HandGrenadeEntity) {
|
||||
return 5f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof MortarShellEntity) {
|
||||
return 3f * damage;
|
||||
damage *= 2;
|
||||
}
|
||||
damage *= getHealth() > 0.1f ? 0.7f : 0.05f;
|
||||
return damage;
|
||||
})
|
||||
|
||||
.reduce(2);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -5,9 +5,6 @@ import com.atsuishio.superbwarfare.component.ModDataComponents;
|
|||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.C4Entity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.CannonShellEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.CannonEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.EnergyVehicleEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ThirdPersonCameraPosition;
|
||||
|
@ -17,7 +14,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
import net.minecraft.ChatFormatting;
|
||||
|
@ -35,7 +31,6 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.LivingEntity;
|
||||
|
@ -202,39 +197,13 @@ public class AnnihilatorEntity extends EnergyVehicleEntity implements GeoEntity,
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.1f)
|
||||
.immuneTo(DamageTypes.ARROW)
|
||||
.immuneTo(DamageTypes.TRIDENT)
|
||||
.immuneTo(DamageTypes.MOB_ATTACK)
|
||||
.immuneTo(DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.immuneTo(DamageTypes.MOB_PROJECTILE)
|
||||
.immuneTo(DamageTypes.PLAYER_ATTACK)
|
||||
.immuneTo(ModTags.DamageTypes.PROJECTILE)
|
||||
.immuneTo(ModDamageTypes.VEHICLE_STRIKE)
|
||||
.multiply(0.7f, DamageTypes.EXPLOSION)
|
||||
.multiply(0.2f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(0.2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.2f, ModDamageTypes.MINE)
|
||||
.multiply(0.24f, ModDamageTypes.LUNGE_MINE)
|
||||
.multiply(0.3f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.04f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 3) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof C4Entity) {
|
||||
return 10f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 8f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 3f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof CannonShellEntity) {
|
||||
return 3f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(12);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,8 +4,6 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.MortarShellEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.*;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.ProjectileWeapon;
|
||||
|
@ -15,7 +13,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.WgMissileWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.Ammo;
|
||||
import com.atsuishio.superbwarfare.tools.CustomExplosion;
|
||||
|
@ -36,7 +33,6 @@ import net.minecraft.server.level.ServerLevel;
|
|||
import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
|
@ -145,37 +141,13 @@ public class Bmp2Entity extends ContainerMobileVehicleEntity implements GeoEntit
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.2f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.7f, ModDamageTypes.MINE)
|
||||
.multiply(0.9f, ModDamageTypes.LUNGE_MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.1f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.7f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(8.5f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 0.4f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof MortarShellEntity) {
|
||||
return 1.1f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(8);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,7 +4,6 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.TargetEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.AutoAimable;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.CannonEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ContainerMobileVehicleEntity;
|
||||
|
@ -14,7 +13,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.SmallCannonShellWeapon;
|
|||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
||||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.item.ContainerBlockItem;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
import com.mojang.math.Axis;
|
||||
|
@ -31,7 +29,6 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.*;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.entity.projectile.Projectile;
|
||||
|
@ -180,30 +177,7 @@ public class Hpj11Entity extends ContainerMobileVehicleEntity implements GeoEnti
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.6f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(1.4f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(1f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.75f, ModDamageTypes.MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.25f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.85f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(10f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(8);
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,8 +4,10 @@ import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
|||
import com.atsuishio.superbwarfare.entity.TargetEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.AutoAimable;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.EnergyVehicleEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.init.*;
|
||||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModEntities;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.item.ContainerBlockItem;
|
||||
import com.atsuishio.superbwarfare.tools.CustomExplosion;
|
||||
import com.atsuishio.superbwarfare.tools.EntityFindUtil;
|
||||
|
@ -24,7 +26,6 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.*;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.entity.projectile.Projectile;
|
||||
|
@ -127,28 +128,6 @@ public class LaserTowerEntity extends EnergyVehicleEntity implements GeoEntity,
|
|||
return this.entityData.get(OWNER_UUID).orElse(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.1f, DamageTypes.ARROW)
|
||||
.multiply(0.2f, DamageTypes.TRIDENT)
|
||||
.multiply(0.2f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(0.2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(0.4f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(0.4f, DamageTypes.PLAYER_ATTACK)
|
||||
.multiply(1.5f, DamageTypes.EXPLOSION)
|
||||
.multiply(1.5f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(0.5f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(0.5f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.5f, ModDamageTypes.MINE)
|
||||
.multiply(0.5f, ModDamageTypes.LUNGE_MINE)
|
||||
.multiply(0.6f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.5f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.8f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(2f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.reduce(1);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NotNull InteractionResult interact(Player player, @NotNull InteractionHand hand) {
|
||||
ItemStack stack = player.getMainHandItem();
|
||||
|
|
|
@ -4,8 +4,6 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.MortarShellEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ContainerMobileVehicleEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.LandArmorEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ThirdPersonCameraPosition;
|
||||
|
@ -17,7 +15,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.Ammo;
|
||||
import com.atsuishio.superbwarfare.tools.CustomExplosion;
|
||||
|
@ -35,7 +32,6 @@ import net.minecraft.server.level.ServerLevel;
|
|||
import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
|
@ -125,36 +121,13 @@ public class Lav150Entity extends ContainerMobileVehicleEntity implements GeoEnt
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.2f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(2.4f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.75f, ModDamageTypes.MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.25f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.85f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(10f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 0.25f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 3f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof MortarShellEntity) {
|
||||
return 1.25f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(7);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,7 +4,6 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.component.ModDataComponents;
|
||||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.CannonEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ThirdPersonCameraPosition;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.VehicleEntity;
|
||||
|
@ -14,7 +13,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.item.common.ammo.CannonShellItem;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
|
@ -30,7 +28,6 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.MoverType;
|
||||
|
@ -182,30 +179,7 @@ public class Mk42Entity extends VehicleEntity implements GeoEntity, CannonEntity
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.2f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(2.4f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.75f, ModDamageTypes.MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.25f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.85f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(10f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(8);
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,7 +4,6 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.component.ModDataComponents;
|
||||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.CannonEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.ThirdPersonCameraPosition;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.VehicleEntity;
|
||||
|
@ -14,7 +13,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.item.common.ammo.CannonShellItem;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
|
@ -30,7 +28,6 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.MoverType;
|
||||
|
@ -209,30 +206,7 @@ public class Mle1934Entity extends VehicleEntity implements GeoEntity, CannonEnt
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.2f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(2.4f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.75f, ModDamageTypes.MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.25f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.85f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(10f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(8);
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,14 +4,12 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.GunGrenadeEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.*;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.LaserWeapon;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
||||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ClientIndicatorMessage;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
|
@ -35,7 +33,6 @@ import net.minecraft.server.level.ServerPlayer;
|
|||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.sounds.SoundSource;
|
||||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.MoverType;
|
||||
|
@ -125,34 +122,13 @@ public class PrismTankEntity extends ContainerMobileVehicleEntity implements Geo
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.2f)
|
||||
.multiply(1.5f, DamageTypes.ARROW)
|
||||
.multiply(1.5f, DamageTypes.TRIDENT)
|
||||
.multiply(2.5f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(2f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(1.5f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(12.5f, DamageTypes.LAVA)
|
||||
.multiply(6f, DamageTypes.EXPLOSION)
|
||||
.multiply(6f, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(2f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.7f, ModDamageTypes.MINE)
|
||||
.multiply(0.9f, ModDamageTypes.LUNGE_MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.1f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(0.7f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.multiply(4.5f, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 0.4f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(9);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -3,7 +3,7 @@ package com.atsuishio.superbwarfare.entity.vehicle;
|
|||
import com.atsuishio.superbwarfare.Mod;
|
||||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.*;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.*;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.ProjectileWeapon;
|
||||
|
@ -11,7 +11,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.Ammo;
|
||||
import com.atsuishio.superbwarfare.tools.CustomExplosion;
|
||||
|
@ -26,7 +25,6 @@ import net.minecraft.server.level.ServerLevel;
|
|||
import net.minecraft.server.level.ServerPlayer;
|
||||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
|
@ -103,44 +101,12 @@ public class SpeedboatEntity extends ContainerMobileVehicleEntity implements Geo
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(0.5f)
|
||||
.multiply(0.2f, DamageTypes.ARROW)
|
||||
.multiply(0.4f, DamageTypes.TRIDENT)
|
||||
.multiply(0.4f, DamageTypes.MOB_ATTACK)
|
||||
.multiply(0.4f, DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.multiply(0.4f, DamageTypes.MOB_PROJECTILE)
|
||||
.multiply(0.4f, DamageTypes.PLAYER_ATTACK)
|
||||
.multiply(4, DamageTypes.LAVA)
|
||||
.multiply(4, DamageTypes.EXPLOSION)
|
||||
.multiply(4, DamageTypes.PLAYER_EXPLOSION)
|
||||
.multiply(0.8f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.16f, ModTags.DamageTypes.PROJECTILE)
|
||||
.multiply(2, ModDamageTypes.VEHICLE_STRIKE)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof CannonShellEntity) {
|
||||
return 0.9f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof SmallCannonShellEntity) {
|
||||
return 1.3f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 2.2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof RgoGrenadeEntity) {
|
||||
return 6f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof HandGrenadeEntity) {
|
||||
return 5f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof MortarShellEntity) {
|
||||
return 4f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(2);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -4,7 +4,6 @@ import com.atsuishio.superbwarfare.Mod;
|
|||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.MobileVehicleEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.tools.CustomExplosion;
|
||||
|
@ -67,12 +66,6 @@ public class WheelChairEntity extends MobileVehicleEntity implements GeoEntity {
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.multiply(2, ModDamageTypes.VEHICLE_STRIKE);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addAdditionalSaveData(CompoundTag compound) {
|
||||
super.addAdditionalSaveData(compound);
|
||||
|
|
|
@ -3,7 +3,8 @@ package com.atsuishio.superbwarfare.entity.vehicle;
|
|||
import com.atsuishio.superbwarfare.Mod;
|
||||
import com.atsuishio.superbwarfare.config.server.ExplosionConfig;
|
||||
import com.atsuishio.superbwarfare.config.server.VehicleConfig;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.*;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.AerialBombEntity;
|
||||
import com.atsuishio.superbwarfare.entity.projectile.SwarmDroneEntity;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.base.*;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
|
||||
import com.atsuishio.superbwarfare.entity.vehicle.weapon.CannonShellWeapon;
|
||||
|
@ -13,7 +14,6 @@ import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
|
|||
import com.atsuishio.superbwarfare.init.ModDamageTypes;
|
||||
import com.atsuishio.superbwarfare.init.ModItems;
|
||||
import com.atsuishio.superbwarfare.init.ModSounds;
|
||||
import com.atsuishio.superbwarfare.init.ModTags;
|
||||
import com.atsuishio.superbwarfare.network.message.receive.ShakeClientMessage;
|
||||
import com.atsuishio.superbwarfare.tools.*;
|
||||
import com.mojang.blaze3d.platform.GlStateManager;
|
||||
|
@ -39,7 +39,6 @@ import net.minecraft.server.level.ServerPlayer;
|
|||
import net.minecraft.sounds.SoundEvent;
|
||||
import net.minecraft.sounds.SoundSource;
|
||||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.damagesource.DamageTypes;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraft.world.entity.MoverType;
|
||||
|
@ -212,45 +211,13 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti
|
|||
@Override
|
||||
public DamageModifier getDamageModifier() {
|
||||
return super.getDamageModifier()
|
||||
.immuneTo(DamageTypes.ARROW)
|
||||
.immuneTo(DamageTypes.TRIDENT)
|
||||
.immuneTo(DamageTypes.MOB_ATTACK)
|
||||
.immuneTo(DamageTypes.MOB_ATTACK_NO_AGGRO)
|
||||
.immuneTo(DamageTypes.MOB_PROJECTILE)
|
||||
.immuneTo(DamageTypes.PLAYER_ATTACK)
|
||||
.immuneTo(ModTags.DamageTypes.PROJECTILE)
|
||||
.immuneTo(ModDamageTypes.VEHICLE_STRIKE)
|
||||
.multiply(0.2f)
|
||||
.multiply(2f, DamageTypes.EXPLOSION)
|
||||
.multiply(0.75f, ModDamageTypes.CUSTOM_EXPLOSION)
|
||||
.multiply(0.75f, ModDamageTypes.PROJECTILE_BOOM)
|
||||
.multiply(0.5f, ModDamageTypes.MINE)
|
||||
.multiply(0.5f, ModDamageTypes.LUNGE_MINE)
|
||||
.multiply(1.5f, ModDamageTypes.CANNON_FIRE)
|
||||
.multiply(0.15f, ModTags.DamageTypes.PROJECTILE_ABSOLUTE)
|
||||
.custom((source, damage) -> getSourceAngle(source, 1f) * damage)
|
||||
.custom((source, damage) -> {
|
||||
if (source.getDirectEntity() instanceof AerialBombEntity) {
|
||||
return 3f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof SmallCannonShellEntity) {
|
||||
return 0.375f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof C4Entity) {
|
||||
return 4f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof RpgRocketEntity) {
|
||||
return 1.5f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof GunGrenadeEntity) {
|
||||
return 2f * damage;
|
||||
}
|
||||
if (source.getDirectEntity() instanceof MortarShellEntity) {
|
||||
return 2f * damage;
|
||||
}
|
||||
return damage;
|
||||
})
|
||||
.reduce(9);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -3,5 +3,96 @@
|
|||
"MaxHealth": 350,
|
||||
"MaxEnergy": 10000000,
|
||||
"UpStep": 0.5,
|
||||
"allowFreeCam": true
|
||||
"allowFreeCam": true,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.4,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.25,
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.85,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 15,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.25,
|
||||
"Source": "@superbwarfare:mortar_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 7
|
||||
}
|
||||
]
|
||||
}
|
|
@ -3,5 +3,101 @@
|
|||
"MaxHealth": 250,
|
||||
"MaxEnergy": 5000000,
|
||||
"UpStep": 1.1,
|
||||
"allowFreeCam": true
|
||||
"allowFreeCam": true,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:player_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.8,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.16,
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 10,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.9,
|
||||
"Source": "@superbwarfare:cannon_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.3,
|
||||
"Source": "@superbwarfare:small_cannon_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.2,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "@superbwarfare:rgo_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 5,
|
||||
"Source": "@superbwarfare:hand_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 3,
|
||||
"Source": "@superbwarfare:mortar_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 2
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,5 +1,97 @@
|
|||
{
|
||||
"ID": "superbwarfare:annihilator",
|
||||
"MaxHealth": 1200,
|
||||
"MaxEnergy": 20000000
|
||||
"MaxEnergy": 20000000,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.1
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:player_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.7,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.24,
|
||||
"Source": "superbwarfare:lunge_mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.3,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.04,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 10,
|
||||
"Source": "@superbwarfare:c4"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 3,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 3,
|
||||
"Source": "@superbwarfare:cannon_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 12
|
||||
}
|
||||
]
|
||||
}
|
|
@ -2,5 +2,105 @@
|
|||
"ID": "superbwarfare:bmp_2",
|
||||
"MaxHealth": 300,
|
||||
"MaxEnergy": 5000000,
|
||||
"UpStep": 2.25
|
||||
"UpStep": 2.25,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.7,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.9,
|
||||
"Source": "superbwarfare:lunge_mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.1,
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.7,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 8.5,
|
||||
"Source": "#superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.1,
|
||||
"Source": "@superbwarfare:mortar_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 8
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,5 +1,95 @@
|
|||
{
|
||||
"ID": "superbwarfare:hpj_11",
|
||||
"MaxHealth": 350,
|
||||
"MaxEnergy": 5000000
|
||||
"MaxEnergy": 5000000,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.6
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.4,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.25,
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.85,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 10,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 8
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,5 +1,91 @@
|
|||
{
|
||||
"ID": "superbwarfare:laser_tower",
|
||||
"MaxHealth": 100,
|
||||
"MaxEnergy": 500000
|
||||
"MaxEnergy": 500000,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.1,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:player_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "superbwarfare:lunge_mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.6,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.8,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 1
|
||||
}
|
||||
]
|
||||
}
|
|
@ -2,5 +2,100 @@
|
|||
"ID": "superbwarfare:lav_150",
|
||||
"MaxHealth": 250,
|
||||
"MaxEnergy": 5000000,
|
||||
"UpStep": 1.5
|
||||
"UpStep": 1.5,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.4,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.25,
|
||||
"Source": "#superbwarfare:projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.85,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 10,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.25,
|
||||
"Source": "@superbwarfare:mortar_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 7
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,4 +1,94 @@
|
|||
{
|
||||
"ID": "superbwarfare:mk_42",
|
||||
"MaxHealth": 350
|
||||
"MaxHealth": 350,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.4,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.25,
|
||||
"Source": "#superbwarfare:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.85,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 10,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 8
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,4 +1,94 @@
|
|||
{
|
||||
"ID": "superbwarfare:mle_1934",
|
||||
"MaxHealth": 350
|
||||
"MaxHealth": 350,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.4,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.25,
|
||||
"Source": "#superbwarfare:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.85,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 10,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 8
|
||||
}
|
||||
]
|
||||
}
|
|
@ -2,5 +2,100 @@
|
|||
"ID": "superbwarfare:prism_tank",
|
||||
"MaxHealth": 400,
|
||||
"MaxEnergy": 20000000,
|
||||
"UpStep": 2.25
|
||||
"UpStep": 2.25,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.5,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 12.5,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.7,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.9,
|
||||
"Source": "superbwarfare:lunge_mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.1,
|
||||
"Source": "#superbwarfare:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.7,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4.5,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 9
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,5 +1,105 @@
|
|||
{
|
||||
"ID": "superbwarfare:speedboat",
|
||||
"MaxHealth": 200,
|
||||
"MaxEnergy": 500000
|
||||
"MaxEnergy": 500000,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2,
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.4,
|
||||
"Source": "minecraft:player_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "minecraft:lava"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "minecraft:player_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.8,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.16,
|
||||
"Source": "#superbwarfare:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.9,
|
||||
"Source": "@superbwarfare:cannon_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.3,
|
||||
"Source": "@superbwarfare:small_cannon_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2.2,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 6,
|
||||
"Source": "@superbwarfare:rgo_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 5,
|
||||
"Source": "@superbwarfare:hand_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "@superbwarfare:mortar_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 2
|
||||
}
|
||||
]
|
||||
}
|
|
@ -2,5 +2,12 @@
|
|||
"ID": "superbwarfare:wheel_chair",
|
||||
"MaxHealth": 30,
|
||||
"MaxEnergy": 24000,
|
||||
"UpStep": 1.1
|
||||
"UpStep": 1.1,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -2,5 +2,107 @@
|
|||
"ID": "superbwarfare:yx_100",
|
||||
"MaxHealth": 500,
|
||||
"MaxEnergy": 20000000,
|
||||
"UpStep": 2.25
|
||||
"UpStep": 2.25,
|
||||
"DamageModifiers": [
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:arrow"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:trident"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:mob_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:mob_attack_no_aggro"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:mob_projectile"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "minecraft:player_attack"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "#superbwarfare:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Immunity",
|
||||
"Source": "superbwarfare:vehicle_strike"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.2
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "minecraft:explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:custom_explosion"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.75,
|
||||
"Source": "superbwarfare:projectile_boom"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "superbwarfare:mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.5,
|
||||
"Source": "superbwarfare:lunge_mine"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "superbwarfare:cannon_fire"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.15,
|
||||
"Source": "#superbwarfare:projectile_absolute"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 0.375,
|
||||
"Source": "@superbwarfare:small_cannon_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 4,
|
||||
"Source": "@superbwarfare:c4"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 1.5,
|
||||
"Source": "@superbwarfare:rpg_rocket"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "@superbwarfare:gun_grenade"
|
||||
},
|
||||
{
|
||||
"Type": "Multiply",
|
||||
"Value": 2,
|
||||
"Source": "@superbwarfare:mortar_shell"
|
||||
},
|
||||
{
|
||||
"Type": "Reduce",
|
||||
"Value": 9
|
||||
}
|
||||
]
|
||||
}
|
Loading…
Add table
Reference in a new issue