* 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>
* AI preset curves and expandable optimisation
Added preset curves for considerations to use just to avoid repeating the same variables all over the shop.
Moved common considerations for expanded actions onto the expandable action e.g. you need a free hand to be able to PickUpGloves so we'll just check it the once rather than for each action.
* FIX PRAGMA
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* Add xenos for stress test
Pretty hacky and not how I'd do it long-term
* Remove claws
* Add in unarmed combat behaviors
* Cleanuppppp
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
* Start adding flashy flash
* Change slop
Might give a smoother decline
* flashy flash
* Add flashbang and flash projectiles
Bang bang bang pull my flash trigger
* Add collision check to area flash
* Flash cleanupo
* flash.ogg mixed to mono
* Adjusted flash curve again
* Enhancing flashes with unshaded and lights and shit
Still a WIP
* Add the other ballistic gun types
Re-organised some of the gun stuff so the powercell guns share the shooting code with the ballistic guns.
* Re-merging branch with master
Also fixed some visualizer bugs
* Last cleanup
Fixed some crashes
Fixed Deckard sprite
Fixed Hitscan effects
Re-applied master changes
Re-factor to using soundsystem
Add some more audio effects
* Cleanup flashes for merge
Can put flashbangs in lockers so you don't get blinded
Fix some bugs
* Fix shotties
Also removed some redundant code
* Bulldoze some legacycode
brrrrrrrrt
* Fix clientignore warnings
* Add the other Stunnable types to StunnableProjectile
* Some gun refactoring
* Removed extra visualizers
* All casing ejections use the same code
* Speed loaders can have their ammo pulled out
* Bolt sound less loud
* Stop ThrowController from throwing
* Fix speed loader visuals
* Update hitscan collision mask and fix typo
* Cleanup
* Fit hitscan and flashbang collisions
* Use the new flags support
* Update taser placeholder description
* Update protonames per style guide
* Add yaml flag support for gun firerates
* Cleanup crew
* Fix Audio up (components, audio file, + remove global sounds)
* Add server-side recoil back-in (forgot that I was testing this client-side)
* Add Flag support for fire-rate selectors
* Wrong int you dolt
* Fix AI conflicts
Haha ranged bulldozer go BRR
(I'll rewrite it after the other AI systems are done).
* Mix bang.ogg from stereo to mono
* Make sure serializer's reading for guns
Fixes integration test
* Change EntitySystem calls to use the static function
Also removed the Pumpbarrel commented-out code
* Change StunnableProjectile defaults to 0
* Fix taser paralyse
Apparently removing defaults means you have to specify the values, whodathunkit
* Add slowdown to stunnableprojectiles and fix tasers
* Remove FlagsFor from gun components
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>