Commit graph

231 commits

Author SHA1 Message Date
Vigers Ray
a55a740ba3 Merge remote-tracking branch 'refs/remotes/wizards/master' 2024-11-22 06:44:44 +03:00
DrSmugleaf
5a751a820a
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-11-22 03:56:05 +01:00
Vigers Ray
d853b875eb Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Lobby/LobbyUIController.cs
#	Content.Client/Lobby/UI/CharacterSetupGui.xaml
#	Content.Client/Lobby/UI/CharacterSetupGui.xaml.cs
#	Content.Server/Antag/AntagSelectionSystem.cs
#	Content.Server/GameTicking/GameTicker.Lobby.cs
#	Content.Server/Objectives/Systems/KillPersonConditionSystem.cs
#	Content.Server/Store/Systems/StoreSystem.Ui.cs
#	Content.Shared/Inventory/InventorySystem.Relay.cs
#	Resources/Maps/_Sunrise/Shuttles/abandoned_outpost.yml
#	Resources/Prototypes/Entities/Stations/base.yml
#	Resources/Textures/Interface/Misc/job_icons.rsi/meta.json
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarm0.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarm1.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarm2.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarm_b1.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarm_b2.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarm_bitem.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarmp.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/alarmx.png
#	Resources/Textures/Structures/Wallmounts/air_monitors.rsi/meta.json
2024-11-19 18:34:32 +03:00
beck-thompson
da4fa9bea9
Clumsy system refactor (#31147)
* First commit

* Fixes

* Added the noise

* Renames

* Timespan

* Fixed space

* entity -> ent

* This shouldn't work

* opps....

* Datafield name change

* Better comments

* small comment

* Personal skill issue

* Event renames and stuff

* Couple fixes

* Defib ref fixes (Silly me)

* Added clumsy back!

* no hard code clumsy!

* Identity fix

* Event name change

* Comment change

* Function name change

* opp

* Update names

* Damage stuff!

* Fixes!

* Fixes

* opps

* This was hidden away!!

* negative diff feeds me
2024-11-16 00:46:01 +01:00
Vigers Ray
fba2af74b3 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	.github/labeler.yml
#	.github/workflows/labeler-needsreview.yml
#	.github/workflows/labeler-untriaged.yml
#	Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml
#	Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml
#	Resources/Prototypes/Entities/Mobs/Player/silicon.yml
#	Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_parts.yml
#	Resources/Prototypes/Entities/Objects/Specific/Robotics/endoskeleton.yml
#	Resources/Prototypes/Entities/Structures/Machines/lathe.yml
#	Resources/Prototypes/Recipes/Construction/Graphs/machines/cyborg.yml
#	Resources/Prototypes/tags.yml
#	Resources/ServerInfo/Guidebook/Science/Cyborgs.xml
#	Resources/migration.yml
2024-11-15 14:52:30 +03:00
Pieter-Jan Briers
1bebb3390c
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-14 11:08:35 -06:00
Vigers Ray
389ed704e1 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Entry/EntryPoint.cs
#	Content.Client/IoC/ClientContentIoC.cs
#	Content.Server/Administration/Managers/BanManager.cs
#	Content.Server/Chat/Managers/ChatSanitizationManager.cs
#	Content.Server/Chat/Systems/ChatSystem.cs
#	Content.Server/Traitor/Uplink/UplinkSystem.cs
#	Content.Shared/Interaction/SharedInteractionSystem.cs
#	Content.Shared/Localizations/ContentLocalizationManager.cs
#	Content.Shared/Roles/JobRequirement/DepartmentTimeRequirement.cs
#	Content.Shared/Roles/JobRequirement/OverallPlaytimeRequirement.cs
#	Content.Shared/Roles/JobRequirement/RoleTimeRequirement.cs
#	Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs
#	Resources/Audio/Ambience/Antag/attributions.yml
#	Resources/Audio/Weapons/Guns/Gunshots/attributions.yml
#	Resources/Locale/en-US/_strings/advertisements/other/firebot.ftl
#	Resources/Locale/en-US/_strings/shuttles/commands.ftl
#	Resources/Prototypes/Datasets/Names/last.yml
#	Resources/Prototypes/Entities/Mobs/Player/silicon.yml
#	Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml
#	Resources/Prototypes/Entities/Structures/Machines/lathe.yml
#	Resources/Prototypes/Roles/Jobs/Science/borg.yml
#	Resources/Prototypes/Shuttles/shuttle_incoming_event.yml
#	Resources/ServerInfo/Guidebook/Antagonist/Traitors.xml
#	Resources/Textures/Clothing/Head/Hats/warden.rsi/equipped-HELMET.png
#	Resources/Textures/Clothing/Head/Hats/warden.rsi/meta.json
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/ce.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/equipped-INNERCLOTHING-monkey.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/ce.rsi/meta.json
#	Resources/Textures/Interface/Actions/actions_borg.rsi/meta.json
#	Resources/Textures/Structures/Wallmounts/posters.rsi/meta.json
#	RobustToolbox
2024-10-30 13:26:32 +03:00
haiwwkes
99851de785
ayo (#545) 2024-10-30 10:42:02 +03:00
Leon Friedrich
adb7aee831
Fix PlantHolder interactions & InteractionSystem assert (#32874) 2024-10-18 16:40:36 +11:00
Leon Friedrich
97f6097dad
Add IsQueuedForDeletion checks to interaction system (#32526) 2024-10-14 15:13:35 +11:00
Leon Friedrich
30ada26315
Remove inaccurate admin log when moving a held item (#32525)
Remove inaccurate admin log when switching held item
2024-10-14 15:05:40 +11:00
VigersRay
940710da9e Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
#	Resources/Textures/Tiles/attributions.yml
#	Resources/Textures/Tiles/green_circuit.png
#	Resources/Textures/Tiles/steel.png
2024-10-02 15:50:00 +03:00
Plykiya
2a07e4666a
Fix quick-swap stacks of items (#32560)
* remove picking up stack on quick swap

* better
2024-10-02 15:27:01 +10:00
VigersRay
b1cac7e781 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Chat/Managers/IChatManager.cs
#	Content.Client/IoC/ClientContentIoC.cs
#	Content.Server/Administration/Systems/BwoinkSystem.cs
#	Content.Server/Chat/Managers/ChatManager.cs
#	Content.Server/GameTicking/GameTicker.Player.cs
#	Resources/Audio/Machines/attributions.yml
#	Resources/Locale/en-US/_strings/administration/commands/custom-vote-command.ftl
#	Resources/Locale/en-US/_strings/discord/vote-notifications.ftl
#	Resources/Locale/en-US/_strings/npc/firebot.ftl
#	Resources/Locale/en-US/_strings/paper/syndicate-business-card.ftl
#	Resources/Locale/en-US/_strings/store/uplink-catalog.ftl
#	Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml
#	Resources/Prototypes/Recipes/Crafting/bots.yml
#	Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json
#	Resources/Textures/Structures/Walls/solid.rsi/reinf_over0.png
2024-10-02 06:45:10 +03:00
Leon Friedrich
f1f1fc1dc3
Add interaction rate limits (#32527)
* Move PlayerRateLimitManager to shared

* Add interaction rate limits

* uncap tests
2024-09-29 22:19:00 +10:00
VigersRay
47cdabdaed Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Shared/StatusEffect/StatusEffectsSystem.cs
#	Resources/Audio/Effects/attributions.yml
#	Resources/Locale/en-US/_strings/anomaly/inner_anomaly.ftl
#	Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
#	Resources/Prototypes/Entities/Mobs/Species/base.yml
#	Resources/Prototypes/Entities/Objects/Devices/Syndicate_Gadgets/reinforcement_teleporter.yml
#	Resources/ServerInfo/Guidebook/Service/FoodRecipes.xml
2024-09-19 16:09:00 +03:00
deltanedas
8a924c84ae
add interaction success/failure events (#32216)
* add interaction success/failure events

* pro

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-09-19 00:36:44 +02:00
VigersRay
9328f4d9cb Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Lobby/UI/Loadouts/LoadoutWindow.xaml.cs
#	Content.Server/Connection/ConnectionManager.cs
#	Content.Server/GameTicking/GameTicker.Spawning.cs
#	Content.Server/Shuttles/Systems/ArrivalsSystem.cs
#	Content.Server/Shuttles/Systems/DockingSystem.Shuttle.cs
#	Content.Server/Shuttles/Systems/EmergencyShuttleSystem.cs
#	Content.Server/Station/Systems/StationSpawningSystem.cs
#	Content.Shared/Chat/SharedChatSystem.cs
#	Content.Shared/UserInterface/ActivatableUIComponent.cs
#	Resources/Prototypes/Datasets/Names/ai.yml
#	Resources/Prototypes/Datasets/adjectives.yml
#	Resources/Prototypes/Datasets/verbs.yml
#	Resources/Prototypes/Entities/Clothing/Shoes/boots.yml
#	Resources/Prototypes/Entities/Clothing/Shoes/specific.yml
#	Resources/Prototypes/Entities/Mobs/NPCs/revenant.yml
#	Resources/Prototypes/Entities/Objects/Specific/Robotics/mmi.yml
#	Resources/Prototypes/Entities/Stations/base.yml
#	Resources/Prototypes/Entities/Structures/Machines/lathe.yml
#	Resources/Prototypes/Maps/bagel.yml
#	Resources/Prototypes/Roles/Jobs/Science/borg.yml
#	Resources/Prototypes/Roles/Jobs/Security/security_cadet.yml
#	Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/equipped-HELMET.png
#	Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/icon.png
#	Resources/Textures/Clothing/Head/Helmets/light_riot.rsi/meta.json
#	Resources/Textures/Interface/Misc/job_icons.rsi/meta.json
#	Resources/Textures/Objects/Misc/bureaucracy.rsi/meta.json
#	Resources/Textures/Structures/Wallmounts/barsign.rsi/officerbeersky.png
#	Resources/Textures/Structures/Wallmounts/signs.rsi/anomaly.png
#	Resources/Textures/Structures/Wallmounts/signs.rsi/meta.json
#	SpaceStation14.sln
2024-08-28 19:12:01 +03:00
metalgearsloth
afd0618a60
Station AI (#30944)
* Station AI overlay

* implement

* Bunch of ports

* Fix a heap of bugs and basic scouting

* helldivers

* Shuffle interactions a bit

* navmap stuff

* Revert "navmap stuff"

This reverts commit d1f89dd4be83233e22cf5dd062b2581f3c6da062.

* AI wires implemented

* Fix examines

* Optimise the overlay significantly

* Back to old static

* BUI radial working

* lots of work

* Saving work

* thanks fork

* alright

* pc

* AI upload console

* AI upload

* stuff

* Fix copy-paste shitcode

* AI actions

* navmap work

* Fixes

* first impressions

* a

* reh

* Revert "navmap work"

This reverts commit 6f63fea6e9245e189f368f97be3e32e9b210580e.

# Conflicts:
#	Content.Client/Silicons/StationAi/StationAiOverlay.cs

* OD

* radar

* weh

* Fix examines

* scoop mine eyes

* fixes

* reh

* Optimise

* Final round of optimisations

* Fixes

* fixes
2024-08-28 10:57:12 +10:00
VigersRay
0e8d030be2 фикс BlockMovementComponent 2024-08-22 06:51:38 +03:00
VigersRay
0441b8b814 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Launcher/LauncherConnecting.cs
#	Content.Client/Launcher/LauncherConnectingGui.xaml
#	Content.Client/Launcher/LauncherConnectingGui.xaml.cs
#	Content.Server/Administration/Managers/BanManager.cs
#	Content.Server/Medical/Components/HealthAnalyzerComponent.cs
#	Content.Server/Medical/HealthAnalyzerSystem.cs
#	Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs
#	Content.Server/StationEvents/Events/RandomSentienceRule.cs
#	Content.Shared/Interaction/Components/BlockMovementComponent.cs
#	Content.Shared/Interaction/SharedInteractionSystem.Blocking.cs
#	Content.Shared/Materials/SharedMaterialReclaimerSystem.cs
#	Resources/Prototypes/Accents/word_replacements.yml
#	Resources/Prototypes/Catalog/Fills/Books/bookshelf.yml
#	Resources/Prototypes/Entities/Mobs/Customization/Markings/cat_parts.yml
#	Resources/Prototypes/Entities/Mobs/NPCs/silicon.yml
#	Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml
#	Resources/Prototypes/Entities/Structures/Machines/lathe.yml
#	Resources/Prototypes/Objectives/objectiveGroups.yml
#	Resources/Prototypes/Objectives/stealTargetGroups.yml
#	Resources/Prototypes/Roles/Jobs/Security/detective.yml
#	Resources/Prototypes/Species/human.yml
#	Resources/Prototypes/Voice/speech_emotes.yml
#	Resources/ServerInfo/Guidebook/Antagonist/Antagonists.xml
#	Resources/ServerInfo/Guidebook/Antagonist/MinorAntagonists.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Nuclear Operatives.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Revolutionaries.xml
#	Resources/ServerInfo/Guidebook/Antagonist/SpaceNinja.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Traitors.xml
#	Resources/ServerInfo/Guidebook/Antagonist/Zombies.xml
#	Resources/migration.yml
2024-08-22 06:50:04 +03:00
Psychpsyo
9a68cf0b0e
Re-add improved random sentience event (#29123)
* Re-add improved random sentience event

* Make randomly sentient PDA more likely

* Make vending machine sentience less likely

* Make requested changes

* Make randomly sentient captain's gear more likely

* Sentient captain sabre has pirate accent

* Tweak new random sentient object a bit more

* Sentient PDA improvements

* Apply recommended fixes

* Add requested changes

* Fix merge conflict
2024-08-18 17:41:12 -06:00
VigersRay
67c8ba2471 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTab.xaml.cs
#	Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTabEntry.xaml
#	Content.Client/Administration/UI/Tabs/ObjectsTab/ObjectsTabEntry.xaml.cs
#	Content.IntegrationTests/Tests/PostMapInitTest.cs
#	Content.Server/Chat/Systems/ChatSystem.cs
#	Content.Server/Clothing/Components/GloveHeatResistanceComponent.cs
#	Content.Server/Light/EntitySystems/PoweredLightSystem.cs
#	Content.Server/Medical/HealthAnalyzerSystem.cs
#	Content.Server/Medical/SuitSensors/SuitSensorComponent.cs
#	Content.Server/StationEvents/Events/MeteorSwarmSystem.cs
#	Content.Server/StationEvents/Events/StationEventSystem.cs
#	Content.Shared/Actions/SharedActionsSystem.cs
#	Content.Shared/Interaction/SharedInteractionSystem.cs
#	Resources/Prototypes/AlertLevels/alert_levels.yml
#	Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
#	Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
#	Resources/Prototypes/Catalog/VendingMachines/Inventories/engivend.yml
#	Resources/Prototypes/Datasets/Names/fortunes.yml
#	Resources/Prototypes/Datasets/ion_storm.yml
#	Resources/Prototypes/Entities/Clothing/Neck/mantles.yml
#	Resources/Prototypes/Entities/Clothing/Uniforms/jumpsuits.yml
#	Resources/Prototypes/Entities/Markers/Spawners/Random/maintenance.yml
#	Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml
#	Resources/Prototypes/Entities/Objects/Fun/pai.yml
#	Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml
#	Resources/Prototypes/Entities/Objects/Specific/Medical/handheld_crew_monitor.yml
#	Resources/Prototypes/Entities/Structures/Machines/lathe.yml
#	Resources/Prototypes/GameRules/events.yml
#	Resources/Prototypes/Loadouts/Jobs/Science/research_director.yml
#	Resources/Prototypes/Recipes/Lathes/clothing.yml
#	Resources/Prototypes/game_presets.yml
#	Resources/Prototypes/secret_weights.yml
#	Resources/ServerInfo/Guidebook/Engineering/Singularity.xml
#	Resources/Textures/Clothing/Head/Helmets/security.rsi/equipped-HELMET-vox.png
#	Resources/Textures/Clothing/Head/Helmets/security.rsi/equipped-HELMET.png
#	Resources/Textures/Clothing/Head/Helmets/security.rsi/icon.png
#	Resources/Textures/Clothing/Head/Helmets/security.rsi/inhand-left.png
#	Resources/Textures/Clothing/Head/Helmets/security.rsi/inhand-right.png
#	Resources/Textures/Clothing/Head/Helmets/security.rsi/meta.json
#	Resources/Textures/Clothing/Mask/ert.rsi/meta.json
#	Resources/Textures/Clothing/Mask/joy.rsi/meta.json
#	Resources/Textures/Clothing/Mask/squadron.rsi/meta.json
#	Resources/Textures/Clothing/Neck/Cloaks/cmo.rsi/equipped-NECK.png
#	Resources/Textures/Clothing/Neck/Cloaks/cmo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/Armor/security.rsi/equipped-OUTERCLOTHING.png
#	Resources/Textures/Clothing/OuterClothing/Armor/security.rsi/icon.png
#	Resources/Textures/Clothing/OuterClothing/Armor/security.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi/inhand-left.png
#	Resources/Textures/Clothing/OuterClothing/Hardsuits/medical.rsi/inhand-right.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/hos_alt.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Objects/Specific/Hydroponics/aloe.rsi/produce.png
#	Resources/Textures/Objects/Specific/Hydroponics/apple.rsi/produce.png
#	Resources/Textures/Objects/Specific/Hydroponics/cannabis.rsi/produce.png
#	Resources/Textures/Objects/Tools/crowbar.rsi/meta.json
#	Resources/Textures/Objects/Tools/crowbar.rsi/red-icon.png
#	Resources/Textures/Objects/Tools/crowbar.rsi/red-storage.png
#	Resources/Textures/Structures/Wallmounts/Lighting/light_tube.rsi/base.png
#	Resources/Textures/Structures/Wallmounts/Lighting/light_tube.rsi/broken.png
#	Resources/Textures/Structures/Wallmounts/Lighting/light_tube.rsi/burned.png
#	Resources/Textures/Structures/Wallmounts/Lighting/light_tube.rsi/empty.png
#	Resources/Textures/Structures/Wallmounts/Lighting/light_tube.rsi/glow.png
#	Resources/Textures/Structures/Wallmounts/Lighting/light_tube.rsi/meta.json
#	Resources/migration.yml
2024-08-14 19:55:44 +03:00
Scribbles0
220aff21eb
Melee Executions (#30104)
* melee executions

* fix damage bug

* cleanup

* address reviews hopefully

* resistance bypass mechanic

* component changes

* self executions (not finished yet)

* self execs part two

* ok i fixed things (still not finished)

* finish everything

* review stuff

* nuke if (kind = special)

* more review stuffs

* Make suicide system much less hardcoded and make much more use of events

* Fix a dumb bug I introduced

* self execution popups

* Integration tests

* Why did they even take 0.5 blunt damage?

* More consistent integration tests

* Destructive equals true

* Allow it to dirty-dispose

* IS THIS WHAT YOU WANT?

* FRESH AND CLEAN

* modifier to multiplier

* don't jinx the integration tests

* no file-scoped namespace

* Move the rest of execution to shared, create SuicideGhostEvent

* handled

* Get rid of unused code and add a comment

* ghost before suicide

* stop cat suicides

* popup fix + small suicide change

* make it a bit better

---------

Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
2024-08-11 13:05:54 +10:00
ShadowCommander
2f77d0d4f3
Add a component that inserts the held item when no interaction happens on the stored item (#29823)
* Insert when held item has no interaction with stored item

* Decouple inserting on failure

* Add component that stores the used entity when no interaction happened

* Add prediction
2024-08-11 12:29:44 +10:00
VigersRay
c0ee7e3cc9 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	.github/PULL_REQUEST_TEMPLATE.md
#	Content.Client/Lobby/LobbyUIController.cs
#	Content.Client/Lobby/UI/HumanoidProfileEditor.xaml.cs
#	Content.Client/Players/PlayTimeTracking/JobRequirementsManager.cs
#	Content.Server/Administration/Systems/BwoinkSystem.cs
#	Content.Server/IoC/ServerContentIoC.cs
#	Content.Server/Players/PlayTimeTracking/PlayTimeTrackingSystem.cs
#	Content.Server/Shuttles/Systems/ArrivalsSystem.cs
#	Content.Shared/Preferences/Loadouts/LoadoutPrototype.cs
#	Content.Shared/Roles/JobRequirements.cs
#	Resources/Prototypes/Accents/word_replacements.yml
#	Resources/Prototypes/Catalog/Fills/Lockers/security.yml
#	Resources/Prototypes/Entities/Mobs/Species/base.yml
#	Resources/Prototypes/Loadouts/Jobs/Cargo/cargo_technician.yml
#	Resources/Prototypes/Loadouts/Jobs/Cargo/quartermaster.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/bartender.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/botanist.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/chaplain.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/chef.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/janitor.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/lawyer.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/librarian.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/mime.yml
#	Resources/Prototypes/Loadouts/Jobs/Civilian/passenger.yml
#	Resources/Prototypes/Loadouts/Jobs/Command/captain.yml
#	Resources/Prototypes/Loadouts/Jobs/Command/head_of_personnel.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/atmospheric_technician.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/chief_engineer.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/station_engineer.yml
#	Resources/Prototypes/Loadouts/Jobs/Engineering/technical_assistant.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/chemist.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/chief_medical_officer.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/medical_doctor.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/medical_intern.yml
#	Resources/Prototypes/Loadouts/Jobs/Medical/paramedic.yml
#	Resources/Prototypes/Loadouts/Jobs/Science/research_director.yml
#	Resources/Prototypes/Loadouts/Jobs/Science/scientist.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/detective.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/head_of_security.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/security_cadet.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/security_officer.yml
#	Resources/Prototypes/Loadouts/Jobs/Security/warden.yml
#	Resources/Prototypes/Loadouts/Miscellaneous/trinkets.yml
#	Resources/Prototypes/Recipes/Lathes/medical.yml
#	Resources/Prototypes/Roles/Jobs/Cargo/quartermaster.yml
#	Resources/Prototypes/Roles/Jobs/Command/captain.yml
#	Resources/Prototypes/Roles/Jobs/Command/head_of_personnel.yml
#	Resources/Prototypes/Roles/Jobs/Engineering/chief_engineer.yml
#	Resources/Prototypes/Roles/Jobs/Medical/chief_medical_officer.yml
#	Resources/Prototypes/Roles/Jobs/Science/research_director.yml
#	Resources/Prototypes/Roles/Jobs/Security/head_of_security.yml
#	Resources/Textures/Clothing/Mask/sadmime.rsi/meta.json
#	Resources/Textures/Clothing/Mask/scaredmime.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coat.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatatmos.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcap.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcargo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatce.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcentcom.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatchem.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatcmo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatengi.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatgen.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coathop.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coathos.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coathydro.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatjani.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatmed.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatmime.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatminer.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatparamed.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatqm.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatrd.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatrobo.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatsci.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatsec.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatviro.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatwarden.rsi/meta.json
#	Resources/Textures/Structures/Power/apc.rsi/base.png
#	Resources/Textures/Structures/Power/apc.rsi/broken.png
#	Resources/Textures/Structures/Power/apc.rsi/display-charging.png
#	Resources/Textures/Structures/Power/apc.rsi/display-full.png
#	Resources/Textures/Structures/Power/apc.rsi/display-lack.png
#	Resources/Textures/Structures/Power/apc.rsi/display-remote.png
#	Resources/Textures/Structures/Power/apc.rsi/emag-unlit.png
#	Resources/Textures/Structures/Power/apc.rsi/frame.png
#	Resources/Textures/Structures/Power/apc.rsi/static.png
2024-08-05 17:22:05 +03:00
slarticodefast
bb2981400c
replace all uses of TryGetContainingContainer with non-obsolete overload (#30583)
* replace all uses of TryGetContainerContainer with non-obsolete overload

* rerun
2024-08-04 15:38:53 +10:00
slarticodefast
2c31e03ee3
Fix borgs being unable to state laws or open other UIs without modules (#30299)
borg law 2 state laws all day
2024-08-02 15:44:59 +10:00
metalgearsloth
20cb65f2e6
Fix double interaction popups (#30452)
The issue is it plays the "you hug xyz" to everyone in range as well as the target client so they overlap. IDK if anything else is broken by this but this control flow is pretty bad so I wouldn't be surprised.
2024-08-02 11:33:20 +10:00
VigersRay
31b2d24e30 Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts:
#	Content.Shared/MagicMirror/MagicMirrorComponent.cs
#	Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
#	Resources/Prototypes/Entities/Stations/base.yml
#	Resources/Textures/Clothing/Head/Hats/beret_security.rsi/equipped-HELMET-hamster.png
#	Resources/Textures/Clothing/Head/Hats/beret_security.rsi/equipped-HELMET.png
#	Resources/Textures/Clothing/Head/Hats/beret_security.rsi/icon.png
#	Resources/Textures/Clothing/Head/Hats/beret_security.rsi/inhand-left.png
#	Resources/Textures/Clothing/Head/Hats/beret_security.rsi/inhand-right.png
#	Resources/Textures/Clothing/Head/Hats/beret_security.rsi/meta.json
#	Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/equipped-HELMET.png
#	Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/icon.png
#	Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/inhand-left.png
#	Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/inhand-right.png
#	Resources/Textures/Clothing/Head/Hoods/Bio/security.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/equipped-OUTERCLOTHING.png
#	Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/icon.png
#	Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/inhand-left.png
#	Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/inhand-right.png
#	Resources/Textures/Clothing/OuterClothing/Bio/security.rsi/meta.json
#	Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/equipped-OUTERCLOTHING.png
#	Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/icon.png
#	Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/inhand-left.png
#	Resources/Textures/Clothing/OuterClothing/Coats/warden.rsi/inhand-right.png
#	Resources/Textures/Clothing/OuterClothing/WinterCoats/coatwarden.rsi/meta.json
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/hos.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/hos.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/security.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/security.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/warden.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpskirt/warden.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/hos.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/hos.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/security.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/security.rsi/icon.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/warden.rsi/equipped-INNERCLOTHING.png
#	Resources/Textures/Clothing/Uniforms/Jumpsuit/warden.rsi/icon.png
#	Resources/migration.yml
2024-07-31 03:54:09 +03:00
themias
648f94f4bb
Fix fingerprint transfer on weapon attack (#30257)
* Fix fingerprint transfer on weapon attack

* Switch to just not raising the event

* one more
2024-07-30 18:35:30 +10:00
Vigers Ray
4ee05b0350
Продвинутые борги (#247)
* Ну типа всё

* InnateItemSystem и фичи для пИИ
2024-07-27 10:23:34 +03:00
slarticodefast
3f014e84eb
minor SharedInteractionSystem cleanup (#30139)
cleanup SharedInteractionSystem
2024-07-18 10:41:15 +10:00
themias
a0052c5b09
Prevent virtual item storage and popups (#30020)
* Prevent virtual item storage and popups

* fix typo

* add comment
2024-07-15 00:08:39 +10:00
Pieter-Jan Briers
45cc19f315
Add InteractUsing admin logs. (#29514)
Apparently we did not have these.
2024-06-27 16:58:42 +02:00
Leon Friedrich
fa3c89a521
Partial buckling refactor (#29031)
* partial buckling refactor

* git mv test

* change test namespace

* git mv test

* Update test namespace

* Add pulling test

* Network BuckleTime

* Add two more tests

* smelly
2024-06-20 01:14:18 +10:00
Leon Friedrich
ee2c115e5b
Turn interaction related attempt events into structs (#29168)
* Turn InteractionAttemptEvent into a struct event

* readonly

* GettingInteractedWithAttemptEvent

* ConsciousAttemptEvent
2024-06-19 00:30:41 +10:00
DrSmugleaf
def04cdaf5
Add more info to GettingAttackedAttemptEvent (#28548) 2024-06-03 09:30:47 -04:00
Plykiya
d6ba166d3b
Replace obsolete EntityWhitelist IsValid usages (#28465)
* Replace obsolete whitelist is valid with whitelist system

* Consistency

* Fix logic

* Bork

* I figured out how to get whitelists on the client lol

* test fail

* woops

* HELP ME FUNCTIONS

* Fix errors

* simplify

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-01 23:10:24 -04:00
Nemanja
a1a8f04036
Decouple interactions from hands, cleanup old events, add new fears (#28393)
* ok basic shit

* second part

* pretend it isn't real it can't hurt you.

* 👁️ 👁️

* shadowcommander review
2024-05-31 13:26:19 -07:00
Leon Friedrich
7b25f84119
Fix hugging mispredict (#28432)
* git mv

* Move namespaces

* Fix hugging mispredict
2024-05-31 11:25:03 -06:00
metalgearsloth
08952b467d
Fix single-user BUIs erroneously closing (#28375) 2024-05-29 03:25:16 -07:00
Leon Friedrich
12841da9a1
Fix storage UI interactions (#28291)
* Fix storage UI interactions

* Add VV support
2024-05-26 12:11:37 +10:00
Leon Friedrich
76e13eed35
Improve InteractionSystem range & BUI checks (#27999)
* Improve InteractionSystem range & BUI checks

* Ghost fixes

* AAA

* Fix test

* fix nullable

* revert to broadcast event

* Fixes for eengine PR

* Ah buckle code

* )
2024-05-24 15:03:03 +10:00
DrSmugleaf
594a898260
Fix whatever the fuck is going on in storage system slightly (#28236)
* Fix whatever the fuck is going on in storage system slightly

* Fix inverted check

* h

* Add silent bool

* Silent
2024-05-23 18:23:55 -07:00
Leon Friedrich
0f6e1196d8
Use non-generic TryComp() for metadata & transform (#28133) 2024-05-20 22:40:35 -07:00
Kara
855234aa30
Resolve 'TransformComponent.MapPosition' is obsolete in content (#27939)
* Resolve `'TransformComponent.MapPosition' is obsolete: 'Use TransformSystem.GetMapCoordinates'` in content

* build?
2024-05-12 10:31:54 -04:00
metalgearsloth
5896e68752
Content update for UI prediction (#27214)
* Content update for UI refactor

* Big update

* Sharing

* Remaining content updates

* First big update

* Prototype updates

* AUGH

* Fix UI comp ref

* Cleanup

- Fix predicted message, fix item slots, fix interaction range check.

* Fix regressions

* Make this predictive

idk why it wasn't.

* Fix slime merge

* Merge conflict

* Fix merge
2024-04-26 18:16:24 +10:00
metalgearsloth
d745a788ea
Fix UseDelay issues (#27336)
* Fix UseDelay issues

- Fix it not predicting properly by deep-copying the classes (realistically they should be structs).
- Fix the `z` path not applying UseDelay similarly to the `e` path.

* click
2024-04-26 17:58:06 +10:00
Tayrtahn
480d26aba6
Fix climbing and bonking simultaneously (#27268)
* Properly network ClumsyComponent

* Fix being able to climb and bonk at the same time.
Also properly subscribe to AttemptClimbEvent by-ref.

* Update Content.Shared/Interaction/Components/ClumsyComponent.cs
2024-04-24 23:02:43 +10:00