mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Merge branch 'slipped/substates' into 'master'
substates See merge request veloren/veloren!319
This commit is contained in:
commit
e1ede61c06
BIN
assets/voxygen/voxel/weapon/dagger/dagger_rusty.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/weapon/dagger/dagger_rusty.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/weapon/hammer/rusty_2h.vox
(Stored with Git LFS)
BIN
assets/voxygen/voxel/weapon/hammer/rusty_2h.vox
(Stored with Git LFS)
Binary file not shown.
@ -2,6 +2,7 @@ use super::{
|
|||||||
super::{Animation, SkeletonAttr},
|
super::{Animation, SkeletonAttr},
|
||||||
CharacterSkeleton,
|
CharacterSkeleton,
|
||||||
};
|
};
|
||||||
|
use common::comp::item::Weapon;
|
||||||
use std::{f32::consts::PI, ops::Mul};
|
use std::{f32::consts::PI, ops::Mul};
|
||||||
use vek::*;
|
use vek::*;
|
||||||
|
|
||||||
@ -60,23 +61,176 @@ impl Animation for CidleAnimation {
|
|||||||
next.shorts.ori = Quaternion::rotation_x(0.0);
|
next.shorts.ori = Quaternion::rotation_x(0.0);
|
||||||
next.shorts.scale = Vec3::one();
|
next.shorts.scale = Vec3::one();
|
||||||
|
|
||||||
next.l_hand.offset = Vec3::new(
|
match Weapon::Hammer {
|
||||||
-6.0 + wave_ultra_slow_cos * 1.0,
|
//TODO: Inventory
|
||||||
3.5 + wave_ultra_slow_cos * 0.5,
|
Weapon::Sword => {
|
||||||
0.0 + wave_ultra_slow * 1.0,
|
next.l_hand.offset = Vec3::new(
|
||||||
);
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.5 + wave_ultra_slow_cos * 0.5,
|
||||||
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
next.l_hand.scale = Vec3::one() * 1.01;
|
);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
next.r_hand.offset = Vec3::new(
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
-6.0 + wave_ultra_slow_cos * 1.0,
|
next.r_hand.offset = Vec3::new(
|
||||||
3.0 + wave_ultra_slow_cos * 0.5,
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
-2.0 + wave_ultra_slow * 1.0,
|
3.0 + wave_ultra_slow_cos * 0.5,
|
||||||
);
|
-2.0 + wave_ultra_slow * 1.0,
|
||||||
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
);
|
||||||
next.r_hand.scale = Vec3::one() * 1.01;
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x + wave_ultra_slow_cos * 1.0,
|
||||||
|
4.5 + skeleton_attr.weapon_y + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Axe => {
|
||||||
|
next.l_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.5 + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.0 + wave_ultra_slow_cos * 0.5,
|
||||||
|
-2.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x + wave_ultra_slow_cos * 1.0,
|
||||||
|
4.5 + skeleton_attr.weapon_y + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Hammer => {
|
||||||
|
next.l_hand.offset = Vec3::new(-7.0, 8.25, 2.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(wave_ultra_slow * 0.2);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(7.0, 7.0, -3.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(wave_ultra_slow * 0.2);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
5.0 + skeleton_attr.weapon_x,
|
||||||
|
8.75 + skeleton_attr.weapon_y,
|
||||||
|
-2.5,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(wave_ultra_slow * 0.2);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Staff => {
|
||||||
|
next.l_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.5 + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.0 + wave_ultra_slow_cos * 0.5,
|
||||||
|
-2.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x + wave_ultra_slow_cos * 1.0,
|
||||||
|
4.5 + skeleton_attr.weapon_y + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::SwordShield => {
|
||||||
|
next.l_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.5 + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.0 + wave_ultra_slow_cos * 0.5,
|
||||||
|
-2.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x + wave_ultra_slow_cos * 1.0,
|
||||||
|
4.5 + skeleton_attr.weapon_y + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Bow => {
|
||||||
|
next.l_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.5 + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.0 + wave_ultra_slow_cos * 0.5,
|
||||||
|
-2.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x + wave_ultra_slow_cos * 1.0,
|
||||||
|
4.5 + skeleton_attr.weapon_y + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Daggers => {
|
||||||
|
next.l_hand.offset = Vec3::new(
|
||||||
|
-6.0 + wave_ultra_slow_cos * 1.0,
|
||||||
|
3.5 + wave_ultra_slow_cos * 0.5,
|
||||||
|
0.0 + wave_ultra_slow * 1.0,
|
||||||
|
);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
}
|
||||||
next.l_foot.offset = Vec3::new(-3.4, -1.5, 8.0 + wave_slow * 0.2);
|
next.l_foot.offset = Vec3::new(-3.4, -1.5, 8.0 + wave_slow * 0.2);
|
||||||
next.l_foot.ori = Quaternion::rotation_x(wave_ultra_slow_cos * 0.015);
|
next.l_foot.ori = Quaternion::rotation_x(wave_ultra_slow_cos * 0.015);
|
||||||
next.l_foot.scale = Vec3::one();
|
next.l_foot.scale = Vec3::one();
|
||||||
@ -85,16 +239,6 @@ impl Animation for CidleAnimation {
|
|||||||
next.r_foot.ori = Quaternion::rotation_x(wave_ultra_slow * 0.015);
|
next.r_foot.ori = Quaternion::rotation_x(wave_ultra_slow * 0.015);
|
||||||
next.r_foot.scale = Vec3::one();
|
next.r_foot.scale = Vec3::one();
|
||||||
|
|
||||||
next.weapon.offset = Vec3::new(
|
|
||||||
-6.0 + skeleton_attr.weapon_x + wave_ultra_slow_cos * 1.0,
|
|
||||||
4.5 + skeleton_attr.weapon_y + wave_ultra_slow_cos * 0.5,
|
|
||||||
0.0 + wave_ultra_slow * 1.0,
|
|
||||||
);
|
|
||||||
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
|
||||||
* Quaternion::rotation_y(0.0)
|
|
||||||
* Quaternion::rotation_z(0.0);
|
|
||||||
next.weapon.scale = Vec3::one();
|
|
||||||
|
|
||||||
next.l_shoulder.offset = Vec3::new(-10.0, -3.2, 2.5);
|
next.l_shoulder.offset = Vec3::new(-10.0, -3.2, 2.5);
|
||||||
next.l_shoulder.ori = Quaternion::rotation_x(0.0);
|
next.l_shoulder.ori = Quaternion::rotation_x(0.0);
|
||||||
next.l_shoulder.scale = Vec3::one() * 1.04;
|
next.l_shoulder.scale = Vec3::one() * 1.04;
|
||||||
|
@ -2,6 +2,7 @@ use super::{
|
|||||||
super::{Animation, SkeletonAttr},
|
super::{Animation, SkeletonAttr},
|
||||||
CharacterSkeleton,
|
CharacterSkeleton,
|
||||||
};
|
};
|
||||||
|
use common::comp::item::Weapon;
|
||||||
use std::f32::consts::PI;
|
use std::f32::consts::PI;
|
||||||
use vek::*;
|
use vek::*;
|
||||||
|
|
||||||
@ -42,13 +43,136 @@ impl Animation for CjumpAnimation {
|
|||||||
next.shorts.ori = Quaternion::rotation_z(0.0);
|
next.shorts.ori = Quaternion::rotation_z(0.0);
|
||||||
next.shorts.scale = Vec3::one();
|
next.shorts.scale = Vec3::one();
|
||||||
|
|
||||||
next.l_hand.offset = Vec3::new(-7.0, 4.0, 0.0 + wave_stop * 2.0);
|
match Weapon::Hammer {
|
||||||
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
//TODO: Inventory
|
||||||
next.l_hand.scale = Vec3::one();
|
Weapon::Sword => {
|
||||||
|
next.l_hand.offset = Vec3::new(-7.0, 3.25, 0.25 + wave_stop * 2.0);
|
||||||
next.r_hand.offset = Vec3::new(-7.0, 3.0, -2.0 + wave_stop * 2.0);
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
next.r_hand.scale = Vec3::one();
|
next.r_hand.offset = Vec3::new(-7.0, 3.0, -2.0 + wave_stop * 2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-7.0 + skeleton_attr.weapon_x,
|
||||||
|
4.0 + skeleton_attr.weapon_y,
|
||||||
|
0.0 + wave_stop * 2.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Axe => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Hammer => {
|
||||||
|
next.l_hand.offset = Vec3::new(-7.0, 8.25, 2.0 + wave_stop * 2.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(7.0, 7.0, -3.0 + wave_stop * 2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
5.0 + skeleton_attr.weapon_x,
|
||||||
|
8.75 + skeleton_attr.weapon_y,
|
||||||
|
-2.5 + wave_stop * 2.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Staff => {
|
||||||
|
next.l_hand.offset = Vec3::new(-7.0, 7.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.7)
|
||||||
|
* Quaternion::rotation_z(1.0);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(7.0, 6.25, 1.5);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.7)
|
||||||
|
* Quaternion::rotation_z(1.0);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
5.0 + skeleton_attr.weapon_x,
|
||||||
|
8.0 + skeleton_attr.weapon_y,
|
||||||
|
1.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.7)
|
||||||
|
* Quaternion::rotation_z(1.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::SwordShield => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Bow => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Daggers => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
next.l_foot.offset = Vec3::new(-3.4, 1.0, 6.0);
|
next.l_foot.offset = Vec3::new(-3.4, 1.0, 6.0);
|
||||||
next.l_foot.ori = Quaternion::rotation_x(wave_stop * -1.2 - wave_slow * 0.2);
|
next.l_foot.ori = Quaternion::rotation_x(wave_stop * -1.2 - wave_slow * 0.2);
|
||||||
@ -58,16 +182,6 @@ impl Animation for CjumpAnimation {
|
|||||||
next.r_foot.ori = Quaternion::rotation_x(wave_stop * 1.2 + wave_slow * 0.2);
|
next.r_foot.ori = Quaternion::rotation_x(wave_stop * 1.2 + wave_slow * 0.2);
|
||||||
next.r_foot.scale = Vec3::one();
|
next.r_foot.scale = Vec3::one();
|
||||||
|
|
||||||
next.weapon.offset = Vec3::new(
|
|
||||||
-7.0 + skeleton_attr.weapon_x,
|
|
||||||
4.0 + skeleton_attr.weapon_y,
|
|
||||||
0.0 + wave_stop * 2.0,
|
|
||||||
);
|
|
||||||
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
|
||||||
* Quaternion::rotation_y(0.0)
|
|
||||||
* Quaternion::rotation_z(0.0);
|
|
||||||
next.weapon.scale = Vec3::one();
|
|
||||||
|
|
||||||
next.l_shoulder.offset = Vec3::new(-10.0, -3.2, 2.5);
|
next.l_shoulder.offset = Vec3::new(-10.0, -3.2, 2.5);
|
||||||
next.l_shoulder.ori = Quaternion::rotation_x(0.0);
|
next.l_shoulder.ori = Quaternion::rotation_x(0.0);
|
||||||
next.l_shoulder.scale = Vec3::one() * 1.04;
|
next.l_shoulder.scale = Vec3::one() * 1.04;
|
||||||
|
@ -2,6 +2,7 @@ use super::{
|
|||||||
super::{Animation, SkeletonAttr},
|
super::{Animation, SkeletonAttr},
|
||||||
CharacterSkeleton,
|
CharacterSkeleton,
|
||||||
};
|
};
|
||||||
|
use common::comp::item::Weapon;
|
||||||
use std::f32::consts::PI;
|
use std::f32::consts::PI;
|
||||||
use std::ops::Mul;
|
use std::ops::Mul;
|
||||||
use vek::*;
|
use vek::*;
|
||||||
@ -60,14 +61,132 @@ impl Animation for CrunAnimation {
|
|||||||
next.shorts.ori = Quaternion::rotation_z(wave * 0.6);
|
next.shorts.ori = Quaternion::rotation_z(wave * 0.6);
|
||||||
next.shorts.scale = Vec3::one();
|
next.shorts.scale = Vec3::one();
|
||||||
|
|
||||||
next.l_hand.offset = Vec3::new(-6.0, 4.0, 0.0);
|
match Weapon::Hammer {
|
||||||
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
//TODO: Inventory
|
||||||
next.l_hand.scale = Vec3::one();
|
Weapon::Sword => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.75, 0.25);
|
||||||
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
next.r_hand.scale = Vec3::one();
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.0 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Axe => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Hammer => {
|
||||||
|
next.l_hand.offset = Vec3::new(-7.0, 8.25, 3.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(wave * -0.25);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(7.0, 7.0, -1.5);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(wave * -0.25);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
5.0 + skeleton_attr.weapon_x,
|
||||||
|
8.75 + skeleton_attr.weapon_y,
|
||||||
|
-2.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(-1.2)
|
||||||
|
* Quaternion::rotation_z(wave * -0.25);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Staff => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::SwordShield => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Bow => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
Weapon::Daggers => {
|
||||||
|
next.l_hand.offset = Vec3::new(-6.0, 3.5, 0.0);
|
||||||
|
next.l_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.l_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.r_hand.offset = Vec3::new(-6.0, 3.0, -2.0);
|
||||||
|
next.r_hand.ori = Quaternion::rotation_x(-0.3);
|
||||||
|
next.r_hand.scale = Vec3::one() * 1.01;
|
||||||
|
next.weapon.offset = Vec3::new(
|
||||||
|
-6.0 + skeleton_attr.weapon_x,
|
||||||
|
4.5 + skeleton_attr.weapon_y,
|
||||||
|
0.0,
|
||||||
|
);
|
||||||
|
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
||||||
|
* Quaternion::rotation_y(0.0)
|
||||||
|
* Quaternion::rotation_z(0.0);
|
||||||
|
next.weapon.scale = Vec3::one();
|
||||||
|
}
|
||||||
|
}
|
||||||
next.l_foot.offset = Vec3::new(-3.4, 0.0 + wave_cos * 1.0, 6.0 - wave_cos_dub * 0.11);
|
next.l_foot.offset = Vec3::new(-3.4, 0.0 + wave_cos * 1.0, 6.0 - wave_cos_dub * 0.11);
|
||||||
next.l_foot.ori = Quaternion::rotation_x(-0.0 - wave_cos * 1.5);
|
next.l_foot.ori = Quaternion::rotation_x(-0.0 - wave_cos * 1.5);
|
||||||
next.l_foot.scale = Vec3::one();
|
next.l_foot.scale = Vec3::one();
|
||||||
@ -76,12 +195,6 @@ impl Animation for CrunAnimation {
|
|||||||
next.r_foot.ori = Quaternion::rotation_x(-0.0 + wave_cos * 1.5);
|
next.r_foot.ori = Quaternion::rotation_x(-0.0 + wave_cos * 1.5);
|
||||||
next.r_foot.scale = Vec3::one();
|
next.r_foot.scale = Vec3::one();
|
||||||
|
|
||||||
next.weapon.offset = Vec3::new(-6.0 + skeleton_attr.weapon_x, 4.0, 0.0);
|
|
||||||
next.weapon.ori = Quaternion::rotation_x(-0.3)
|
|
||||||
* Quaternion::rotation_y(0.0)
|
|
||||||
* Quaternion::rotation_z(0.0);
|
|
||||||
next.weapon.scale = Vec3::one();
|
|
||||||
|
|
||||||
next.l_shoulder.offset = Vec3::new(-10.0, -3.2, 2.5);
|
next.l_shoulder.offset = Vec3::new(-10.0, -3.2, 2.5);
|
||||||
next.l_shoulder.ori = Quaternion::rotation_x(0.0);
|
next.l_shoulder.ori = Quaternion::rotation_x(0.0);
|
||||||
next.l_shoulder.scale = Vec3::one() * 1.04;
|
next.l_shoulder.scale = Vec3::one() * 1.04;
|
||||||
|
@ -144,7 +144,7 @@ impl<'a> From<&'a comp::humanoid::Body> for SkeletonAttr {
|
|||||||
(Danari, Male) => 0.0,
|
(Danari, Male) => 0.0,
|
||||||
(Danari, Female) => 0.0,
|
(Danari, Female) => 0.0,
|
||||||
},
|
},
|
||||||
weapon_x: match Weapon::Sword {
|
weapon_x: match Weapon::Hammer {
|
||||||
// TODO: Inventory
|
// TODO: Inventory
|
||||||
Weapon::Sword => 0.0,
|
Weapon::Sword => 0.0,
|
||||||
Weapon::Axe => 3.0,
|
Weapon::Axe => 3.0,
|
||||||
@ -154,7 +154,7 @@ impl<'a> From<&'a comp::humanoid::Body> for SkeletonAttr {
|
|||||||
Weapon::Bow => 0.0,
|
Weapon::Bow => 0.0,
|
||||||
Weapon::Daggers => 0.0,
|
Weapon::Daggers => 0.0,
|
||||||
},
|
},
|
||||||
weapon_y: match Weapon::Sword {
|
weapon_y: match Weapon::Hammer {
|
||||||
// TODO: Inventory
|
// TODO: Inventory
|
||||||
Weapon::Sword => -1.25,
|
Weapon::Sword => -1.25,
|
||||||
Weapon::Axe => 0.0,
|
Weapon::Axe => 0.0,
|
||||||
|
@ -60,7 +60,7 @@ impl FigureModelCache {
|
|||||||
Some(Self::load_right_hand(body.hand)),
|
Some(Self::load_right_hand(body.hand)),
|
||||||
Some(Self::load_left_foot(body.foot)),
|
Some(Self::load_left_foot(body.foot)),
|
||||||
Some(Self::load_right_foot(body.foot)),
|
Some(Self::load_right_foot(body.foot)),
|
||||||
Some(Self::load_weapon(Weapon::Sword)), // TODO: Inventory
|
Some(Self::load_weapon(Weapon::Hammer)), // TODO: Inventory
|
||||||
Some(Self::load_left_shoulder(body.shoulder)),
|
Some(Self::load_left_shoulder(body.shoulder)),
|
||||||
Some(Self::load_right_shoulder(body.shoulder)),
|
Some(Self::load_right_shoulder(body.shoulder)),
|
||||||
Some(Self::load_draw()),
|
Some(Self::load_draw()),
|
||||||
@ -296,8 +296,8 @@ impl FigureModelCache {
|
|||||||
fn load_weapon(weapon: Weapon) -> Mesh<FigurePipeline> {
|
fn load_weapon(weapon: Weapon) -> Mesh<FigurePipeline> {
|
||||||
let (name, offset) = match weapon {
|
let (name, offset) = match weapon {
|
||||||
Weapon::Sword => ("weapon/sword/rusty_2h.vox", Vec3::new(-1.5, -6.5, -4.0)),
|
Weapon::Sword => ("weapon/sword/rusty_2h.vox", Vec3::new(-1.5, -6.5, -4.0)),
|
||||||
Weapon::Hammer => ("weapon/hammer/rusty_2h.vox", Vec3::new(-2.5, -5.5, -4.0)),
|
|
||||||
Weapon::Axe => ("weapon/axe/rusty_2h.vox", Vec3::new(-1.5, -6.5, -4.0)),
|
Weapon::Axe => ("weapon/axe/rusty_2h.vox", Vec3::new(-1.5, -6.5, -4.0)),
|
||||||
|
Weapon::Hammer => ("weapon/hammer/rusty_2h.vox", Vec3::new(-2.5, -5.5, -4.0)),
|
||||||
Weapon::Daggers => ("weapon/hammer/rusty_2h.vox", Vec3::new(-2.5, -5.5, -4.0)),
|
Weapon::Daggers => ("weapon/hammer/rusty_2h.vox", Vec3::new(-2.5, -5.5, -4.0)),
|
||||||
Weapon::SwordShield => ("weapon/axe/rusty_2h.vox", Vec3::new(-2.5, -6.5, -2.0)),
|
Weapon::SwordShield => ("weapon/axe/rusty_2h.vox", Vec3::new(-2.5, -6.5, -2.0)),
|
||||||
Weapon::Bow => ("weapon/hammer/rusty_2h.vox", Vec3::new(-2.5, -5.5, -4.0)),
|
Weapon::Bow => ("weapon/hammer/rusty_2h.vox", Vec3::new(-2.5, -5.5, -4.0)),
|
||||||
|
Loading…
Reference in New Issue
Block a user