diff --git a/ShiftOS.Frontend/Desktop/Desktop.cs b/ShiftOS.Frontend/Desktop/Desktop.cs index 1bca3f8..43bbf79 100644 --- a/ShiftOS.Frontend/Desktop/Desktop.cs +++ b/ShiftOS.Frontend/Desktop/Desktop.cs @@ -204,7 +204,15 @@ namespace ShiftOS.Frontend.Desktop Width = GetSize().Width; Height = GetSize().Height; var now = DateTime.Now.TimeOfDay; - var newDateTimeString = $"{now.Hours}:{now.Minutes}:{now.Seconds}"; + var newDateTimeString = $"{now.Hours}:{now.Minutes}:{now.Seconds} - "; + if(Hacking.CurrentHackable == null) + { + newDateTimeString += SaveSystem.CurrentSave.SystemName; + } + else + { + newDateTimeString += Hacking.CurrentHackable.Data.SystemName; + } if(newDateTimeString != dateTimeString) { dateTimeString = newDateTimeString; diff --git a/ShiftOS.Frontend/ShiftOS.cs b/ShiftOS.Frontend/ShiftOS.cs index 61a20fb..597c4ff 100644 --- a/ShiftOS.Frontend/ShiftOS.cs +++ b/ShiftOS.Frontend/ShiftOS.cs @@ -252,15 +252,22 @@ namespace ShiftOS.Frontend if (Hacking.CurrentHackable.DoConnectionTimeout) { Hacking.CurrentHackable.MillisecondsCountdown -= gameTime.ElapsedGameTime.TotalMilliseconds; - if(Hacking.CurrentHackable.MillisecondsCountdown <= 0) + shroudOpacity = (float)GUI.ProgressBar.linear(Hacking.CurrentHackable.MillisecondsCountdown, Hacking.CurrentHackable.TotalConnectionTimeMS, 0, 0, 1); + if (Hacking.CurrentHackable.MillisecondsCountdown <= 0) { Hacking.FailHack(); } } } + else + { + shroudOpacity = 0; + } base.Update(gameTime); } + float shroudOpacity = 0.0f; + private GUI.TextControl framerate = new GUI.TextControl(); /// @@ -292,6 +299,8 @@ namespace ShiftOS.Frontend spriteBatch.Draw(MouseTexture, new Rectangle(mousepos.X+1, mousepos.Y+1, MouseTexture.Width, MouseTexture.Height), Color.Black * 0.5f); spriteBatch.Draw(MouseTexture, new Rectangle(mousepos.X, mousepos.Y, MouseTexture.Width, MouseTexture.Height), Color.White); + spriteBatch.Draw(UIManager.SkinTextures["PureWhite"], new Rectangle(0, 0, UIManager.Viewport.Width, UIManager.Viewport.Height), Color.Red * shroudOpacity); + if(Hacking.CurrentHackable != null) { if (Hacking.CurrentHackable.DoConnectionTimeout) diff --git a/ShiftOS_TheReturn/Hacking.cs b/ShiftOS_TheReturn/Hacking.cs index 8412203..5c473df 100644 --- a/ShiftOS_TheReturn/Hacking.cs +++ b/ShiftOS_TheReturn/Hacking.cs @@ -96,6 +96,7 @@ namespace ShiftOS.Engine { hsys.MillisecondsCountdown = 0; } + hsys.TotalConnectionTimeMS = (int)hsys.MillisecondsCountdown; hsys.PortsToUnlock = new List(); hsys.VectorsUnlocked = new List(); hsys.PayloadExecuted = new List(); @@ -215,6 +216,7 @@ namespace ShiftOS.Engine public class HackableSystem { + public int TotalConnectionTimeMS { get; set; } public Objects.Hackable Data { get; set; } public List PortsToUnlock { get; set; } public List VectorsUnlocked { get; set; }