Added colliderHeightFromFloor to a few places I missed, some more human collider tweaking, correcting collider y position faster
This commit is contained in:
@@ -11,11 +11,11 @@
|
|||||||
thightorque="-5.0"
|
thightorque="-5.0"
|
||||||
walkspeed="1.5"
|
walkspeed="1.5"
|
||||||
swimspeed="2.0"
|
swimspeed="2.0"
|
||||||
impacttolerance="7.5"
|
colliderheightfromfloor="55"
|
||||||
colliderheightfromfloor="55">
|
impacttolerance="7.5">
|
||||||
|
|
||||||
<collider height="60" radius="15"/>
|
<collider height="55" radius="15"/>
|
||||||
<collider height="30" radius="15"/>
|
<collider height="40" radius="15"/>
|
||||||
|
|
||||||
<!-- head -->
|
<!-- head -->
|
||||||
<limb id = "0" radius="13" mass = "6" type="Head" attackpriority="2">
|
<limb id = "0" radius="13" mass = "6" type="Head" attackpriority="2">
|
||||||
|
|||||||
@@ -747,9 +747,9 @@ namespace Barotrauma
|
|||||||
ladderSimPos += character.SelectedConstruction.Submarine.SimPosition - currentHull.Submarine.SimPosition;
|
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(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 + ConvertUnits.ToSimUnits(-45.0f)), 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 + ConvertUnits.ToSimUnits(-45.0f)), 10.5f);
|
MoveLimb(waist, new Vector2(ladderSimPos.X - 0.35f * Dir, Collider.SimPosition.Y + 0.4f - colliderHeightFromFloor), 10.5f);
|
||||||
|
|
||||||
if (!character.IsRemotePlayer)
|
if (!character.IsRemotePlayer)
|
||||||
{
|
{
|
||||||
@@ -762,7 +762,7 @@ namespace Barotrauma
|
|||||||
ladderSimPos.X,
|
ladderSimPos.X,
|
||||||
Collider.SimPosition.Y + 0.6f + movement.Y * 0.1f - ladderSimPos.Y);
|
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,
|
MoveLimb(leftHand,
|
||||||
new Vector2(handPos.X,
|
new Vector2(handPos.X,
|
||||||
@@ -779,7 +779,7 @@ namespace Barotrauma
|
|||||||
|
|
||||||
Vector2 footPos = new Vector2(
|
Vector2 footPos = new Vector2(
|
||||||
handPos.X - Dir * 0.05f,
|
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;
|
//if (movement.Y < 0) footPos.Y += 0.05f;
|
||||||
|
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ namespace Barotrauma
|
|||||||
public bool onGround;
|
public bool onGround;
|
||||||
private bool ignorePlatforms;
|
private bool ignorePlatforms;
|
||||||
|
|
||||||
private float colliderHeightFromFloor;
|
protected float colliderHeightFromFloor;
|
||||||
|
|
||||||
protected Structure stairs;
|
protected Structure stairs;
|
||||||
|
|
||||||
@@ -978,7 +978,7 @@ namespace Barotrauma
|
|||||||
|
|
||||||
Vector2 rayStart = Collider.SimPosition;
|
Vector2 rayStart = Collider.SimPosition;
|
||||||
Vector2 rayEnd = rayStart;
|
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();
|
var lowestLimb = FindLowestLimb();
|
||||||
|
|
||||||
@@ -1037,7 +1037,7 @@ namespace Barotrauma
|
|||||||
if (Math.Abs(Collider.SimPosition.Y - targetY) > 0.01f && Collider.SimPosition.Y<targetY && !forceImmediate)
|
if (Math.Abs(Collider.SimPosition.Y - targetY) > 0.01f && Collider.SimPosition.Y<targetY && !forceImmediate)
|
||||||
{
|
{
|
||||||
Vector2 newSpeed = Collider.LinearVelocity;
|
Vector2 newSpeed = Collider.LinearVelocity;
|
||||||
newSpeed.Y = (targetY - Collider.SimPosition.Y)*2.0f;
|
newSpeed.Y = (targetY - Collider.SimPosition.Y)*5.0f;
|
||||||
Collider.LinearVelocity = newSpeed;
|
Collider.LinearVelocity = newSpeed;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1255,7 +1255,7 @@ namespace Barotrauma
|
|||||||
float halfHeight = Collider.height * 0.5f + Collider.radius;
|
float halfHeight = Collider.height * 0.5f + Collider.radius;
|
||||||
|
|
||||||
Vector2 offset = Vector2.Zero;
|
Vector2 offset = Vector2.Zero;
|
||||||
offset.Y = ConvertUnits.ToSimUnits(-45.0f);
|
offset.Y = -colliderHeightFromFloor;
|
||||||
return Collider.SimPosition + offset +
|
return Collider.SimPosition + offset +
|
||||||
new Vector2((float)Math.Sin(Collider.Rotation), -(float)Math.Cos(Collider.Rotation)) * halfHeight;
|
new Vector2((float)Math.Sin(Collider.Rotation), -(float)Math.Cos(Collider.Rotation)) * halfHeight;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user