Commit Graph

244 Commits

Author SHA1 Message Date
beck-thompson 2791aa4792
Fixed gloved weapons being able to attack when not equipped. (#26762)
* Initial commit. No evil hidden files this time :)

* Added newline because I forgot :(

* We <3 tags :)

* Fixed! Works now

* Update Content.Shared/Weapons/Melee/MeleeWeaponComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit afcdc8b8668a0504fd0392eaa1b6dcd36b4f1108)
2024-04-21 22:05:35 +02:00
Froffy025 0e5eaa1008
Wield recoil components (#26915)
* WieldRecoilComponents

* WieldRecoilComponents

* Update Content.Shared/Weapons/Ranged/Components/GunWieldBonusComponent.cs

Co-authored-by: Whisper <121047731+QuietlyWhisper@users.noreply.github.com>

* Update Content.Shared/Weapons/Ranged/Components/GunWieldBonusComponent.cs

---------

Co-authored-by: Whisper <121047731+QuietlyWhisper@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit a7fad5d43953ea679418d7c39272bf3224f7767f)
2024-04-21 21:58:24 +02:00
DrSmugleaf 99ab8cea68
Fix rockets and lasers looking like they have nothing loaded (#26933)
(cherry picked from commit 13cef85a6e7d0f5873d1f66358ef742356541582)
2024-04-21 21:56:42 +02:00
Bixkitts 070d466494
MeleeHitSoundSystem (#25005)
* Began work to unscrew melee noises

* finished

* cleanup

* cleanup

* Update Content.Server/Weapons/Melee/MeleeWeaponSystem.cs

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>

* _Style

* Fix merge

---------

Co-authored-by: Ed <96445749+TheShuEd@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit ae8a68b7cd1d4f89b4d9f429b49d5336dccac6bb)
2024-04-07 14:20:27 +02:00
Jake Huxell 7be31aab33
Reduced Warning Count By 130 For Full Rebuilds (#26518)
* remove deprecated entity coordinate extension functions. Reduces warning count by approximately 50

* final toCoords Removed

* Remove all unused variables and dead code paths

* remove always true variable, should be a cvar or something instead

* remove superfluous variables from tests

(cherry picked from commit 59e46aab93ca38f8d57fcad4e3a2c893737d9ad4)
2024-04-07 14:11:06 +02:00
Tayrtahn aa766da2c5
Code cleanup: Purge obsoleted SharedPhysicsSystem methods (#26287)
Updated calls to SharedPhysicsSystem methods

(cherry picked from commit 964c6d54caae45b205a326143f56d6458a1bbc8a)
2024-03-27 18:35:38 +01:00
IProduceWidgets 242d6dd30e
Fix admin verb to set unspawned ballisic ammo count (#26411)
Don't crash if an invalid value is given.

(cherry picked from commit 451890b85b49e17a0019d107db4a31a48cdd3518)
2024-03-27 18:35:09 +01:00
Tayrtahn 11eff87687
Code cleanup: Dirty(Comp) (#26238)
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.

* Missed a few

* Revert changes to pulling

* No

(cherry picked from commit 4a83c365858830e3b2ff2b94fff501256422c20e)
2024-03-24 00:04:13 +01:00
nikthechampiongr ad5628777b
Simplify DoAfterArgs behavior for movement and distance checks (#25226)
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.

* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.

* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.

* Fix issue introduced by merge.

* Use interaction system for determining whether a distance is within range

* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.

* Exorcise ghost.

The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.

* Exorcise ghost Pt. 2

* Allow for movement check to be overriden in zero g and adjust doafter args where needed.

You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars

* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.

* Fix evil incorrect and uneeded comments

(cherry picked from commit 362d56981fd7654f6ebec36f16cc8fabdd04b6a7)
2024-03-24 00:03:28 +01:00
Mr. 27 6af478ae29
Zombie wideswing and misc fix (#26064)
* inital

* b

* Update MeleeWeaponComponent.cs

* Update Content.Shared/Zombies/ZombieComponent.cs

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 3981173a1546dd1d4a21b1c85451ea7eaf69c6f8)
2024-03-17 14:58:53 +01:00
metalgearsloth 444801f137
Fix gun cycling ammo count update (#25635)
Doesn't update correctly when cycling.

(cherry picked from commit fc0ff8fb313d8dfddf803c19a19bf2629ce89e90)
2024-03-07 01:04:01 +01:00
Pieter-Jan Briers e7a3b82a8d
Use new ComponentPauseGenerator (#25183)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.

(cherry picked from commit e00f74505c62310bd15aeaba8d6530f648397074)
2024-03-07 00:57:05 +01:00
Debug b1958e9ac6
Revert "Cleanup ExecutionSystem (#24382)"
This reverts commit dc56c5992f.
2024-03-07 00:51:07 +01:00
nikthechampiongr dc56c5992f
Cleanup ExecutionSystem (#24382) 2024-03-05 09:55:50 +01:00
Debug 7c62f5e0ec
Prevent probers from being unachored by gorilla gauntlets (#824)
* Fix being able to punt probers to unachor them

* Fix my wacky comment
2024-02-13 01:59:01 +01:00
Debug a4fd13ae70
Fix current test fails 2024-02-08 13:05:23 +01:00
Bixkitts 971502af2c
MeleeSoundComponent Working With 0 Damage (#24872)
* made hit sound logic potentially better

* Function already tries all fallbacks, no reason to return bool

* NoDamageSound execution path

(cherry picked from commit b98dc669741a3e5199e9fa03d82703821ab5284c)
2024-02-08 12:27:15 +01:00
metalgearsloth ac052e4666
Revert "Make flare gun explode, damage and stun the player when used … (#24679)
* Revert "Make flare gun explode, damage and stun the player when used with the wrong ammo (#22349)"

This reverts commit e301378114b245fa6927372f83c19868cb90b13c.

# Conflicts:
#	Content.Shared/Weapons/Ranged/Components/GunComponent.cs
#	Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Cartridges/shotgun.yml
#	Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Projectiles/shotgun.yml

* Fix revert conflicts

* Update Content.Shared/Weapons/Ranged/Components/GunComponent.cs

(cherry picked from commit e1901aa6b602516f0f7cc3f29844c77e90c77977)
2024-02-08 11:52:32 +01:00
metalgearsloth 823d9dd892
BatteryWeaponFireModes refactor (#24502)
* BatteryWeaponFireModes refactor

Made the code a bit better but still needs integrating into attachments.

* murder

* Fix serialization

* weh

* weh

(cherry picked from commit 58b55ba06c5de031079915a607ccf3adad781f93)
2024-02-08 11:52:31 +01:00
DrSmugleaf 5329280378
Add events for GunComponent values, muzzle flashes and cartridge spread (#24077)
* Add a modifier event for GunComponent values

* Add docs

* Add VV readwrite to modified values

* Add more docs

* More docs

* Add Gun parameter to GunRefreshModifiersEvent

* Add another event for handling cartridge spread

* Fix pneumatic speed

(cherry picked from commit 4e8b1fb0d3ef23c79ea3ca0cec05932de03601f5)
2024-02-08 11:52:29 +01:00
Ed bee2b77eeb
Gravity anomaly rework (#24452)
* balance

* gorilla gauntlet fix

* magboots update

* some more buff

* randomwalk speed scales with severity

* nerf

* content

* Revert "content"

(cherry picked from commit a923beb21bf1cd3df2d77d2b8c6b55b4f4d50a87)
2024-01-28 00:33:39 +01:00
Dakamakat 1afa84e323
Use can attach check on shot attempt (#24396)
refactor(SharedGunSystem): use can attach check on shot attempt

(cherry picked from commit 7b2e382929204d4fa39ff599c3365c1b237de2e9)
2024-01-27 23:46:42 +01:00
LordCarve 3dfd479199
DamageSpecifier Total => GetTotal (#24160)
* DamageSpecifier [Obsolete] Total => GetTotal()

* Remove obsolete Total member from DamageSpecifier.

(cherry picked from commit c77eb8691dc08d384a88ddaf3b734f7777d741b5)
2024-01-27 23:42:35 +01:00
metalgearsloth 69d6935846
Bunch of revolver fixes (#19649)
* Bunch of revolver fixes

Some stuff wasn't working with prediction so this should fix all of it.

* a

* fix weh

* Also usedelay

(cherry picked from commit 9bb2781bfca68bde47ce52576cb894bb41ab6511)
2024-01-27 23:40:28 +01:00
Ed 145c2158ca
Star Wars 14: Shuttle weapon update (#23644)
* setup codebase

* make auto-fire, but its broken

* collider problem

* fix rate, add toggle port

* add laser

* power cages

* ginormous cells

* fix inhand

* add pirate cannon

* salvage gun

* functional Nuke cannon

* rewrite to standart grenade

* fix naming, add emp sprite

* grenade cartridge

* thruster fix

* nuke cannon

* audio + visual polish

* balance tweak

* tweaks

* laser balance tweak: new Electronic damage modifier set, reduce structural cannon damage

* resprite energy cages, start implementing in game

* fix cage recharger craft

* add small laser gun

* fix colliders

* add  lasers and ptk to research and crafting

* finish implementing weapon to rnd and sec

* some fixes

* splitted grenades and cannon balls

* integrate new cannon balls

* tweaks stick

* move circuits to sectechfab, fix

* fix?

* add ability to E shoot, without signals

* fix!

* fix?!?! and naming tweak

* go!

* Lank fix

* oh

* mornings don't start with coffee.

* the morning starts with bug fixes.

* fucking bugs!

* finally

* it is now possible to craft projectiles separately from cartridges

* +2 fix

* refactor

* piu

* More weight

* add AutoShootGunComponent

* move autoshoot to partial

* SetEnabled()

* some fixes

* remove CanShootWithoutUser field

* remove null-checks ToCoordinates from AttemptShoot()

* war without reason

* return to home

* ?

* forgot remove it

* review

* Fix formatting and update path

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit a2d5d74b46060d330e5aa14e166692f32dcce7a9)
2024-01-27 23:40:06 +01:00
Kara 6ca85e719b
Destruction & impact sound rework pass 1 (#24282)
* Various sounds ported

* Replace wall_bonk.ogg

* Metal/metalglass break sound pass

* Replace metalbreak.ogg

* Replace woodhit

* Replcae tap.ogg n some smack uses

* Fix lint

* Replace bang.ogg and some instances of hit_kick.ogg

* couple more

* fix wood sound

* i may be stupid

* le attributing

* bro what

* standardize more destruction sounds

* fix melee hit sound cutting off

* window threshold sounds and remove `destroySound` it literally doesnt exist

(cherry picked from commit 818b07ecf82bdd72dc5524f6bc093067b2ef6472)
2024-01-26 23:10:41 +01:00
metalgearsloth e9bb444936
Fix gun bolt crash (#24283)
Deleting non-predicted entities moment.

(cherry picked from commit b535909a4983919b4764c72f7409d881cea02ae8)
2024-01-26 23:10:00 +01:00
Veritius 92695c274c
Executions (#24150)
* Execution (you monster)
not done

* woops

* more stuff

* Melee executions

* Prevent executing those who can interact

* Better checks for if you can execute

* Scale the execution time of a knife with its attack speed

* Translations for fucking up an execution

* rename some functions

* Properly scale execution speed of melee weapons

* Fix checks in CanExecuteWithAny

* Allow executing yourself (funny)

* More versatile localisation

* Suicide with guns

* Popups for successful gun executions

* whoops

* Stop flare guns crashing the game on executions

* Various tweaks

* Remove some old usings

* Pacifists can no longer execute

* Remove unnecessary check

* Use CanShoot in gunsystem

* Capitalisation in ftl string

* Fix melee executions not playing a sound

* localisation tweaks

(cherry picked from commit 2e83f5a0ecc5fea0177acd94e22133de0d614588)
2024-01-26 22:58:32 +01:00
keronshb 0c8d256d71
Moves ShootProjectile to shared (#24007)
(cherry picked from commit 2375a6cd1d2edfe6692c4a0ad388d2a3f5a3ce01)
2024-01-26 22:34:26 +01:00
Nemanja cd97df761d
Autoattacking weapons (#23765)
auto attacks

(cherry picked from commit 5db615af54acf04c9a9ba5653cfac4a360eff61b)
2024-01-26 22:16:34 +01:00
metalgearsloth a6a7514b0d
Fix gun cursor popup spam (#23732)
(cherry picked from commit cce9bde4cdcce6cfaa22f0bcb1ed1507cfd328fb)
2024-01-26 22:12:07 +01:00
I.K 11497a9d03
Improve visibility of gun bolts (#23711)
* add overlay

* ??????

(cherry picked from commit dc994f9c66f13f8195b7938f849003dc5b37464d)
2024-01-26 22:11:55 +01:00
Nemanja 7a8c81f71d
Grappling fixes (#23709)
(cherry picked from commit c9b700a2d4ea7e25cfa014bf83720258bb43cae9)
2024-01-26 22:10:57 +01:00
Kara 03b3e36d43
Examine prediction (#23565)
* Initial prediction

* new group handling

* groups for all examines that use multiple rn

* compile

* why was it doing this??

* handle newlines with sorting properly

(cherry picked from commit 0ae3858b69b695697ea9300609460f8ddb70ebbf)
2024-01-26 21:48:02 +01:00
AJCM-git 6b7e8b4f5b
UseDelay + ItemCooldown merge (#22502)
(cherry picked from commit 9c522c8b19f7a6f6b396c66342413572a22d7845)
2024-01-26 21:32:09 +01:00
metalgearsloth b1738dcf9c
AutoCompState + ItemToggle fixes (#23422)
* AutoCompState + ItemToggle fixes

Fix a lot of the comp states that are never actually networked and also cleaned up ItemToggle events a bunch. ItemToggle will still need some future work for lights and sounds.

* Also catch these

(cherry picked from commit 2166958bd0c23b7b9fd5c699eaeee910d1db62bf)
2024-01-26 21:27:29 +01:00
TemporalOroboros aebae6fab7
Content ecs containers (#22484)
(cherry picked from commit 7a77d6d5dd73a34be238fdebc284da5bc2917c67)
2024-01-22 18:47:55 +01:00
Nemanja 850e75a073
GORILLA Gauntlets (#23012)
* GORILLA gauntlets

* oh shit this too

(cherry picked from commit 9bd03824ac863cb4d87bfc984dcc163b84926649)
2024-01-22 18:47:45 +01:00
Kara f56d45f8ef
Pacifism rework (#23037)
* Pacifism rework

* grammar

(cherry picked from commit faca1d7043927b502afb3f0ee2e362e01516eaef)
2024-01-22 18:38:03 +01:00
Darkie 03abecd365
ItemToggle system expansion (#22369)
* Fixed EnergySword and variants having incorrect sound on attacking when in their Off state.

* Removed the unused ItemToggle from the serverside and created a new shared ItemToggleComponent and System, now used for the e-blade family of items. Also added e-blade hum and swing sounds. Thanks Sloth for the initial code!

* Changing Stunbaton system to include the itemToggle system.

* Adapted changes that have come up in the meantime.

* Changed damagespecifier to be serializable and autoNetworked in melee weapon components. Fixes a bug that makes it so client-side, damage values are not updated on toggle.

* Made the ItemToggleSystem have both a shared and a server component. Ported the Stun Baton and Stun Prod to the new toggleable system. Added a failure to activate noise component.

* Ported the welders to the new item toggle system. Set it so deactivated damage and item size default to the item's regular options.

* Removed unnecessary usings.

* Small modification to the stun prod.

* Made the integration test use the new method to turn the welders on.

* Fixed a few testing issues, applied a few changes requested by Delta.

* Updated Stunbaton code for consistentcy when it comes to calling the itemToggle component.

* Removed a redundant return; as per Delta.
Made examining the stun baton for charge rely on the battery component instead.

* Removed the welder visualizer system, now using the generic one. Removed some unused usings. Removed the welder visuals and layers.
Ported lighters to the new system.
Added zippi (sic) lighters.

* Renamed variables used to make them less generic.

* Simplified the light update code.

* Fixed the unit test to use the itemToggle system for welders now.

* Made the name shorter. I can't tell if the welding damage when interacted with actually does anything though. I can't figure out how to trigger it.

* Fixed some YML issues.

* Added a client side item toggle system just to make the shared code run on local UID's too.

* Fixed some more Yaml.

* Made the Zippi lighter have its own parent item, so it doesnt' conflict with the random pattern on the regular lighter.

* Made the zippi lighter its own in-hand sprites.

* Added a summary for the activated property in itemtoggle component.

* Fixed a typo in the itemToggle Component.

* Fixed a typo.

* Added to the remarks for the ItemToggleComponent.

* Fixed up the lighter yaml to make it use a generic term instead of a toggle layer enum for the random skin.

* Fixed a bug I introduced accidentally with the humming sound.

* Removed 2 unnecessary events from the ItemToggleSystem and component.

* Fixed a bug by only making the server run the item activation code, since the client cannot predict whether or not the activation will be cancelled.

* Cleaned up some names and functions getting called.

* Renamed a couple of variables and removed the explicit datafields from the component. Removed "activated: false" from yml since they're already deactivated by default.

* Added an IsActivated function, used it in the welder and stun baton systems code.
Refactored welder code to remove the WelderToggle event, now using the ItemToggleActivatedEvent instead for eye protection check.

* Fixed a typo. Added some comments.

* Split the ItemToggle into smaller components.
Changed the items that used the toggle system to work with the smaller components.
Made the mirror shield reflect energy shots with a 95% chance.

* Fixed the namespaces for the server components and whatnot.

* Fixed a doubled deactivation sound from using activated wieldable items (like the double Esword).
Fixed wrong yml with the e-dagger.
Fixed the disarm malus code.

* Added the zippo lighter to the detective's trench coat.

* Removed the default hit sound for the double e-sword since it was unnecessary.

* Changed e-sword damage numbers to be in line with the changes made by Emisse.

* Made no damage sounds be autoNetworked, so it changes can be changed on activation/deactivation of items.
Made Welders and Eswords sound like themselves but quieter if they hit for 0 damage, instead of taps.
You can choose what sound to play when a weapon does 0 damage when activated now.
Fixed a bug with swing sounds.

* Typo.

* Fixed a bug where the welder would blind you if you used it while it was off.

* Created a single abstract method called when an item has completed its toggle.

* Update Content.Server/Eye/Blinding/EyeProtection/EyeProtectionSystem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Fixed a comment.

* Made most component variables readOnly for ItemToggle. There is no need to be able to change them from within the variable viewer.

* Removed trailing white spaces.

* Made the Use a field instead of a property in the itemToggleActivation/Deactivation attempt events.

* Small fixes.

* Removed ForceToggle, just use the toggle method instead.

* Fixed a bug with item sharpness staying even after getting deactivated, if the item gained sharpness that way (esword).

* Used ProtoId in the welder component.

* Made damage NetSerializable as well.

* Added networking and data fields to a couple of components.

* Made component variables autonetworked. Added some comments.

* Moved the events that modify item components on toggle to events, handled (where possible) in the systems linked to said components.

* Made all the component variables readWrite again.

* Added the component get to the WelderStatus.

* Added a predictable bool to the item toggle component.

* Replaced the Activated/Deactivated events with ToggleDone, with an Activated argument. Used that to simplify some systems.

* Added a reflect update raise event.

* Removed the Zippo changes. To add in a later PR.

* Removed the zippo from meta.json too.

* Small fix.

* Another small fix.

* Fixed the wieldable system thing in ItemToggle.

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

(cherry picked from commit a3fbab84e645a16a30845aa1e683e7ffc0e3b8cd)
2024-01-22 18:29:05 +01:00
Leon Friedrich adee2a7465 Fix various errors/exceptions (#22841)
* Fix entity storage localization

* Fix HumanoidAppearanceComponent resolve

* Fix null reference exceptions

* Fix duplicate key error

* Fix artifact error spam

* actually maybe this is what its meant to do

* Fix entities playing sounds on deletion
2023-12-22 23:25:06 +01:00
themias 10e71dd08e Fix spray nozzle (#22624)
* Fix spray nozzle

* what

* no
2023-12-22 22:45:36 +01:00
MendaxxDev a908b24ba1 Make flare gun explode, damage and stun the player when used with the wrong ammo (#22349)
* Flare gun can now only be loaded with actual flares

* Make flare gun loadable with other shells, but destroy it and damage and stun the user when used

* tweak

* Logic fix + QOL add-ons

* damageOnWrongAmmo in gun component

* cleanup
2023-12-16 20:30:33 +01:00
themias c320b23966 Fix spray nozzle (#22492) 2023-12-16 20:19:57 +01:00
Leon Friedrich 485d658bd1 Inventory slot enumerator rejig (#21788) 2023-12-16 19:30:03 +01:00
Bakke a29c36d9bc
Prevent shooting while inside a duffelbag (#510)
Anyone shoved into a duffelbag gets an ItemComponent. This denies anyone
with an ItemComponent from shooting a gun.
2023-12-06 16:54:05 +01:00
metalgearsloth b1ee2d48ff Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-12-02 20:16:36 +01:00
metalgearsloth 52104a45c1 Revert Arch testmerge 2 (#21901) 2023-12-02 19:05:12 +01:00
metalgearsloth 39ad6db5c3 Update submodule to 182.1.0 (#21900) 2023-12-02 19:05:11 +01:00
metalgearsloth 9741d9916c Revert the other arch changes (#21871) 2023-12-02 19:05:11 +01:00