Pneumatic cannons (#4560)

* basics & visuals

* pneumatic cannon works perf

* loc + popups

* gas tank does stuff + queue changes

* updates

* b

* forcefeeding

* inhand

* crafting!

* pie cannon now is a pneumatic cannon

* oopy

* fix for entman + verbs

* pie

* change for tools

* actual

* combat mode + better sounds

* reviews
This commit is contained in:
mirrorcult
2021-11-03 14:33:36 -07:00
committed by GitHub
parent 6bb1e58e77
commit 3f51ffbd3c
33 changed files with 791 additions and 89 deletions

View File

@@ -52,6 +52,9 @@ namespace Content.Server.Storage.Components
[DataField("quickInsert")]
private bool _quickInsert = false; // Can insert storables by "attacking" them with the storage entity
[DataField("clickInsert")]
private bool _clickInsert = true; // Can insert stuff by clicking the storage entity with it
[DataField("areaInsert")]
private bool _areaInsert = false; // "Attacking" with the storage entity causes it to insert all nearby storables after a delay
[DataField("areaInsertRadius")]
@@ -480,6 +483,8 @@ namespace Content.Server.Storage.Components
/// <returns>true if inserted, false otherwise</returns>
async Task<bool> IInteractUsing.InteractUsing(InteractUsingEventArgs eventArgs)
{
if (!_clickInsert)
return false;
Logger.DebugS(LoggerName, $"Storage (UID {Owner.Uid}) attacked by user (UID {eventArgs.User.Uid}) with entity (UID {eventArgs.Using.Uid}).");
if (Owner.HasComponent<PlaceableSurfaceComponent>())