private void FliesRemoved(EntityUid uid, FliesComponent component, ComponentShutdown args) { if (!TryComp <SpriteComponent>(uid, out var sprite)) { return; } if (!sprite.LayerMapTryGet(FliesKey.Key, out var layer)) { return; } sprite.RemoveLayer(layer); }
private void FliesAdded(EntityUid uid, FliesComponent component, ComponentStartup args) { if (!TryComp <SpriteComponent>(uid, out var sprite)) { return; } if (sprite.LayerMapTryGet(FliesKey.Key, out var _)) { return; } var layer = sprite.AddLayer(new SpriteSpecifier.Rsi(new ResourcePath("Objects/Misc/flies.rsi"), "flies")); sprite.LayerMapSet(FliesKey.Key, layer); }
private void OnFliesShutdown(EntityUid uid, FliesComponent component, ComponentShutdown args) { EntityManager.DeleteEntity(component.VirtFlies); }
/// Fly stuff private void OnFliesInit(EntityUid uid, FliesComponent component, ComponentInit args) { component.VirtFlies = EntityManager.SpawnEntity("AmbientSoundSourceFlies", Transform(uid).Coordinates); Transform(component.VirtFlies).AttachParent(uid); }