]> git.smokeofanarchy.ru Git - space-station-14.git/commit
item toggling giga rework + full ninja refactor (#28039)
authordeltanedas <39013340+deltanedas@users.noreply.github.com>
Thu, 11 Jul 2024 05:55:56 +0000 (05:55 +0000)
committerGitHub <noreply@github.com>
Thu, 11 Jul 2024 05:55:56 +0000 (15:55 +1000)
commit02636386b5140bdeae7583f2a3eb1e17166e5db3
tree2a649fd2d4ec7f1889f1b97370cc92330748aac7
parente45f55e36d67ace2c2c5bc723082255f2ed909c4
item toggling giga rework + full ninja refactor (#28039)

* item toggle refactoring and some new systems

* add ToggleClothing component/system

* unhardcode magboots gravity logic

* make magboots and speedboots use ItemToggle and stuff

* remove now useless clothing components

* update client/server magboots systems

* add note to use ItemToggledEvent in ToggleActionEvent doc

* refactor PowerCellDraw to use ItemToggle for ui open/close control

* add TryUseCharges, refactor charges system

* update magboot trigger code

* make borg use ItemToggle, network SelectedModule instead of now removed Activated

* add AccessToggle for borg

* the giga ninja refactor

* update ninja yml

* update ItemToggle usage for some stuff

* fix activatableui requires power

* random fixing

* yaml fixing

* nuke ItemToggleDisarmMalus

* make defib use ItemToggle

* make things that use power not turn on if missing use charge

* pro

* fix sound prediction

* bruh

* proximity detector use ItemToggle

* oop

* big idiot syndrome

* fix ninja spawn rule and make it generic

* fix ninja spawn rule yml

* move loading profiles into AntagLoadProfileRule

* more ninja refactor

* ninja yml fixes

* the dreaded copy paste ops

* remove useless NinjaRuleComponent and ue AntagSelection for greeting

* fix invisibility

* move IsCompleted to SharedObjectivesSystem

* ability fixes

* oop fix powercell instantly draining itself

* sentient speedboots gaming

* make reflect use ItemToggle

* fix other test

* loadprofilerule moved into its own pr

* remove conflict with dragon refactor

* remove all GenericAntag code from ninja

* )

* probably

* remove old enabled

* great language bravo vince

* GREAT LANGUAGE

* who made this language

* because it stinks

* reparent blood-red magboots to magboots probbbly works

* most of the review stuff

* hasGrav doesnt mean what i thought it did

* make health analyzer use itemtoggle, not fail test

* fix mag/speed boots being wacky

* UNTROLL

* add ItemToggle to the random health analyzers

* a

* remove unused obsolete borg func

* untrolling

* :trollface:

* fix test

* fix

* g

* untroll

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
121 files changed:
Content.Client/Items/Systems/ItemToggleSystem.cs [deleted file]
Content.Client/Ninja/Systems/ItemCreatorSystem.cs [new file with mode: 0644]
Content.Client/Ninja/Systems/NinjaGlovesSystem.cs
Content.Client/Ninja/Systems/NinjaSuitSystem.cs
Content.Client/Ninja/Systems/NinjaSystem.cs
Content.Client/Ninja/Systems/SpiderChargeSystem.cs [new file with mode: 0644]
Content.IntegrationTests/Tests/Interaction/InteractionTest.Helpers.cs
Content.IntegrationTests/Tests/Interaction/InteractionTest.cs
Content.Server/Charges/Components/AutoRechargeComponent.cs
Content.Server/Charges/Systems/ChargesSystem.cs
Content.Server/GameTicking/Rules/Components/NinjaRuleComponent.cs [deleted file]
Content.Server/Item/ItemToggle/Components/ItemToggleDisarmMalusComponent.cs [deleted file]
Content.Server/Item/ItemToggle/Components/ItemToggleSharpComponent.cs [deleted file]
Content.Server/Item/ItemToggle/ItemToggleSystem.cs [deleted file]
Content.Server/Medical/Components/HealthAnalyzerComponent.cs
Content.Server/Medical/DefibrillatorSystem.cs
Content.Server/Medical/HealthAnalyzerSystem.cs
Content.Server/Ninja/Events/BatteryChangedEvent.cs
Content.Server/Ninja/Systems/BatteryDrainerSystem.cs
Content.Server/Ninja/Systems/ItemCreatorSystem.cs [new file with mode: 0644]
Content.Server/Ninja/Systems/NinjaGlovesSystem.cs
Content.Server/Ninja/Systems/NinjaSuitSystem.cs
Content.Server/Ninja/Systems/SpaceNinjaSystem.cs
Content.Server/Ninja/Systems/SpiderChargeSystem.cs
Content.Server/Ninja/Systems/StunProviderSystem.cs
Content.Server/Objectives/Systems/CodeConditionSystem.cs
Content.Server/PowerCell/PowerCellSystem.Draw.cs
Content.Server/PowerCell/PowerCellSystem.cs
Content.Server/Silicons/Borgs/BorgSystem.Modules.cs
Content.Server/Silicons/Borgs/BorgSystem.cs
Content.Server/StationEvents/Components/NinjaSpawnRuleComponent.cs [deleted file]
Content.Server/StationEvents/Components/SpaceSpawnRuleComponent.cs [new file with mode: 0644]
Content.Server/StationEvents/Events/SpaceSpawnRule.cs [moved from Content.Server/StationEvents/Events/NinjaSpawnRule.cs with 53% similarity]
Content.Server/Stunnable/Systems/StunbatonSystem.cs
Content.Server/Weapons/Misc/TetherGunSystem.cs
Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactMagnetTriggerSystem.cs
Content.Shared/Access/Components/AccessToggleComponent.cs [new file with mode: 0644]
Content.Shared/Access/Systems/AccessToggleSystem.cs [new file with mode: 0644]
Content.Shared/Beeper/Components/BeeperComponent.cs
Content.Shared/Beeper/Systems/BeeperSystem.cs
Content.Shared/Beeper/Systems/ProximityBeeperSystem.cs
Content.Shared/Charges/Systems/SharedChargesSystem.cs
Content.Shared/Clothing/ClothingSpeedModifierComponent.cs
Content.Shared/Clothing/ClothingSpeedModifierSystem.cs
Content.Shared/Clothing/Components/StealthClothingComponent.cs [deleted file]
Content.Shared/Clothing/Components/ToggleClothingComponent.cs [new file with mode: 0644]
Content.Shared/Clothing/Components/ToggleClothingSpeedComponent.cs [deleted file]
Content.Shared/Clothing/EntitySystems/StealthClothingSystem.cs [deleted file]
Content.Shared/Clothing/EntitySystems/ToggleClothingSystem.cs [new file with mode: 0644]
Content.Shared/Clothing/MagbootsComponent.cs
Content.Shared/Clothing/MagbootsSystem.cs [new file with mode: 0644]
Content.Shared/Clothing/SharedMagbootsSystem.cs [deleted file]
Content.Shared/Item/ItemToggle/ComponentTogglerSystem.cs [new file with mode: 0644]
Content.Shared/Item/ItemToggle/Components/ComponentTogglerComponent.cs [new file with mode: 0644]
Content.Shared/Item/ItemToggle/Components/ItemToggleActiveSoundComponent.cs
Content.Shared/Item/ItemToggle/Components/ItemToggleComponent.cs
Content.Shared/Item/ItemToggle/Components/ToggleVerbComponent.cs [new file with mode: 0644]
Content.Shared/Item/ItemToggle/ItemToggleSystem.cs [moved from Content.Shared/Item/ItemToggle/SharedItemToggleSystem.cs with 54% similarity]
Content.Shared/Item/ItemToggle/ToggleVerbSystem.cs [new file with mode: 0644]
Content.Shared/Medical/DefibrillatorComponent.cs
Content.Shared/Ninja/Components/BatteryDrainerComponent.cs
Content.Shared/Ninja/Components/BombingTargetComponent.cs
Content.Shared/Ninja/Components/DashAbilityComponent.cs
Content.Shared/Ninja/Components/EmagProviderComponent.cs
Content.Shared/Ninja/Components/EnergyKatanaComponent.cs
Content.Shared/Ninja/Components/ItemCreatorComponent.cs [new file with mode: 0644]
Content.Shared/Ninja/Components/NinjaGlovesComponent.cs
Content.Shared/Ninja/Components/NinjaSuitComponent.cs
Content.Shared/Ninja/Components/SpaceNinjaComponent.cs
Content.Shared/Ninja/Components/SpiderChargeComponent.cs
Content.Shared/Ninja/Components/StunProviderComponent.cs
Content.Shared/Ninja/Systems/DashAbilitySystem.cs
Content.Shared/Ninja/Systems/EmagProviderSystem.cs
Content.Shared/Ninja/Systems/EnergyKatanaSystem.cs
Content.Shared/Ninja/Systems/ItemCreatorSystem.cs [new file with mode: 0644]
Content.Shared/Ninja/Systems/SharedBatteryDrainerSystem.cs
Content.Shared/Ninja/Systems/SharedNinjaGlovesSystem.cs
Content.Shared/Ninja/Systems/SharedNinjaSuitSystem.cs
Content.Shared/Ninja/Systems/SharedSpaceNinjaSystem.cs
Content.Shared/Ninja/Systems/SharedSpiderChargeSystem.cs [new file with mode: 0644]
Content.Shared/Ninja/Systems/SharedStunProviderSystem.cs
Content.Shared/Objectives/Systems/SharedObjectivesSystem.cs
Content.Shared/Pinpointer/SharedProximityBeeper.cs [deleted file]
Content.Shared/PowerCell/PowerCellDrawComponent.cs
Content.Shared/PowerCell/SharedPowerCellSystem.cs
Content.Shared/ProximityDetection/Components/ProximityDetectorComponent.cs
Content.Shared/ProximityDetection/Systems/ProximityDetectionSystem.cs
Content.Shared/Silicons/Borgs/Components/BorgChassisComponent.cs
Content.Shared/Silicons/Borgs/SharedBorgSystem.cs
Content.Shared/Toggleable/ToggleActionEvent.cs
Content.Shared/Tools/Systems/SharedToolSystem.cs
Content.Shared/UserInterface/ActivatableUISystem.Power.cs
Content.Shared/Weapons/Reflect/ReflectComponent.cs
Content.Shared/Weapons/Reflect/ReflectSystem.cs
Resources/Prototypes/Actions/ninja.yml
Resources/Prototypes/Entities/Clothing/Hands/gloves.yml
Resources/Prototypes/Entities/Clothing/Head/misc.yml
Resources/Prototypes/Entities/Clothing/OuterClothing/suits.yml
Resources/Prototypes/Entities/Clothing/Shoes/magboots.yml
Resources/Prototypes/Entities/Clothing/Shoes/misc.yml
Resources/Prototypes/Entities/Clothing/base_clothing.yml
Resources/Prototypes/Entities/Markers/Spawners/ghost_roles.yml
Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml
Resources/Prototypes/Entities/Mobs/Player/human.yml
Resources/Prototypes/Entities/Mobs/Species/base.yml
Resources/Prototypes/Entities/Objects/Devices/base_handheld.yml [new file with mode: 0644]
Resources/Prototypes/Entities/Objects/Devices/pda.yml
Resources/Prototypes/Entities/Objects/Devices/station_map.yml
Resources/Prototypes/Entities/Objects/Shields/shields.yml
Resources/Prototypes/Entities/Objects/Specific/Medical/defib.yml
Resources/Prototypes/Entities/Objects/Specific/Medical/handheld_crew_monitor.yml
Resources/Prototypes/Entities/Objects/Specific/Medical/healthanalyzer.yml
Resources/Prototypes/Entities/Objects/Specific/Research/anomaly.yml
Resources/Prototypes/Entities/Objects/Tools/handheld_mass_scanner.yml
Resources/Prototypes/Entities/Objects/Tools/welders.yml
Resources/Prototypes/Entities/Objects/Weapons/Guns/Launchers/launchers.yml
Resources/Prototypes/Entities/Objects/Weapons/Melee/e_sword.yml
Resources/Prototypes/Entities/Objects/Weapons/Melee/sword.yml
Resources/Prototypes/Entities/Structures/Machines/Medical/cryo_pod.yml
Resources/Prototypes/GameRules/events.yml
Resources/Prototypes/GameRules/midround.yml