Darts are now darts.

This commit is contained in:
Sam 2022-01-21 18:53:10 -05:00
parent 40bb74c42f
commit 82c976919e
5 changed files with 29 additions and 6 deletions

View File

@ -7,7 +7,7 @@ BasicRanged(
knockback: 0,
energy_regen: 0,
),
projectile_body: Object(Arrow),
projectile_body: Object(Dart),
projectile_light: None,
projectile_speed: 80.0,
num_projectiles: 1,

View File

@ -819,4 +819,14 @@
central: ("armor.empty"),
)
),
Dart: (
bone0: (
offset: (-0.5, -5.5, -1.5),
central: ("weapon.projectile.dart"),
),
bone1: (
offset: (0.0, 0.0, 0.0),
central: ("armor.empty"),
)
),
})

BIN
assets/voxygen/voxel/weapon/projectile/dart.vox (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -94,6 +94,7 @@ make_case_elim!(
Coconut = 79,
SpitPoison = 80,
BoltIcicle = 81,
Dart = 82,
}
);
@ -104,7 +105,7 @@ impl Body {
}
}
pub const ALL_OBJECTS: [Body; 80] = [
pub const ALL_OBJECTS: [Body; 83] = [
Body::Arrow,
Body::Bomb,
Body::Scarecrow,
@ -185,6 +186,9 @@ pub const ALL_OBJECTS: [Body; 80] = [
Body::Apple,
Body::Hive,
Body::Coconut,
Body::SpitPoison,
Body::BoltIcicle,
Body::Dart,
];
impl From<Body> for super::Body {
@ -276,6 +280,7 @@ impl Body {
Body::Coconut => "coconut",
Body::SpitPoison => "spit_poison",
Body::BoltIcicle => "bolt_icicle",
Body::Dart => "dart",
}
}
@ -293,7 +298,9 @@ impl Body {
pub fn density(&self) -> Density {
let density = match self {
Body::Anvil | Body::Cauldron => IRON_DENSITY,
Body::Arrow | Body::ArrowSnake | Body::ArrowTurret | Body::MultiArrow => 500.0,
Body::Arrow | Body::ArrowSnake | Body::ArrowTurret | Body::MultiArrow | Body::Dart => {
500.0
},
Body::Bomb => 2000.0, // I have no idea what it's supposed to be
Body::Crate => 300.0, // let's say it's a lot of wood and maybe some contents
Body::Scarecrow => 900.0,
@ -310,7 +317,9 @@ impl Body {
let m = match self {
// I think MultiArrow is one of several arrows, not several arrows combined?
Body::Anvil => 100.0,
Body::Arrow | Body::ArrowSnake | Body::ArrowTurret | Body::MultiArrow => 0.003,
Body::Arrow | Body::ArrowSnake | Body::ArrowTurret | Body::MultiArrow | Body::Dart => {
0.003
},
Body::BedBlue => 50.0,
Body::Bedroll => 3.0,
Body::Bench => 100.0,
@ -388,7 +397,7 @@ impl Body {
pub fn dimensions(&self) -> Vec3<f32> {
match self {
Body::Arrow | Body::ArrowSnake | Body::MultiArrow | Body::ArrowTurret => {
Body::Arrow | Body::ArrowSnake | Body::MultiArrow | Body::ArrowTurret | Body::Dart => {
Vec3::new(0.01, 0.8, 0.01)
},
Body::BoltFire => Vec3::new(0.1, 0.1, 0.1),

View File

@ -274,7 +274,8 @@ impl Body {
| object::Body::FireworkRed
| object::Body::FireworkWhite
| object::Body::FireworkYellow
| object::Body::MultiArrow => {
| object::Body::MultiArrow
| object::Body::Dart => {
let dim = self.dimensions().map(|a| a * 0.5);
const CD: f32 = 0.02;
CD * PI * dim.x * dim.z