Commit Graph

2627 Commits

Author SHA1 Message Date
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
Exp
769a371be6 Make the lobby player list include the ready indicator and not hack it together (#1860)
* Started new Lobby

* -Proper styling
-Use a scrollcontainer :smilethink:

* Too lazy to add a stylerule, too young to optimize css

* Fix typo

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-24 12:11:53 +02:00
Exp
99e0f2019d Remove duplicate PhysicalConstants.cs (#1890) 2020-08-24 12:01:47 +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
Víctor Aguilera Puerto
fad6cdd4d1 Give maintenance access to jobs that didn't have it. 2020-08-23 14:58:28 +02:00
Víctor Aguilera Puerto
34e7ae6c7a Add pressure protection to hardsuits, cleanup hardsuit prototypes 2020-08-23 14:50:27 +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
metalgearsloth
0b4ca168d4 Fix AI steering throw (#1872)
Entity steering wasn't properly checking if the target was deleted.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-08-23 12:42:59 +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
c8178550b8 Balance dallas to spawn with less ammunition. 2020-08-22 20:30:54 +02:00
Víctor Aguilera Puerto
1119dabfee Balance SSS weapon spawners. 2020-08-22 20:30:43 +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
fffff53762 Remove duplicate component in xeno prototype. 2020-08-22 19:57:15 +02:00
Víctor Aguilera Puerto
7794b2cff4 Low walls can now be climbed. 2020-08-22 19:40:17 +02:00
Víctor Aguilera Puerto
bec72195a6 Update submodule. 2020-08-22 19:37:31 +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
7e957ceff1 Fix not dropping your items when dying while buckled (#1856)
* Fix not dropping your items when dying while buckled

* Add test for dropping items while buckled and dead
2020-08-22 17:07:41 +02:00
DrSmugleaf
092dd7c946 Fix xenos not changing sprites when going into crit or dying (#1854) 2020-08-22 15:51:35 +02:00
DrSmugleaf
c87a8d5b51 Fix NRE when pointing happens without player data or a mind (#1855) 2020-08-22 15:18:04 +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
Víctor Aguilera Puerto
8e54ea42e6 Fix rare crash when deleting airlock while the deny animation is playing 2020-08-22 13:41:35 +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
Víctor Aguilera Puerto
f7c71b500f Make airlocks, lights and chairs/stools destructible. 2020-08-22 13:27:03 +02:00
Víctor Aguilera Puerto
92db5ad999 Reduce pistol item size to half, allowing them to be held in pockets. 2020-08-22 13:15:14 +02:00
Víctor Aguilera Puerto
34bb6310fa Fixes handmade pistol 2020-08-22 13:12:53 +02:00
Víctor Aguilera Puerto
3eb22ef33e Add missing audio license 2020-08-22 12:59:29 +02:00
Exp
1b634739ac Observers are shown as observers in the RoundEndSummary (#1838)
* Observers are shown as observers in the RoundEndSummary

* Fix typo

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-22 12:45:49 +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
Swept
4fa4e42462 Tweak player BB to be more accurate (#1846) 2020-08-22 12:30:08 +02:00
DrSmugleaf
28309be161 Make nullable warnings errors locally (#1837) 2020-08-22 12:25:20 +02:00
DrSmugleaf
8a21df21f2 Fix nullable build errors (#1849) 2020-08-22 12:24:59 +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
Víctor Aguilera Puerto
b3156e9934 Play special sound when you get chosen as traitor in SSS. 2020-08-21 21:09:24 +02:00
Víctor Aguilera Puerto
1086474cd0 Do not spawn the item in nullspace in InventoryHelpers 2020-08-21 20:29:29 +02:00
Swept
7887f78f0d Restricts character age from being under 18 or over 120 years old (#1836) 2020-08-21 18:26:31 +02:00
Víctor Aguilera Puerto
fd81e05d5b Add inventory helpers and an integration test for it (#1841) 2020-08-21 18:09:47 +02:00
Pieter-Jan Briers
94e85adedb I blame Rider. 2020-08-21 17:48:22 +02:00
Pieter-Jan Briers
dc602034f0 Update submodule 2020-08-21 17:45:39 +02:00
Pieter-Jan Briers
09e7006e6d Integration tests for mind entity deletion handling. 2020-08-21 17:43:42 +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
d5c4ed819c Add some minor setup behavior to DummyGameTicker by giving it a common base with normal GameTicker.
Necessary for the game to, well, function.
2020-08-21 17:41:50 +02:00
Pieter-Jan Briers
1f1e95f535 Add integration test for entity deletion. 2020-08-21 14:54:50 +02:00
Pieter-Jan Briers
80e175aaa9 Fix deletion of inventories of dead people. 2020-08-21 14:54:38 +02:00