Commit Graph

838 Commits

Author SHA1 Message Date
nuke a62935dab2
Handcuff system (#1831)
* Implemented most serverside logic

* All serverside cuff logic complete

* SFX, Clientside HUD stuff, Other logic.

* fffff

* Cuffs 1.0

* missing loc string

* Cuffs are stored in the balls now.

* Basic integrationtest

* Support stripping menu.

* rrr

* Fixes

* properties

* gun emoji

* fixes

* get rid of unused

* reeee

* Update Content.Shared/GameObjects/ContentNetIDs.cs

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-08-25 14:54:23 +02:00
Exp 6b56297c69
Adds Vault Verb (#1889)
* -Vault Verb
-Made CanVault a method so it can be called from several places

* Notifymanager bad

* Unnecessary Import
2020-08-25 13:45:00 +02:00
Visne 318f051fb9
Allow all door access in Suspicion mode (#1817)
* Add AccessTypes, let RuleSuspicion change it

* Fix enum description

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Move check to CanOpen()

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-25 13:37:21 +02:00
DrSmugleaf 520e523d30
Refactor UserInterface properties to use a helper (#1896) 2020-08-24 20:47:17 +02:00
Julian Giebel d9f02a6a0a
The disposals pushing and pulling update (#1875)
* Add collision to disposal unit and pipes
Make disposal unit and pipes pullable
Implement proper handling of collisions in disposals

* Implement IsExiting
Move DisposalSystem to shared

* Change SharedDisosalUnitComponent to call manager.ContainsEntity directly

* Update saltern.yml

Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2020-08-24 20:41:15 +02:00
Swept 9019079d79
Adds a cat and then a gat (#1868)
* Adds the cat

* Adds the gat

* Adds the calico to suspicion spawner

* Fixed physics thing

* Updated BB

* Added Calico mag to ammo spawner
2020-08-24 20:27:32 +02:00
metalgearsloth 997d3dcdd4
startingGear for NPCs (#1877)
Need to cover up the lewds.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-08-24 20:11:32 +02:00
Pieter-Jan Briers f2a321008b
Merge pull request #1893 from DrSmugleaf/pragma-begone 2020-08-24 15:52:06 +02:00
DrSmugleaf 8a27a5322a Replace pragma warning 649 disable/restore with default! 2020-08-24 14:10:28 +02:00
DrSmugleaf a4f527351e
Add test for adding each component individually to an entity (#1870)
* Add test for adding each component individually to entities

* Put one-to-one test before all-at-once test
2020-08-24 13:39:00 +02:00
py01 9e6459ac79
Gun verb changes (#1888)
* Bolt action ver fixes

* Fixes bolt-action playing two sounds when cycling on empty magazine

* MagazineBarrel open/close bolt verb visibility

* mag stuff

* Dirty checks on guns

Co-authored-by: py01 <pyronetics01@gmail.com>
2020-08-24 13:20:11 +02:00
metalgearsloth 501c8a9f6a
Slight DisposalUnit optimisation (#1874)
UI was being updated every tick even when not necessary. Ideally you'd just update the UI based on events but this is fine for now.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-08-24 13:16:23 +02:00
Exp 56ebde7f45
Add IItemStatus to some weapon types (#1879)
* Bolt Action

* Shotguns

* Revolver + Outline

* In Magazines: show bullets as numbers plus the usual bullet stuff

* Empty bullets have another texture
2020-08-24 13:13:26 +02:00
metalgearsloth 969eeb5528
Add AI factions (#1807)
* Add NPC faction tags

Some stuff isn't easy to represent by the existence of components so tags are intended to provide that functionality for AI usage.

I was 50/50 on having all tags in the 1 component or splitting it into 2. I'm leaning towards 2. This would be for stuff like say "CanMimic" so the mimic knows it's allowed to look like a specific prototype, or something like "smg" on a gun so it can say smg-specific barks for instance (as currently smgs and pistols look the same from a component perspective).

This also means combat behaviors aren't hardcoded per faction, plus it makes it easy to update faction relations during events.

* Factions command

Update faction relationships via commands.

* Remove command TODO

* Woops

Forgot to commit these items

* Serializer writing and parsing

* linq me up fam

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-08-24 12:33:03 +02:00
SoulSloth df823d2245
Add Flashlight Visualizer/states (#1861)
* Add art assets for cloning

* Added a 'Scan DNA' button to the medical scanner

* Made the UI update unconditional for the medical scanner until checks for power changes are in place

* Update Medical scanner to reflect powered status and fix #1774

* added a 'scan dna' button the the medical scanner that will add the contained bodies Uid to a list in CloningSystem, fixed an issue with the menu not populating if the scanner starts in an unpowered state

* Add disabling logic to 'Scan DNA' button on medical scanner

* Removed un-used libraries

* Added playing parameter to radiatingLightComponent, changed it's animation key to radiatingLight

* refactored RadiatingLight into a visualizer

* Added different light animations for differnt power states of a flashlight

* split out the radiating light visualizer into two seperate visualizers

* further refactored and tweaked handheldlight animations

* further lantern light tweaks

* removed un-used attributes in flashlight and lantern prototypes

* fix null check in handheldlightcomponent
2020-08-24 12:32:18 +02:00
DrSmugleaf 42d2334334
Fix airtight entities not getting invalidated and their vacuum not being fixed (#1876) 2020-08-23 17:17:19 +02:00
Víctor Aguilera Puerto 39f346ed42 Fix stripping menu hands' items not showing correctly. 2020-08-23 15:03:01 +02:00
DrSmugleaf 814daaba4c
Fix the flashlight's power bar and status with no battery (#1862)
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-08-23 13:19:40 +02:00
DrSmugleaf a4a25a9975
Remove localization manager dependencies from components (#1864)
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-08-23 12:53:09 +02:00
DrSmugleaf b9196d0a10
Add a test that puts all components on an entity and checks for no exceptions (#1815)
* Add test that puts all components on an entity and checks for no exceptions

Also fix all the exceptions that happened because of this

* Add comments to the test

* Fix nullable errors

* Fix more nullable errors

* More nullable error fixes

* Unignore basic actor component

* Fix more nullable errors

* NULLABLE ERROR

* Add string interpolation

* Merge if checks

* Remove redundant pragma warning disable 649

* Address reviews

* Remove null wrappers around TryGetComponent

* Merge conflict fixes

* APC battery component error fix

* Fix power test

* Fix atmos mapgrid usages
2020-08-22 22:29:20 +02:00
Víctor Aguilera Puerto 5de139d6fd Improves examine for ranged weapons, magazines and ammo. 2020-08-22 20:18:49 +02:00
Víctor Aguilera Puerto 35e963a0ea Lights now show a popup message when you burn yourself. 2020-08-22 19:37:23 +02:00
DrSmugleaf 092dd7c946
Fix xenos not changing sprites when going into crit or dying (#1854) 2020-08-22 15:51:35 +02:00
Julian Giebel 265afc9929
Change NextTube in DisposalTubeComponent to consider multiple tube (#1851)
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2020-08-22 13:55:58 +02:00
DrSmugleaf bb923aa230
As discussed on the Discord, xenos are not humans (#1840)
* As discussed on the Discord, xenos are not humans

* Add living component for living beings without a defined body

* Merge LivingDamageable and Damageable components

* Fix ruinable and state manager inconsistencies

* Fix ruinable exposedata

* Fix new destructibles yamls

* Fix healing not healing

* Fix alive not being a valid state

* Fix valid state checking
2020-08-22 13:40:22 +02:00
DrSmugleaf efbd01d0bf
Add test for airlocks opening/closing and blocking entities (#1842)
* Add test for airlocks opening/closing and blocking entities

* Nullable fix classic
2020-08-22 12:30:30 +02:00
Julian Giebel 1c21f2c3b0
Rework emergency lights (#1830)
* Implement emergency lights reacting to lost power

* Add emergency light sprites
Remove shared emergency light component

* Remove unused import

* Remove EmergencyLight NetID

* Add rich description
Change comments
Add license
Implement ExposeData

Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2020-08-22 12:06:29 +02:00
metalgearsloth 72e50cce94
AI pickup changes (#1811)
* AI pickup changes

Eating and drinking isn't spammed anymore.
AI can do InRangeUnobstructed checks for item pickups.
AI can open drink cans.

AI littering to be coded.

* #nullable enable

* github's nullable fails are actively shortening my lifespan

* Use a const instead

So it's easier to find given the performance implications.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-08-22 12:03:24 +02:00
Pieter-Jan Briers 3f0665b908
Make deleting a visited entity not cleaning it up in the mind. 2020-08-21 17:43:27 +02:00
Pieter-Jan Briers 80e175aaa9
Fix deletion of inventories of dead people. 2020-08-21 14:54:38 +02:00
Exp 8fe211bf88
Make Table Vaulting use "theName" macro (#1832) 2020-08-21 11:00:27 +02:00
Exp ce1dc6d86b
Table Vaulting notify messages use the name (#1828) 2020-08-21 00:08:16 +02:00
Pieter-Jan Briers b1eb320b0a
Fix exception with explosions and storage items. 2020-08-20 23:44:35 +02:00
Pieter-Jan Briers f27ce22dc9
Reduce airlock prying time. 2020-08-20 22:38:00 +02:00
Pieter-Jan Briers bf60a4e9fc
Merge branch 'master' into mathmerge 2020-08-20 20:33:43 +02:00
Pieter-Jan Briers ed1a96e536
Nullability fixes. 2020-08-20 16:48:15 +02:00
nuke 322e38b173
Fix for climb jank (#1803)
Player body was going to sleep, so now we spam WakeBody() at it.
2020-08-19 17:21:15 -07:00
nuke f4909cdb98
Climbing system (#1750)
* Initial commit

* Climbing uses its own controller now

* Missed a check

* Get rid of hands check

* Cleanup

* Get rid of speciescomponent stuff

* Remove unneeded check, add separate case for moving other players.

* Add DoAfter

* IClientDraggable added to ClimbingComponent

* Added some basic integration tests. Renamed ClimbMode to Climbing.

* oops

* Minor fixes

* ffff

* Table fix

* Revamped system so its more predicted, uses proper  logic for de-climbing. Get hype!!!

* Flag check fix

* Distance check and reset numticksblocked

* get rid
2020-08-20 00:13:22 +02:00
Julian Giebel 7771f58460
Improve on disposal routing code (#1795)
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2020-08-19 20:43:56 +02:00
Swept 20ab566f8c
Switches current PDAs to the /tg/ ones. (#1796)
* Switches PDAs with tg ones and renames flashlight component

* Which chucklefuck hid the ID cards in the clothing folder

* Removes Mime PDA as i'm gonna do that in another PR

* Moves EVERY SINGLE PDA over by exactly one pixel so they're aligned perfectly with the UI slot

* On second thought moves back the id-cards since I don't want to deal with conflicts
2020-08-19 20:41:33 +02:00
DrSmugleaf 3b2a804f4f
Fix disposals throwing you into the shadow realm (#1792) 2020-08-19 16:49:34 +02:00
SoulSloth dc77c399b9
Add 'Scan DNA' function to medical scanner (#1783)
* Add art assets for cloning

* Added a 'Scan DNA' button to the medical scanner

* Made the UI update unconditional for the medical scanner until checks for power changes are in place

* Update Medical scanner to reflect powered status and fix #1774

* added a 'scan dna' button the the medical scanner that will add the contained bodies Uid to a list in CloningSystem, fixed an issue with the menu not populating if the scanner starts in an unpowered state

* Add disabling logic to 'Scan DNA' button on medical scanner

* Removed un-used libraries

* changed scan dna button to Scan and Save DNA
2020-08-19 16:23:20 +02:00
DrSmugleaf cd1afb6582
Disable suffocation damage temporarily 2020-08-19 15:54:45 +02:00
Julian Giebel 1292adb001
Disposal routing (#1710)
* Implement disposal tagger
Implement disposal  router
Combine sprites to make conpipe-tagger sprite

* Implement change requests

* Remove nullable

* Update DisposalHolderComponent.cs

* Update DisposalHolderComponent.cs

* Update Content.Server/GameObjects/Components/Disposal/DisposalRouterComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-19 15:50:06 +02:00
Julian Giebel 259762717b
Change cell that spawns with flashlights (#1781)
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2020-08-18 19:33:24 +02:00
DrSmugleaf e68c91a64c
Increase wall HP (#1713)
* Increase all walls hp by 5 times

* Increase reinforced and riveted wall hp as well

* Revert "Increase reinforced and riveted wall hp as well"

This reverts commit a9d95670e3f6c4d7fb2b2cf3c84503496f685e26.

* Increase reinforced and riveted wall hp as well

* Merge conflict fixes

* Reduced wall hp slightly
2020-08-18 18:00:36 +02:00
metalgearsloth 04bc20c365
AI sleeping (#1708)
* AI sleeping

AI no longer update when dead.

* It was easier to merge master and re-apply it.

* Update AiControllerComponent.cs

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-18 15:14:55 +02:00
Víctor Aguilera Puerto 6fb2a335b1 Fix anchorable doc 2020-08-18 14:40:58 +02:00
Víctor Aguilera Puerto d9ae942759
Make InteractUsing async, make tools use DoAfter. (#1772)
* Make IInteractUsing async, make tools use DoAfter.

* Disable warning 1998 in Content.Server

* Update Content.Server/GameObjects/Components/AnchorableComponent.cs
2020-08-18 14:39:08 +02:00
Pieter-Jan Briers 39f13c1849
Merge pull request #1660 from juliangiebel/bug/anchoring-reagent-dispenser 2020-08-17 17:54:21 +02:00