Added colliderHeightFromFloor to a few places I missed, some more human collider tweaking, correcting collider y position faster

This commit is contained in:
Regalis
2016-11-17 19:06:12 +02:00
parent adece20072
commit bded421366
3 changed files with 14 additions and 14 deletions
@@ -11,11 +11,11 @@
thightorque="-5.0"
walkspeed="1.5"
swimspeed="2.0"
impacttolerance="7.5"
colliderheightfromfloor="55">
colliderheightfromfloor="55"
impacttolerance="7.5">
<collider height="60" radius="15"/>
<collider height="30" radius="15"/>
<collider height="55" radius="15"/>
<collider height="40" radius="15"/>
<!-- head -->
<limb id = "0" radius="13" mass = "6" type="Head" attackpriority="2">
@@ -746,10 +746,10 @@ namespace Barotrauma
{
ladderSimPos += character.SelectedConstruction.Submarine.SimPosition - currentHull.Submarine.SimPosition;
}
MoveLimb(head, new Vector2(ladderSimPos.X - 0.27f * Dir, Collider.SimPosition.Y + 0.7f + ConvertUnits.ToSimUnits(-45.0f)), 10.5f);
MoveLimb(torso, new Vector2(ladderSimPos.X - 0.27f * Dir, Collider.SimPosition.Y+ 0.5f + ConvertUnits.ToSimUnits(-45.0f)), 10.5f);
MoveLimb(waist, new Vector2(ladderSimPos.X - 0.35f * Dir, Collider.SimPosition.Y+ 0.4f + ConvertUnits.ToSimUnits(-45.0f)), 10.5f);
MoveLimb(head, new Vector2(ladderSimPos.X - 0.27f * Dir, Collider.SimPosition.Y + 0.7f - colliderHeightFromFloor), 10.5f);
MoveLimb(torso, new Vector2(ladderSimPos.X - 0.27f * Dir, Collider.SimPosition.Y + 0.5f - colliderHeightFromFloor), 10.5f);
MoveLimb(waist, new Vector2(ladderSimPos.X - 0.35f * Dir, Collider.SimPosition.Y + 0.4f - colliderHeightFromFloor), 10.5f);
if (!character.IsRemotePlayer)
{
@@ -762,7 +762,7 @@ namespace Barotrauma
ladderSimPos.X,
Collider.SimPosition.Y + 0.6f + movement.Y * 0.1f - ladderSimPos.Y);
handPos.Y = Math.Min(-0.5f, handPos.Y) + ConvertUnits.ToSimUnits(-45.0f);
handPos.Y = Math.Min(-0.5f, handPos.Y) - colliderHeightFromFloor;
MoveLimb(leftHand,
new Vector2(handPos.X,
@@ -779,7 +779,7 @@ namespace Barotrauma
Vector2 footPos = new Vector2(
handPos.X - Dir * 0.05f,
Collider.SimPosition.Y + 0.7f + ConvertUnits.ToSimUnits(-45.0f) - stepHeight * 2.7f - ladderSimPos.Y - 0.7f);
Collider.SimPosition.Y + 0.7f - colliderHeightFromFloor - stepHeight * 2.7f - ladderSimPos.Y - 0.7f);
//if (movement.Y < 0) footPos.Y += 0.05f;
@@ -71,7 +71,7 @@ namespace Barotrauma
public bool onGround;
private bool ignorePlatforms;
private float colliderHeightFromFloor;
protected float colliderHeightFromFloor;
protected Structure stairs;
@@ -978,7 +978,7 @@ namespace Barotrauma
Vector2 rayStart = Collider.SimPosition;
Vector2 rayEnd = rayStart;
rayEnd.Y -= Collider.height * 0.5f + Collider.radius + ConvertUnits.ToSimUnits(55.0f);
rayEnd.Y -= Collider.height * 0.5f + Collider.radius + colliderHeightFromFloor*1.2f;
var lowestLimb = FindLowestLimb();
@@ -1037,7 +1037,7 @@ namespace Barotrauma
if (Math.Abs(Collider.SimPosition.Y - targetY) > 0.01f && Collider.SimPosition.Y<targetY && !forceImmediate)
{
Vector2 newSpeed = Collider.LinearVelocity;
newSpeed.Y = (targetY - Collider.SimPosition.Y)*2.0f;
newSpeed.Y = (targetY - Collider.SimPosition.Y)*5.0f;
Collider.LinearVelocity = newSpeed;
}
else
@@ -1255,7 +1255,7 @@ namespace Barotrauma
float halfHeight = Collider.height * 0.5f + Collider.radius;
Vector2 offset = Vector2.Zero;
offset.Y = ConvertUnits.ToSimUnits(-45.0f);
offset.Y = -colliderHeightFromFloor;
return Collider.SimPosition + offset +
new Vector2((float)Math.Sin(Collider.Rotation), -(float)Math.Cos(Collider.Rotation)) * halfHeight;
}