Commit Graph

94 Commits

Author SHA1 Message Date
deltanedas 83959a4fa9 random fixes 2024-12-27 17:48:54 +00:00
gluesniffler a3ccc297e6 Major Shitmed Bugfixes (#1003) 2024-12-27 17:13:03 +00:00
gluesniffler da885d8854 Shitmed (#869)
* full fucking send

* ope forgot to remove the EE scripts

* fix test

* fix shitcode fail
2024-12-27 16:47:20 +00:00
Plykiya f8d7995780 Fix for inspecting entities in the stripping window (#33644)
Handle it
2024-12-07 21:54:26 +00:00
DrSmugleaf 4ba7569729 Fix admin ghosts not being able to see items in pockets or interact with them (#31076)
* Fix admin ghosts not being able to see items in pouches or interact with them

* fix

* oops

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-12-07 17:15:03 +00:00
Pieter-Jan Briers 4aecc673ae Borg type switching. (#32586)
* 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
2024-11-15 19:35:37 +00:00
Pieter-Jan Briers 3337c91e7b Fix borg hands showing up in stripping menu (#32606)
* Fix borg hands showing up in stripping menu

Borgs can't drop their items anyways, and the amount of hands borgs have causes the UI to just bug out.

* Add more checks
2024-10-07 22:26:19 +01:00
metalgearsloth 9a59024f13 Predict stripping (#32478)
* Predict stripping

Stops mob verbs from getting moved around again.

* Bola

* Fix ftl
2024-10-02 12:06:37 +01:00
metalgearsloth 87a4203267 Reapply "Remove some BUI boilerplate" (#30214) (#30219)
* Reapply "Remove some BUI boilerplate" (#30214)

This reverts commit cb0ba66be38677d248ce11f809221230ebe89642.

* Fix gas tank

* Fix PA

* Fix microwave

* Comms console underwrap

* Fix rcd

* log wehs
2024-08-09 17:52:22 +01:00
Nemanja ac0a73c039 Revert "Remove some BUI boilerplate" (#30214)
Revert "Remove some BUI boilerplate (#28399)"

This reverts commit cbf329a82d77eed2bb5e51666dab5d8a21fd3fff.
2024-08-09 17:52:21 +01:00
metalgearsloth 7af5d3dbaf Remove some BUI boilerplate (#28399)
* Remove some BUI boilerplate

- The disposals overrides got removed due to the helper method handling it.
- Replace window creation with CreateWindow helper.
- Fixed some stinky code which would cause exceptions.

* More

* moar

* weh

* done

* More BUIs

* More updates

* weh

* moar

* look who it is

* weh

* merge

* weh

* fixes
2024-08-09 17:51:47 +01:00
Leon Friedrich 4ce7efd04d
Prevent Identity.Name NRE exception (#28433)
Fix Identity.Name exception
2024-06-01 17:56:36 +02:00
Null b14097d0b6
Revert "Felinid Thievery" (#1177)
Revert "Felinid Thievery (#1102)"

This reverts commit 9b763f3758.
2024-05-09 14:59:48 +02:00
WarMechanic 9b763f3758
Felinid Thievery (#1102)
* Strip UI can now check for Thieving Component to see hidden items

* Admin Observers can now see hidden items in strip menu

* Felinid pickpocketing buffs

* Revert "Felinid pickpocketing buffs"

This reverts commit cfc6d80719.

* Revert "Admin Observers can now see hidden items in strip menu"

This reverts commit 496188729f.

* Removed mysterious line of code

* Response to review

* Removed more stuff unrelated to topic

* Responded to review regarding syntax

* Added IgnoreStripHidden to Felinids and Admin Observers

* Reimplement strip time multiplier with correct syntax

* Added strip time multiplier to Felinid and Admin Observer
2024-05-09 04:40:30 +00:00
DrSmugleaf f0f410348c
Move storage binds and slot click handling to shared (#27135)
(cherry picked from commit 3c6722bd6fca55cfdee8dced11379641b443d542)
2024-04-21 23:31:37 +02:00
Nemanja 1d00da85fd
make filled inventory slots blank (#27150)
* blank filled slots

* Update InventoryTemplatePrototype.cs

(cherry picked from commit e5a5196b1f5cba8e0f05c374b2b7c58eea6f7361)
2024-04-21 23:21:54 +02:00
Pieter-Jan Briers ccea85136b
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
AJCM-git 9a6fa17e72
Virtual items cleanup (#23912)
* Virtual items cleanup

* Detail

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 108f001731b9394f98d9ef712b9b777e5b3f8abc)
2024-01-26 22:49:14 +01:00
AJCM-git 6b7e8b4f5b
UseDelay + ItemCooldown merge (#22502)
(cherry picked from commit 9c522c8b19f7a6f6b396c66342413572a22d7845)
2024-01-26 21:32:09 +01:00
Leon Friedrich 485d658bd1 Inventory slot enumerator rejig (#21788) 2023-12-16 19:30:03 +01:00
Leon Friedrich 29584576e7 Merge `ActorSystem` and `IPlayerManager` (#21314) 2023-11-12 20:53:33 +01:00
Leon Friedrich e66c0b5035 Un-revert IPlayerManager refactor (#21244) 2023-10-31 19:00:44 +01:00
DrSmugleaf 9cc8a7fc81 Remove 700 usages of Component.Owner (#21100) 2023-10-20 15:31:13 +02:00
metalgearsloth f38f0ab614 Predict StorageComponent (#19682) 2023-09-27 21:59:12 +02:00
metalgearsloth c9648da984 Content update for NetEntities (#18935) 2023-09-27 21:59:12 +02:00
Visne 11a57be230
Remove usages of obsolete SpriteView.Sprite.set() (#19500) 2023-08-25 11:16:46 +10:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
metalgearsloth e755509fc7
More miscellaneous compiler warning fixes (#18228) 2023-07-23 16:03:57 +10:00
TemporalOroboros 3ac4cf85db
Cleaner BoundUserInterfaces (#17736) 2023-07-09 02:02:17 +10:00
metalgearsloth 68480af109
Update content vectors to numerics (#17759) 2023-07-08 14:08:32 +10:00
DrSmugleaf 98b4af8df0
Remove inventory component references (#15249) 2023-04-12 10:20:47 +10:00
DrSmugleaf b947856431
Remove hands component reference (#15197) 2023-04-07 11:21:12 -07:00
Nemanja 49f7575298
Cuffable/Handcuff ECS (#14382) 2023-03-13 19:34:26 -04:00
Leon Friedrich b148bebd60
Equipment verbs & admin inventory access. (#14315) 2023-03-06 04:12:08 +11:00
metalgearsloth 02aef68dff
Remove ISpriteComponent (#13458) 2023-01-15 13:38:53 +11:00
Kara 45da85fec6
Context menu UI backend refactor & better UX (#13318)
closes https://github.com/space-wizards/space-station-14/issues/9209
2023-01-07 19:24:52 -08:00
Nemanja 6c04811e66
remove a bunch of instances of component reference (#13164) 2022-12-24 15:55:31 +11:00
DrSmugleaf 7fbc2608e8
Remove redundant read-only VV from datafields (#12626) 2022-11-16 20:22:11 +01:00
Leon Friedrich e488669be4
Don't log missing inventory. (#12258) 2022-10-28 14:34:28 +11:00
Leon Friedrich f6db79d303
Fix inventory slots not updating when prediction is disabled. (#12215) 2022-10-26 14:19:02 +11:00
Leon Friedrich 7d276d1101
Remove server/client clothing components. (#11981) 2022-10-22 15:30:37 -07:00
Flipp Syder a3dafd88dc
Oldchat (#11913)
* attempt at moving MainViewport to UIWidget

* oldchat (prototype)

* separate oldchat and default ss14 HUD into their own files

* restores original default game screen logic and adds that logic into separated chat game screen

* hand reloading, several tweaks to port oldchat to main ss14 branch

oldchat is currently not selectable

* screen type cvar, gameplay state screen reloading/loading

* reload screen on ui layout cvar change

* fixes up basic reloading (HUD switching is still very bad)

* some UI widget reloading for main UI screen switching

* alert sync on screen change

* inventory reload

* hotbar margin fix

* chat bubbles above viewport

* whoops

* fixes ordering of speech bubble root

* should fix the chat focus issue (at least in-game, not lobby yet)

* should fix up the lobby/game chat focus

* fixes chat for lobby, turns lobby into a UI state

* viewport UI controller

* viewport ratio selection

* whoops

* adds the /tg/ widescreen ratio

* removes warning from inventory UI controller, adds background to separated chat game screen's chat portion

* menu button reload

* unload menu buttons only from gameplay state shutdown

* bugfix

* character button fix

* adds config options for viewport width/UI layout

* variable naming changes, get or null instead of get to avoid exceptions

* moves entity system get into controller
2022-10-17 17:13:41 -05:00
Leon Friedrich 243876474c
Fix inventory containers (#11944) 2022-10-16 15:16:27 +11:00
Leon Friedrich 8f6b2f4e77
Fix ghost inventory not updating (#11935) 2022-10-15 13:02:45 -07:00
Leon Friedrich efac113469
Improve stripping UI (#9768) 2022-10-16 04:00:04 +11:00
Leon Friedrich 15d92c39fe
Fix slot interactions (again) (#11903) 2022-10-14 05:35:10 +11:00
Jezithyr 571dd4e6d5
Hud refactor (#7202)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Jezithyr <jmaster9999@gmail.com>
Co-authored-by: Jezithyr <Jezithyr@gmail.com>
Co-authored-by: Visne <39844191+Visne@users.noreply.github.com>
Co-authored-by: wrexbe <wrexbe@protonmail.com>
Co-authored-by: wrexbe <81056464+wrexbe@users.noreply.github.com>
2022-10-12 10:16:23 +02:00
keronshb cd78c5451d
Ensnaring Component and Bola Update (#9968) 2022-08-25 00:50:31 +10:00
Leon Friedrich 921e2ee57d
BUI changes required for Engine PR (#10608) 2022-08-21 03:38:30 +10:00
metalgearsloth 45bd1edd5b
Revert "Update submodule to 0.34.0.0 (#10356)" (#10359) 2022-08-06 16:48:21 +10:00