(bf212a41f) v0.9.2.0 pre-release test version
This commit is contained in:
@@ -14,6 +14,13 @@ namespace Barotrauma
|
||||
{
|
||||
if (this != Controlled)
|
||||
{
|
||||
if (GameMain.Client.EndCinematic != null) // Freezes the characters during the ending cinematic
|
||||
{
|
||||
AnimController.Frozen = true;
|
||||
memState.Clear();
|
||||
return;
|
||||
}
|
||||
|
||||
//freeze AI characters if more than 1 seconds have passed since last update from the server
|
||||
if (lastRecvPositionUpdateTime < NetTime.Now - 1.0f)
|
||||
{
|
||||
|
||||
@@ -128,6 +128,7 @@ namespace Barotrauma
|
||||
}
|
||||
|
||||
public WearableSprite HuskSprite { get; private set; }
|
||||
public WearableSprite HerpesSprite { get; private set; }
|
||||
|
||||
public void LoadHuskSprite()
|
||||
{
|
||||
@@ -139,6 +140,16 @@ namespace Barotrauma
|
||||
HuskSprite = new WearableSprite(element.Element("sprite"), WearableType.Husk);
|
||||
}
|
||||
}
|
||||
public void LoadHerpesSprite()
|
||||
{
|
||||
var info = character.Info;
|
||||
if (info == null) { return; }
|
||||
var element = info.FilterByTypeAndHeadID(character.Info.FilterElementsByGenderAndRace(character.Info.Wearables), WearableType.Herpes).FirstOrDefault();
|
||||
if (element != null)
|
||||
{
|
||||
HerpesSprite = new WearableSprite(element.Element("sprite"), WearableType.Herpes);
|
||||
}
|
||||
}
|
||||
|
||||
public float TextureScale => limbParams.Ragdoll.TextureScale;
|
||||
|
||||
@@ -387,7 +398,7 @@ namespace Barotrauma
|
||||
color *= SeveredFadeOutTime - severedFadeOutTimer;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
body.Dir = Dir;
|
||||
|
||||
bool hideLimb = wearingItems.Any(w => w != null && w.HideLimb);
|
||||
@@ -425,10 +436,20 @@ namespace Barotrauma
|
||||
SpriteEffects spriteEffect = (dir == Direction.Right) ? SpriteEffects.None : SpriteEffects.FlipHorizontally;
|
||||
if (onlyDrawable == null)
|
||||
{
|
||||
if (HerpesSprite != null)
|
||||
{
|
||||
float herpesStrength = character.CharacterHealth.GetAfflictionStrength("spaceherpes");
|
||||
if (herpesStrength > 0.0f)
|
||||
{
|
||||
DrawWearable(HerpesSprite, depthStep, spriteBatch, color * (herpesStrength / 100.0f), spriteEffect);
|
||||
depthStep += 0.000001f;
|
||||
}
|
||||
}
|
||||
if (HuskSprite != null && (character.SpeciesName == "Humanhusk" || (character.SpeciesName == "Human" &&
|
||||
character.CharacterHealth.GetAffliction<AfflictionHusk>("huskinfection")?.State == AfflictionHusk.InfectionState.Active)))
|
||||
{
|
||||
DrawWearable(HuskSprite, depthStep, spriteBatch, color, spriteEffect);
|
||||
depthStep += 0.000001f;
|
||||
}
|
||||
foreach (WearableSprite wearable in OtherWearables)
|
||||
{
|
||||
@@ -585,6 +606,9 @@ namespace Barotrauma
|
||||
|
||||
HuskSprite?.Sprite.Remove();
|
||||
HuskSprite = null;
|
||||
|
||||
HerpesSprite?.Sprite.Remove();
|
||||
HerpesSprite = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user