Add sound effect to machine panel opening/closing

This commit is contained in:
Pieter-Jan Briers
2019-10-13 19:45:25 +02:00
parent d113a738de
commit 5db8cda0b6
3 changed files with 18 additions and 2 deletions

View File

@@ -286,14 +286,30 @@ namespace Content.Server.GameObjects.Components
bool IAttackBy.AttackBy(AttackByEventArgs eventArgs)
{
if (!eventArgs.AttackWith.HasComponent<ScrewdriverComponent>()) return false;
if (!eventArgs.AttackWith.HasComponent<ScrewdriverComponent>())
{
return false;
}
IsPanelOpen = !IsPanelOpen;
IoCManager.Resolve<IEntitySystemManager>()
.GetEntitySystem<AudioSystem>()
.Play(IsPanelOpen ? "/Audio/machines/screwdriveropen.ogg" : "/Audio/machines/screwdriverclose.ogg");
return true;
}
void IExamine.Examine(FormattedMessage message)
{
message.AddText($"The maintenance panel is {(IsPanelOpen ? "open" : "closed")}.");
var loc = IoCManager.Resolve<ILocalizationManager>();
message.AddText(loc.GetString("The "));
message.PushColor(Color.LightGray);
message.AddText(loc.GetString("maintenance panel"));
message.Pop();
message.AddText(loc.GetString(" is "));
message.PushColor(IsPanelOpen ? Color.DarkGreen : Color.DarkRed);
message.AddText(loc.GetString(IsPanelOpen ? "open" : "closed"));
message.Pop();
message.AddText(".");
}
public void SetStatus(object statusIdentifier, string newMessage)

Binary file not shown.

Binary file not shown.