- XYZ flatfacing2, flatvelocity2;
- XYZ blah;
- if (closest != -1 && distsq(&Person::players[closest]->coords, &Person::players[0]->coords) < 144) {
- blah = Person::players[closest]->coords;
- XYZ headspurtdirection;
- //int i = Person::players[closest]->skeleton.jointlabels[head];
- Joint& headjoint = Person::players[closest]->joint(head);
- for (unsigned k = 0; k < Person::players[closest]->skeleton.joints.size(); k++) {
- if (!Person::players[closest]->skeleton.free) {
- flatvelocity2 = Person::players[closest]->velocity;
- }
- if (Person::players[closest]->skeleton.free) {
- flatvelocity2 = headjoint.velocity;
- }
- if (!Person::players[closest]->skeleton.free) {
- flatfacing2 = DoRotation(DoRotation(DoRotation(headjoint.position, 0, 0, Person::players[closest]->tilt), Person::players[closest]->tilt2, 0, 0), 0, Person::players[closest]->yaw, 0) * Person::players[closest]->scale + Person::players[closest]->coords;
- }
- if (Person::players[closest]->skeleton.free) {
- flatfacing2 = headjoint.position * Person::players[closest]->scale + Person::players[closest]->coords;
- }
+ headspurtdirection = headjoint.position - Person::players[closest]->jointPos(neck);
+ Normalise(&headspurtdirection);
+
+ for (unsigned i = 0; i < Person::players[closest]->skeleton.joints.size(); i++) {
+ flatvelocity2 = flatvelocity2_orig;