mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-17 05:27:38 +03:00
* init * yupp * stuff for tonigth * death sprite * cleanup * added speech and passive regen * more cleanup * that if for today * stuff * fixed falling animation * yml split, and localisation * moved scale to serverside, linked bingle to pit for upgrade * Apply suggestions from durk Co-authored-by: Aiden <aiden@djkraz.com> * fixes * added upgrade sprite, added combat indicator * pit animation * added check for spawning in nullspace * trying to fix check error * test * Revert "test" * test 2 --------- Co-authored-by: unknown <Administrator@DESKTOP-PMRIVVA.kommune.indresogn.no> Co-authored-by: Fishbait <Fishbait@git.ml> Co-authored-by: Aiden <aiden@djkraz.com> (cherry picked from commit 6608e6eb74a870a882288ecd2af1cea6dcfc7a1a)
44 lines
1.3 KiB
C#
44 lines
1.3 KiB
C#
using Robust.Client.GameObjects;
|
|
using Content.Shared._Goobstation.Bingle;
|
|
using Content.Shared.CombatMode;
|
|
|
|
namespace Content.Client._Goobstation.Bingle;
|
|
|
|
/// <summary>
|
|
/// handles the upgrade apperance from normal bingle to upgraded bingle
|
|
/// </summary>
|
|
public sealed class BingleSystem : EntitySystem
|
|
{
|
|
public override void Initialize()
|
|
{
|
|
base.Initialize();
|
|
SubscribeNetworkEvent<BingleUpgradeEntityMessage>(OnUpgradeChange);
|
|
SubscribeLocalEvent<BingleComponent, ToggleCombatActionEvent>(OnCombatToggle);
|
|
}
|
|
|
|
//make eyse glow red when combat mode engaged.
|
|
private void OnCombatToggle(EntityUid uid, BingleComponent component, ToggleCombatActionEvent args)
|
|
{
|
|
if (!TryComp<SpriteComponent>(uid, out var sprite))
|
|
return;
|
|
if (!TryComp<CombatModeComponent>(uid, out var combat))
|
|
return;
|
|
if (!sprite.LayerMapTryGet(BingleVisual.Combat, out var layer))
|
|
return;
|
|
|
|
sprite.LayerSetVisible(layer, combat.IsInCombatMode);
|
|
}
|
|
|
|
private void OnUpgradeChange(BingleUpgradeEntityMessage args)
|
|
{
|
|
var uid = GetEntity(args.Bingle);
|
|
|
|
if (!TryComp<SpriteComponent>(uid, out var sprite))
|
|
return;
|
|
if (!sprite.LayerMapTryGet(BingleVisual.Upgraded, out var layer))
|
|
return;
|
|
|
|
sprite.LayerSetVisible(layer, true);
|
|
}
|
|
}
|