* mostly done but there's a bug with spawning
* RandomGlobalSpawnSpellEvent now actually works
* Summon Guns/Magic is working
* Added sound, cap gun, and auto pick up
* Added all requested changes/fixes from reviews
* Halving cooldowns
* Borg type switching.
This allows borgs (new spawn or constructed) to select their chassis type on creation, like in SS13. This removes the need for the many different chassis types, and means round-start borgs can actually play the game immediately instead of waiting for science to unlock everything.
New borgs have an additional action that allows them to select their type. This opens a nice window with basic information about the borgs and a select button. Once a type has been selected it is permanent for that borg chassis.
These borg types also immediately start the borg with specific modules, so they do not need to be printed. Additional modules can still be inserted for upgrades, though this is now less critical. The built-in modules cannot be removed, but are shown in the UI.
The modules that each borg type starts with:
* Generic: tools
* Engineering: advanced tools, construction, RCD, cable
* Salvage: Grappling gun, appraisal, mining
* Janitor: cleaning, light replacer
* Medical: treatment
* Service: music, service, clowning
Specialized borgs have 3 additional module slots available on top of the ones listed above, generic borgs have 5.
Borg types are specified in a new BorgTypePrototype. These prototypes specify all information about the borg type. It is assigned to the borg entity through a mix of client side, server, and shared code. Some of the involved components were made networked, others are just ensured they're set on both sides of the wire.
The most gnarly change is the inventory template prototype, which needs to change purely to modify the borg hat offset. I managed to bodge this in with an API that *probably* won't explode for specifically for this use case, but it's still not the most clean of API designs.
Parts for specific borg chassis have been removed (so much deleted YAML) and specialized borg modules that are in the base set of a type have been removed from the exosuit fab as there's no point to printing those.
The ability to "downgrade" a borg so it can select a new chassis, like in SS13, is something that would be nice, but was not high enough priority for me to block the feature on. I did keep it in mind with some of the code, so it may be possible in the future.
There is no fancy animation when selecting borg types like in SS13, because I didn't think it was high priority, and it would add a lot of complex code.
* Fix sandbox failure due to collection expression.
* Module tweak
Fix salvage borg modules still having research/lathe recipes
Engie borg has regular tool module, not advanced.
* Fix inventory system breakage
* Fix migrations
Some things were missing
* Guidebook rewordings & review
* MinWidth on confirm selection button
* Act
* Adds Jaunt ECS and related prototypes
* Adds jaunt sounds
* Adds enter and exit sound support to polymorphs
* Updates jaunt description
* Adds jaunt action sprite and changes jaunt polymorph to use it
* Adds Jaunt and upgrade to the wizard grimoire
* Makes base mob jaunt parent off of incorporeal and basemob, adds blue ghost sprite for ethereal jaunt
* Update Resources/Locale/en-US/store/spellbook-catalog.ftl
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Resources/Prototypes/Entities/Mobs/Player/jaunt_mobs.yml
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Content.Shared/Polymorph/PolymorphPrototype.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Update Content.Shared/Polymorph/PolymorphPrototype.cs
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* removes meta changes
* removes other meta changes
* adds context menu and a description to basemobjaunt
* comments for jaunt component and adds on component shutdown method
* Update Content.Shared/Jaunt/JauntComponent.cs
* Update Content.Shared/Jaunt/JauntComponent.cs
* Update Content.Shared/Jaunt/JauntComponent.cs
* Update Resources/Prototypes/Catalog/spellbook_catalog.yml
---------
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* cant disguise to thing in a container
* copy cigarette visualiser
* prevent aghost throwing an error
* make disguises die in space
* fuck it rewrite it to not use polymorph
* fix action troll
* oop
* add vebr
* add access to the components
* 2/3
* fix
* relay damage from disguise to user
* fix integrity
* :trollface:
* :trollface:
* m
* kill integrity
* fix a bug
* review
* remove them from component
* relay flash effect to the disguise
* fix icon being weird
* change method since multiple systems cant handle same network event
* :trollface:
* actually network Disguise real
---------
Co-authored-by: deltanedas <@deltanedas:kde.org>
* Rework flaregun and add security shell gun
* Make flare gun twice as likely to appear in emergency lockers
* Security shell gun can now fire lethal shells like the flare gun used to be able to.
* Rebalance the sec shell gun material cost to primarily be steel instead of plastic
* Define the ShellShotgunLight tag in tags.yml
* Leave the no lethal shells for normal flareguns to a different PR.
* Move a comment to re-run checks.
* Bye bye lethal shells from plastic guns.
* Fix weird whitespace issue.
* Make the sec shell gun inherit the normal flare gun.
* Remove the rack verb and update the sec shell gun description
* Remove the ability to fire lethals from flare guns, pending blowing up the gun
---------
Co-authored-by: SlamBamActionman <slambamactionman@gmail.com>
* Silicon Law Sound cue refactor
- Added CueEntityMind to Silicon Law system to more uniformally
send sounds to minds
- Switch all previous MindPlaySound to instead call to the new method
* Change SiliconLawEui to cue the mind
* CR: TryGetComponent and Change the Documentation
- Remove GetComponentOrNull for _entityManager.TryGetComponent
- Change SiliconLawProviderComponent.LawUploadSound to be more general
rather than just referencing lawboards
* Update Content.Server/Silicons/Laws/SiliconLawEui.cs
* Update Content.Shared/Silicons/Laws/Components/SiliconLawProviderComponent.cs
* Silicon-law-cue-refactor - CR:
- Roll the cuing into NotifyLawsChanged via an optional variable for the
cue
- Modify "SetLaws" to take in an optional soundProvider for the cue
- modify Emagged, Ion, Eui and SetLaws to instead send the sound cue via
NotifyLawsChanged
---------
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Add on-call functionality for adminning
The first time an ahelp gets SOS it gets relayed to the specified channel with the specified ping. Every time after that it doesn't until it gets a non-SOS response received.
* Remove redundant name
Pretty sure this already gets chucked on the name of the msg itself I think it just didn't show in screenshot because they were subsequent.
* Update Content.Server/Administration/Systems/BwoinkSystem.cs
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
---------
Co-authored-by: Chief-Engineer <119664036+Chief-Engineer@users.noreply.github.com>
Co-authored-by: deathride58 <deathride58@users.noreply.github.com>
* Make shark plush janitor-bucketable
* fix bucketed grey shark texture
* Make sprites less shiny and adapt copyright notice
* Made shark way way less shiny
* Allow carp plush and rehydratables in mop bucket.
* Remove old mop bucket shark sprites
* Fix post-merge bugs
* Fix errors
* Move ReactiveContainer stuff to shared
That should mean it is now predicted.
* Custom eject verb for the mop bucket
* Fixes OnSolutionChange, removes pop-up as there already is one.
* .ftl is not necessary as the custom pop-up was removed
* Review fixes
* Update Content.Shared/Chemistry/Components/ReactiveContainerComponent.cs
* Update Content.Shared/Chemistry/EntitySystems/ReactiveContainerSystem.cs
---------
Co-authored-by: Psychpsyo <psychpsyo@gmail.com>
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
* Rebalance the max programs that a PDA can hold
* Give Caps PDA more programs too.
* Make the max programs a static 8
* I forgor sec and med
* CaseCase
* Empty commit to re-run checks
* The final change, I hope.
* add notification for dependent wearables being dropped
* fix dropped item popup redundancy
- did a check to see if any item was dropped, instead of making a notification for each item being dropped.
* change popup to client-only variant
* fix redundant messages, add plural locale string
* fix conventions, fix locale input to be more intuitive
---------
Co-authored-by: Justin <justinbrick1@gmail.com>
* Atmospheric alerts computer
* Moved components, restricted access to them
* Minor tweaks
* The screen will now turn off when the computer is not powered
* Bug fix
* Adjusted label
* Updated to latest master version
* Initial commit
* Tidy up
* Add firelocks to the nav map
* Add nav map regions to atmos alerts computer
* Added support for multiple region overlay sets per grid
* Fixed issue where console values were not updating correctly
* Fixing merge conflict
* Fixing merge conflicts
* Finished all major features
* Removed station map regions (to be re-added in a separate PR)
* Improved clarity
* Adjusted the color saturation of the regions displayed on the atmos alerts computer
* init
* im so confused
* clean
* sprite update
* :|
* further attempts
* be blessed for it works
* Very prestigious pAI
* cleaning up
* Intellicard in RD locker
* PAIn't
* .Clear()n't
* .Clear()n't for real this time
* Cleaning up
* Whoopsie Daisy
* Init testing
* copyright
* oops
* Tracking the embed entity uid
* testing stuff for gradual injection
* work
* weh
* god save me
* bleh
* Yippee!
* Again
* Mini syringe ammo
* cleaning up
* mini syringes have a texture for fill amount
* -3 cool points :(
* hitboxes
* init cleanup
* much needed fixes
* Fixes
You were already able to strip more items at once from somebody than you could hold, and they would drop to the floor. This matched the behavior in SS13.
Annoyingly, however, you were not allowed to *start* a stripping action if you're holding something. This just feels like an annoying paper cut, so this is no longer a thing.