Scooters can't be used when stunned, limb damage sound position fix, longer view distance when outside
This commit is contained in:
@@ -378,7 +378,8 @@ namespace Barotrauma
|
||||
|
||||
if (damageTarget is Character && dist<limb.attack.Range*0.5f)
|
||||
{
|
||||
limb.attack.DoDamage(Character, damageTarget, limb.WorldPosition, deltaTime, false);
|
||||
limb.attack.DoDamage(Character, damageTarget, limb.WorldPosition, deltaTime, (limb.soundTimer <= 0.0f));
|
||||
limb.soundTimer = Limb.SoundInterval;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -560,7 +560,8 @@ namespace Barotrauma
|
||||
{
|
||||
if (newHull == null && currentHull.Submarine != null)
|
||||
{
|
||||
SetPosition(refLimb.SimPosition + ConvertUnits.ToSimUnits(currentHull.Submarine.Position));
|
||||
Vector2 ragdollSpeed = refLimb.LinearVelocity == Vector2.Zero ? Vector2.Zero : Vector2.Normalize(refLimb.LinearVelocity);
|
||||
SetPosition(refLimb.SimPosition + ragdollSpeed + ConvertUnits.ToSimUnits(currentHull.Submarine.Position));
|
||||
character.CursorPosition += currentHull.Submarine.Position;
|
||||
}
|
||||
else if (currentHull == null && newHull != null && newHull.Submarine != null)
|
||||
|
||||
@@ -799,7 +799,7 @@ namespace Barotrauma
|
||||
|
||||
if (moveCam)
|
||||
{
|
||||
cam.OffsetAmount = MathHelper.Lerp(cam.OffsetAmount, 250.0f, 0.05f);
|
||||
cam.OffsetAmount = MathHelper.Lerp(cam.OffsetAmount, Submarine == null ? 400.0f : 250.0f, 0.05f);
|
||||
}
|
||||
|
||||
cursorPosition = cam.ScreenToWorld(PlayerInput.MousePosition);
|
||||
@@ -807,7 +807,7 @@ namespace Barotrauma
|
||||
|
||||
Vector2 mouseSimPos = ConvertUnits.ToSimUnits(cursorPosition);
|
||||
|
||||
if (Vector2.Distance(AnimController.Limbs[0].SimPosition, mouseSimPos)>1.0f)
|
||||
if (Lights.LightManager.ViewTarget == this && Vector2.Distance(AnimController.Limbs[0].SimPosition, mouseSimPos) > 1.0f)
|
||||
{
|
||||
Body body = Submarine.PickBody(AnimController.Limbs[0].SimPosition, mouseSimPos);
|
||||
Structure structure = null;
|
||||
@@ -1134,7 +1134,7 @@ namespace Barotrauma
|
||||
AttackResult attackResult = closestLimb.AddDamage(simPosition, damageType, amount, bleedingAmount, playSound);
|
||||
|
||||
AddDamage(damageType == DamageType.Burn ? CauseOfDeath.Burn : causeOfDeath, attackResult.Damage, null);
|
||||
|
||||
|
||||
//health -= attackResult.Damage;
|
||||
//if (health <= 0.0f && damageType == DamageType.Burn) Kill(CauseOfDeath.Burn);
|
||||
if (DoesBleed)
|
||||
|
||||
@@ -315,14 +315,14 @@ namespace Barotrauma
|
||||
body.ApplyLinearImpulse((deltaPos - vel * 0.5f) * body.Mass, pullPos);
|
||||
}
|
||||
|
||||
public AttackResult AddDamage(Vector2 simPosition, DamageType damageType, float amount, float bleedingAmount, bool playSound)
|
||||
public AttackResult AddDamage(Vector2 position, DamageType damageType, float amount, float bleedingAmount, bool playSound)
|
||||
{
|
||||
DamageSoundType damageSoundType = (damageType == DamageType.Blunt) ? DamageSoundType.LimbBlunt : DamageSoundType.LimbSlash;
|
||||
|
||||
bool hitArmor = false;
|
||||
float totalArmorValue = 0.0f;
|
||||
|
||||
if (armorValue>0.0f && SectorHit(armorSector, simPosition))
|
||||
if (armorValue>0.0f && SectorHit(armorSector, position))
|
||||
{
|
||||
hitArmor = true;
|
||||
totalArmorValue += armorValue;
|
||||
@@ -330,7 +330,7 @@ namespace Barotrauma
|
||||
|
||||
if (wearingItem!=null &&
|
||||
wearingItem.ArmorValue>0.0f &&
|
||||
SectorHit(wearingItem.ArmorSectorLimits, simPosition))
|
||||
SectorHit(wearingItem.ArmorSectorLimits, position))
|
||||
{
|
||||
hitArmor = true;
|
||||
totalArmorValue += wearingItem.ArmorValue;
|
||||
@@ -347,7 +347,7 @@ namespace Barotrauma
|
||||
|
||||
if (playSound)
|
||||
{
|
||||
SoundPlayer.PlayDamageSound(damageSoundType, amount, ConvertUnits.ToDisplayUnits(simPosition));
|
||||
SoundPlayer.PlayDamageSound(damageSoundType, amount, position);
|
||||
}
|
||||
|
||||
//Bleeding += bleedingAmount;
|
||||
@@ -357,7 +357,7 @@ namespace Barotrauma
|
||||
|
||||
for (int i = 0; i < bloodAmount; i++)
|
||||
{
|
||||
Vector2 particleVel = SimPosition - simPosition;
|
||||
Vector2 particleVel = SimPosition - position;
|
||||
if (particleVel != Vector2.Zero) particleVel = Vector2.Normalize(particleVel);
|
||||
|
||||
GameMain.ParticleManager.CreateParticle("blood",
|
||||
|
||||
@@ -51,7 +51,7 @@ namespace Barotrauma.Items.Components
|
||||
public override bool Use(float deltaTime, Character character = null)
|
||||
{
|
||||
if (character == null) return false;
|
||||
if (!character.IsKeyDown(InputType.Aim)) return false;
|
||||
if (!character.IsKeyDown(InputType.Aim) || character.Stun>0.0f) return false;
|
||||
|
||||
if (item.InWater)
|
||||
{
|
||||
|
||||
@@ -1286,6 +1286,11 @@ namespace Barotrauma.Networking
|
||||
targetClient = ConnectedClients.Find(c =>
|
||||
words[0] == "/" + c.name.ToLower() ||
|
||||
c.Character != null && words[0] == "/" + c.Character.Name.ToLower());
|
||||
|
||||
if (targetClient==null)
|
||||
{
|
||||
AddChatMessage("Player ''"+words[0].Replace("/", "")+"'' not found!", ChatMessageType.Admin);
|
||||
}
|
||||
}
|
||||
|
||||
message = words[0] + " " + string.Join(" ", words, 2, words.Length - 2);
|
||||
|
||||
Reference in New Issue
Block a user