添加载具武器图标绑定

This commit is contained in:
17146 2025-03-11 01:58:59 +08:00
parent 491f610980
commit b430f5b8a5
17 changed files with 40 additions and 10 deletions

View file

@ -107,13 +107,13 @@ public class Ah6Entity extends ContainerMobileVehicleEntity implements GeoEntity
.zoom(false)
.heBullet(1)
.bypassArmorRate(0.1f)
.sound(ModSounds.INTO_CANNON.get()),
.sound(ModSounds.INTO_CANNON.get())
.icon(ModUtils.loc("textures/screens/vehicle_weapon/cannon_20mm.png")),
new HeliRocketWeapon()
.damage(VehicleConfig.AH_6_ROCKET_DAMAGE.get())
.explosionDamage(VehicleConfig.AH_6_ROCKET_EXPLOSION_DAMAGE.get())
.explosionRadius(VehicleConfig.AH_6_ROCKET_EXPLOSION_RADIUS.get())
.sound(ModSounds.INTO_MISSILE.get()),
}
};
}

View file

@ -6,7 +6,7 @@ import com.atsuishio.superbwarfare.config.server.VehicleConfig;
import com.atsuishio.superbwarfare.entity.vehicle.base.CannonEntity;
import com.atsuishio.superbwarfare.entity.vehicle.base.EnergyVehicleEntity;
import com.atsuishio.superbwarfare.entity.vehicle.damage.DamageModifier;
import com.atsuishio.superbwarfare.entity.vehicle.weapon.EmptyWeapon;
import com.atsuishio.superbwarfare.entity.vehicle.weapon.LaserWeapon;
import com.atsuishio.superbwarfare.entity.vehicle.weapon.VehicleWeapon;
import com.atsuishio.superbwarfare.init.*;
import com.atsuishio.superbwarfare.network.message.ShakeClientMessage;
@ -88,7 +88,7 @@ public class AnnihilatorEntity extends EnergyVehicleEntity implements GeoEntity,
public VehicleWeapon[][] getAllWeapons() {
return new VehicleWeapon[][]{
new VehicleWeapon[]{
new EmptyWeapon()
new LaserWeapon()
}
};
}

View file

@ -104,12 +104,13 @@ public class Bmp2Entity extends ContainerMobileVehicleEntity implements GeoEntit
.explosionDamage(VehicleConfig.BMP_2_CANNON_EXPLOSION_DAMAGE.get())
.explosionRadius(VehicleConfig.BMP_2_CANNON_EXPLOSION_RADIUS.get().floatValue())
.sound(ModSounds.INTO_MISSILE.get())
,
.icon(ModUtils.loc("textures/screens/vehicle_weapon/cannon_30mm.png")),
new ProjectileWeapon()
.damage(9.5f)
.headShot(2)
.zoom(false)
.sound(ModSounds.INTO_CANNON.get()),
.sound(ModSounds.INTO_CANNON.get())
.icon(ModUtils.loc("textures/screens/vehicle_weapon/gun_7_62mm.png")),
new WgMissileWeapon()
.damage(ExplosionConfig.WIRE_GUIDE_MISSILE_DAMAGE.get())
.explosionDamage(ExplosionConfig.WIRE_GUIDE_MISSILE_EXPLOSION_DAMAGE.get())

View file

@ -101,12 +101,14 @@ public class Lav150Entity extends ContainerMobileVehicleEntity implements GeoEnt
.damage(VehicleConfig.LAV_150_CANNON_DAMAGE.get())
.explosionDamage(VehicleConfig.LAV_150_CANNON_EXPLOSION_DAMAGE.get())
.explosionRadius(VehicleConfig.LAV_150_CANNON_EXPLOSION_RADIUS.get().floatValue())
.sound(ModSounds.INTO_MISSILE.get()),
.sound(ModSounds.INTO_MISSILE.get())
.icon(ModUtils.loc("textures/screens/vehicle_weapon/cannon_20mm.png")),
new ProjectileWeapon()
.damage(9.5f)
.headShot(2)
.zoom(false)
.sound(ModSounds.INTO_CANNON.get()),
.sound(ModSounds.INTO_CANNON.get())
.icon(ModUtils.loc("textures/screens/vehicle_weapon/gun_7_62mm.png")),
}
};
}

View file

@ -93,6 +93,7 @@ public class SpeedboatEntity extends ContainerMobileVehicleEntity implements Geo
.damage(VehicleConfig.SPEEDBOAT_GUN_DAMAGE.get())
.headShot(2)
.zoom(false)
.icon(ModUtils.loc("textures/screens/vehicle_weapon/gun_12_7mm.png"))
}
};
}

View file

@ -144,7 +144,8 @@ public class Yx100Entity extends ContainerMobileVehicleEntity implements GeoEnti
.headShot(2)
.zoom(false)
.bypassArmorRate(0.4f)
.ammo(ModItems.HEAVY_AMMO.get()),
.ammo(ModItems.HEAVY_AMMO.get())
.icon(ModUtils.loc("textures/screens/vehicle_weapon/gun_12_7mm.png")),
}
};
}

View file

@ -1,11 +1,17 @@
package com.atsuishio.superbwarfare.entity.vehicle.weapon;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.entity.projectile.HeliRocketEntity;
import net.minecraft.world.entity.LivingEntity;
public class HeliRocketWeapon extends VehicleWeapon {
public float damage = 140, explosionDamage = 60, explosionRadius = 5;
public HeliRocketWeapon() {
this.icon = ModUtils.loc("textures/screens/vehicle_weapon/rocket_70mm.png");
}
public HeliRocketWeapon damage(float damage) {
this.damage = damage;
return this;

View file

@ -0,0 +1,11 @@
package com.atsuishio.superbwarfare.entity.vehicle.weapon;
import com.atsuishio.superbwarfare.ModUtils;
public class LaserWeapon extends VehicleWeapon {
public LaserWeapon() {
this.icon = ModUtils.loc("textures/screens/vehicle_weapon/laser.png");
}
}

View file

@ -4,6 +4,7 @@ import com.atsuishio.superbwarfare.entity.projectile.ProjectileEntity;
import net.minecraft.world.entity.LivingEntity;
public class ProjectileWeapon extends VehicleWeapon {
public float headShot, damage, bypassArmorRate;
public boolean zoom;
public int jhpLevel, heLevel;

View file

@ -4,6 +4,7 @@ import com.atsuishio.superbwarfare.entity.projectile.SmallCannonShellEntity;
import net.minecraft.world.entity.LivingEntity;
public class SmallCannonShellWeapon extends VehicleWeapon {
public float damage = 40, explosionDamage = 80, explosionRadius = 5;
public SmallCannonShellWeapon damage(float damage) {

View file

@ -1,11 +1,17 @@
package com.atsuishio.superbwarfare.entity.vehicle.weapon;
import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.entity.projectile.WgMissileEntity;
import net.minecraft.world.entity.LivingEntity;
public class WgMissileWeapon extends VehicleWeapon {
public float damage = 250, explosionDamage = 200, explosionRadius = 10;
public WgMissileWeapon() {
this.icon = ModUtils.loc("textures/screens/vehicle_weapon/missile_9m113.png");
}
public WgMissileWeapon damage(float damage) {
this.damage = damage;
return this;