Commit Graph

7289 Commits

Author SHA1 Message Date
deltanedas 7f060eb129
make thief a subgamemode (#25740)
* add SubGamemodes comp/sys

* remove RuleChance from thief rule

* use SubGamemodes for adding thief rule instead of adding ThiefRule component to random gamemodes

* clean up thief rule prototype

* add better logging + end rule if it fails to start

* march 1st incident

* preset ops

* the dreaded

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-03-02 11:33:24 -05:00
lzk 325349965d
Remove 07 from emote chatsan (#25767)
1
2024-03-03 01:10:44 +11:00
Errant ecd2d5a644
Alerts for breathing plasma/tritium (#24484)
* Alert autoremove v0

* Code cleanup and timing

* comment

* Tritium, code compression

* not resolving manually

* reduced lookups, new comp

* fix-fix yes

* use RemCompDeferred, handle OnUnpaused

* missed a todo

* entitysystem resolve

* remove unnecessary component updates

* remove AlertState from comp, move EntityUnpausedEvent actions to AlertStateComponent's Timespan

* Code cleanup

* comments

* combines AutoRemove input into Clear

* minor logic adjustment that does not really change anything but is less ambiguous
2024-03-03 01:07:05 +11:00
exincore aaf5d0d302
Fix `ResearchSystem.Client` `UpdateClientInterface` preconditions. (#25743)
* fix(research): Fix `ResearchSystem.Client` `UpdateClientInterface` preconditions.

Fixes a paradox where selecting a research server requires a research server to already be selected.
This would softlock the research client until it is reconstructed.

* style: Discards the discard operator

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-03-02 23:44:24 +11:00
DrSmugleaf 2904ff421a
Add test to check that there are no pending database model changes (#25762) 2024-03-02 15:10:49 +11:00
exincore 1abd1f615f
feat(chameleon): Chameleon verb only shows to the wearer (#25746) 2024-03-01 15:49:49 +03:00
DrSmugleaf 30ccde0a47
Make the round end sound collection a cvar (#25741)
* Make the round end sound collection a cvar

* Fix comment

* Clarity
2024-03-01 21:08:48 +11:00
LordCarve c47391011d
Refactor AME to use ItemSlot for Fuel (#25558)
* Using wrench on AME doesn't first try to put it in.

* Refactor AME to use ItemSlot for fuel.

* Apparently these names want to match.
2024-02-29 16:44:28 -05:00
Rainfey 4e6c59cfe5
Refactor antag rule code (#23445)
* Initial Pass, Rev, Thief

* Zombie initial pass

* Rebase, Traitor

* Nukeops, More overloads

* Revert RevolutionaryRuleComponent

* Use TryRoundStartAttempt, Rewrite nukie spawning

* Comments, Add task scheduler to GameRuleSystem

* Zombie initial testing done

* Sort methods, rework GameRuleTask

* Add CCVar, Initial testing continues

* Might as well get rid of the obsolete logging

* Oops, i dont know how to log apparently

* Suggested formatting fixes

* Suggested changes

* Fix merge issues

* Minor optimisation

* Allowed thief to choose other antags

* Review changes

* Spawn items on floor first, then inserting

* minor tweaks

* Shift as much as possible to ProtoId<>

* Remove unneeded

* Add exclusive antag attribute

* Fix merge issues

* Minor formatting fix

* Convert to struct

* Cleanup

* Review cleanup (need to test a lot)

* Some fixes, (mostly) tested

* oop

* Pass tests (for real)

---------

Co-authored-by: Rainfall <rainfey0+git@gmail.com>
Co-authored-by: AJCM <AJCM@tutanota.com>
2024-02-29 17:25:10 +11:00
c4llv07e ee614dec5c
Fix cryostorage removing minds of players who have entered ghost role (#24991)
* fix cryo removed minds of players who entered ghost role

Signed-off-by: c4llv07e <kseandi@gmail.com>

* better way to handle cryo with mind in it

Signed-off-by: c4llv07e <kseandi@gmail.com>

---------

Signed-off-by: c4llv07e <kseandi@gmail.com>
2024-02-28 17:09:02 -05:00
Cojoke dddec4dcc6
Makes the e-sword light plasma fires, as intended. (#25665)
* Makes the e-sword light plasma fires, as intended.

* remove blank line
2024-02-28 16:59:35 -05:00
Menshin 9884351101
Add space heaters (#25250) 2024-02-28 10:27:29 -08:00
metalgearsloth f819404f6d
NPC steering blending (#25666)
* NPC steering blending

Significantly more stable than using LastSteerDirection and also AntiStuck never got tripped locally when I was running around. I also left future notes for me to cleanup the pathfinder in future.

* Remove index
2024-02-28 17:41:15 +11:00
metalgearsloth a9502be29e
Revert "Fix chat bubbles (#25643)" (#25645)
* Revert "Fix chat bubbles (#25643)"

This reverts commit 23d2c4d924.

* Revert "Fixes obsolete Transform warnings in Content. (#25256)"

This reverts commit f284b43ff6.
2024-02-28 00:51:20 +11:00
metalgearsloth d204896bf5
Fix projectiles (#25636) 2024-02-28 00:04:32 +11:00
Julian Giebel 0752acdc2c
News UI overhaul and PDA notifications (#19610) 2024-02-26 21:38:00 -04:00
TemporalOroboros f284b43ff6
Fixes obsolete Transform warnings in Content. (#25256)
* Fix TransformComponent.MapPosition warnings in Content.Client

* Fix TransformComponent.MapPosition warnings in Content.IntegrationTests

* Fix TransformComponent.MapPosition warnings in Content.Shared

* Fix TransformComponent.MapPosition warnings in Content.Server

* Fix TransformComponent.WorldPosition warnings in Content.Shared

* Fix TransformComponent.WorldPosition warnings in Content.Client
Excepts ClickableComponent b/c that needs to be ECS'd entirely later

* Fix TransformComponent.WorldPosition warnings in Content.Server

* Fix TransformComponent.WorldRotation warnings in Content.*

* Fix TransformComponent.MapPosition warnings I missed

* Fix TransformComponent.WorldMatrix warnings in Content.*

* Fix TransformComponent.InvWorldMatrix warnings in Content.*

* Fix TransformComponent.GetWorldPositionRotationMatrixWithInv warnings in Content.*

* Fix TransformComponent.GetWorldPositionRotationMatrix warnings in Content.*

* Fix TransformComponent.GetWorldPositionRotation warnings in Content.*

* Fix TransformComponent.Anchored.set warnings in Content.*

* Fix TransformComponent.Coordinates.set warnings in Content.*

* Fix TransformComponent.LocalPosition.set warnings in Content.*

* Fix TransformComponent.AttachToGridOrMap warnings in Content.*

* Fix TransformComponent.AttachParent warnings in Content.*

* Preempt TransformComponent.LocalRotation.set warnings in Content.Shared

* Preempt TransformComponent.LocalRotation.set warnings in Content.Client

* Preempt TransformComponent.LocalRotation.set warnings in Content.IntegrationTests

* Preempt TransformComponent.LocalRotation.set warnings in Content.Server

* Fix/Preempt the remaining obsolete TransformComponent properties/methods in Content.*

* ECS ClickableComponent

* Fix obsolete SharedTransformSystem methods in Content.*

* Fix ExplosionOverlay `SharedTransformSystem` dependency

* Maybe fix null eye position breaking tests

* MGS requested changes
2024-02-27 12:06:20 +11:00
LankLTE cc865c547b
Zombie Diona Fixes (#25404)
No reform, zombie nymphs
2024-02-26 16:31:37 -07:00
Whisper ff65cb7b0c
Whisper bleed update v3 (#25434)
* Whisper bleed update v3

* missed a few

* Add bleeding message to health analyzer.

* Fix bleed notification not updating.

* Apparently this either doesnt exist
2024-02-26 16:26:46 -07:00
Ed 7a5f81ddb4
Handheld Mass Scanner (#25526)
* handheld

* Update meta.json

* Update meta.json

* Update cargo.yml

* research

* add to borg

* bruh

* borg to T2

* fix
2024-02-26 16:19:51 -07:00
Pieter-Jan Briers e00f74505c
Use new ComponentPauseGenerator (#25183)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.
2024-02-26 14:36:19 +11:00
Pieter-Jan Briers 8d244f7b76
Character profile sanitization improvements (#25579)
Validate that job and antag prototypes can actually be set in character profiles, rather than just checking if the prototype exists.

Make preferences system just call existing validation code when loading prototype from database, instead of some hacked-together stuff.

Also I made the character profile validation logic take dependencies in via parameter because fuck resolves.
2024-02-26 13:36:38 +11:00
Tayrtahn 100ece2e20
Add a container display to dispenser UI (#25391)
* Implemented contents display for dispenser UI

* Update Content.Client/Chemistry/UI/ReagentDispenserWindow.xaml.cs

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>

* Resolve the netent into a euid first

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-02-26 00:03:22 +01:00
metalgearsloth b26acc9547
Panic bunker fix (#25538)
* Panic bunker fix

I admin

* tired
2024-02-25 23:48:54 +01:00
Vasilis 3ef4e83558
Add server name into the replay final (#25564)
Turns out this is not what serverid was for... i guess you can find server familys with this so im not gonna remove it. Best we get for server name is the admin logs server name.
2024-02-25 23:44:05 +01:00
Kara de36ebe2df
Don't double-dip survival intensity scaling (#25570) 2024-02-25 14:04:51 -08:00
778b 87def406bc
Added ContainerSpawnPoint check for integration test (#25446)
* Added logic for ContainerSpawnPoint checks

* Improved with template function

* fixed nullable

* hehe

* hehe T?

* added type check before cast

* another nullable fix

* and another one

* return to old code (found typo)

* Code cleanup

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-02-26 00:54:44 +11:00
metalgearsloth bb0776c496
Revert "Cleanup ExecutionSystem (#24382)" (#25555)
* Revert "Cleanup ExecutionSystem (#24382)"

This reverts commit bcbe2ec1af.

* Revert "Executions (#24150)"

This reverts commit 2e83f5a0ec.

# Conflicts:
#	Content.Shared/Weapons/Melee/SharedMeleeWeaponSystem.cs
2024-02-25 22:36:17 +11:00
nikthechampiongr bcbe2ec1af
Cleanup ExecutionSystem (#24382)
* Creat Execution Component and add to sharp items

* Kill Server ExecutionSystem. Create ExecutionSystem in shared. Create ActiveExecution Component.
Transferred the Execution system into shared. Heavily re-wrote the system in order to reduce duplication,
and remove gun code from the system.
The melee weapon modifier which was dependant on swing rate was removed.

The ActiveExecutionComponent was created in order to apply the damage modifier to the shot from a gun execution.
It is added just before the gun fires and removed after an attempt is made.

* Fix bugs

The execution completed text will now only show up if the gun fires.

The client also no longer crashes because I forgot to network the component.

* Remove clumsy text

* Make BaseSword abstract

* Add ExecutionComponent to every weapon

* Fix bug

* Remove execution comp from battery weapons

Currently the gun system does not have a way to alter hitscan damage like it does with projectiles.

* Cleanup

* Revert "Remove clumsy text"

This reverts commit a46da6448d5d179a4e936f9213d5622bedb58a16.

* Actually fix the ExecutionSystem

Everything about the shot goes through the gun system now.
The Damage multiplier is only applied when a projectile impacts the target so people that get in the way don't get hit
with 9 times damage for no reason.

In order to make suicides work I needed to create fake EntityCoordinates because the gun system and the projectile
system do not play well with a projectile that has the same start and end position.

* Make launchers able to execute

* Fix prediction bug

The OnAmmoShotEvent is only raised on the server.

* Readd ability for clowns to accidentally shoot themselves while executing

* Cleanup

* Reset melee cooldown to initial value

* Address reviews fix bug

Addressed reviews on overriding messages.
Now I actually mark doafters as handled.
Return normal cooldown to some meleeweapons I forgot on the previous commit.

* Address Reviews

Remove duplication

* Exorcise codebase

Remove evil null coercion that I was sure I removed a while ago

* Address reviews again

* Remove melee weapon attack logic and rely on the system. Remove gun and
melee checks.

* Make system functional again and cleanup

* Remove code I forgot to remove

* Cleanup

* stalled

* Selectively revert gun penetration

The collision layer check doesn't work and I don't have time to fix it.

* Fixes

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-02-25 22:07:10 +11:00
Flesh aa4e7c0619
Made ordering multiple crates at cargo order multiple crates (#25518)
* please tell me this is empty

* it wasn't empty, fixing that

* This should fix it

* fix for the fix

* address changes

* fix

* Added some comments, hoping that failed test was a fluke.
2024-02-25 18:36:22 +11:00
ArchPigeon 5806401502
Remove the ability for command or any antag-safe role from being initial infected in zombie mode (#25529)
Remove the ability for command to be initial infected in zombie mode
2024-02-24 21:40:49 -05:00
beck-thompson 84fff930c2
Fixed Fire Extinguisher safety range (#25534) 2024-02-25 13:29:16 +11:00
metalgearsloth d8e5f5c24b
Optimise DecalOverlay (#25266)
ChunkSize is still 32 so doesn't cut down on heaps of decals atm though we avoid passing many decals to drawing with the coordinates bounds check now.
2024-02-23 18:12:23 +11:00
Pieter-Jan Briers 715794dd41
Make department / job list sorting consistent. (#25486)
* Make department / job list sorting consistent.

This makes late join, crew manifest and character profile all apply consistent sorting for jobs and departments.

We use the already-defined weights for departments (so command, then sec, then station specific, then just sort by prototype ID). Jobs also use weight (so heads are always at the top) then prototype ID, then character name (for manifest).

Removed the crewmanifest.ordering CVar as doing it via prototype weight is just easier, and that CVar was already a mess anyways.

* Fix jittery job icons in lists.

They were set to KeepCentered in TextureRect. This has issues because the allocated space is actually an odd number of pixels, so it tries to position the draw at a half pixel offset.

Now, yes, fixing this in TextureRect would make much more sense, but get off my back. (Ok seriously we need better helper functions for doing that in the engine. Don't wanna deal with that right now and I already have this patch made.)

Instead I'm just gonna fix the issue by using VerticalAlignment in all these places instead which ends up doing exactly the same thing YIPPEE.

Also gave a margin next to the icon on the crew manifest. Margins people!
2024-02-23 15:04:44 +11:00
Pieter-Jan Briers b1de6dd601
Switch project files to C# 12. (#25487)
Just unlocks new language features like primary constructors.
2024-02-23 15:02:59 +11:00
Tayrtahn 381bb9020a
Add prediction to Openable (#25477)
* Fix formatting problem with FullOpened

* Moved to Shared and networked

* Revert "Fix formatting problem with FullOpened"

This reverts commit f8353403da830a4402bdd457bcf24a2432a5f566.
2024-02-23 12:09:43 +11:00
Tayrtahn 146c7b272d
Fix examine text bug for Openable Drinkables (#25478)
Break up Opened/Closed and fill level onto separate lines
2024-02-23 12:04:23 +11:00
Nemanja ce0a51fc29
Predict doors and airlocks (#25419)
* predict doors and airlocks

* prying, too

* ack

* eek
2024-02-23 10:01:31 +11:00
HoofedEar 487dd113b0
Add RequiresGrid component (#23394)
* saving working code

* add checks for deletion
2024-02-22 22:26:02 +11:00
beck-thompson 48213ebb65
Changed radio jammer wattage from 6 -> 2 (#25432)
Changed wattage from 6 -> 2
2024-02-22 18:32:43 +11:00
genderGeometries 1360d57eea
Crop harvest int cast fix (#25453)
* deleted int cast on solution amount

* deleted int cast on solution amount for real
2024-02-22 11:19:50 +11:00
metalgearsloth 79c6385ca7
Fix bwoink sounds (#25441)
* Fix bwoink sounds

Didn't get a chance to test with 2 clients as I'm about to sleep but otherwise I'll check tomorrow.

* a
2024-02-21 16:14:57 -06:00
keronshb 046c874dae
Moves muted to shared (#25374)
* moves muted to shared

* fixes usings

* Update MutedComponent.cs

funny webedit

* Update MutedComponent.cs

oops using statement webedit
2024-02-21 15:53:46 -05:00
Fildrance ef849a0156
fix: #25102 cryo pod now uses health-analyzer system to update body state in UI (#25109)
* fix: cryo pod now uses health-analyzer system to update body state in UI

* refactor: use EntityEventRefHandler instead ComponentEventRefHandler in CryoPodComponent subscribe on EntRemovedFromContainerMessage

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
2024-02-21 17:47:23 +03:00
Krunklehorn f29575f43f
Voice trigger fixes, death acidifier typos (#24941)
* Fixed length check, added attempt event, added popups on failure

* Fixed file name typo, fixed description

* Converted to else-if
2024-02-20 23:57:23 -07:00
dffdff2423 a3c93b0bd7
Add option for admins to disable bwoink (#25008)
* Add option for admins to disable bwoink

In a vain attempt to get people to ahelp more, provide the possibility
for admins to not play the bwoink sound if they don't want to scare the
player.

* Add silent indicator to discord relay

* Use string interpolation
2024-02-20 23:52:03 -07:00
metalgearsloth 012e6e6c86
Remove contests (#25425)
- Not mentioned anywhere ingame.
- Stupid.
2024-02-20 23:39:52 -07:00
Debug 8c6a8c3c5c
Remove drones, fix InnateToolSystem (#25372)
* Fix drones

* They dont need a full bloodstream

* Incorrect indentation

* Nuke drones

* Fix ClothingHeadHatCatEars

* Remove last mention of drones

* Implement requested changes
2024-02-20 23:23:04 -07:00
Callmore 5a2c744998
Tiny shove fix. (#25353)
* Remove second shove check.

* Change when popups and sounds are created.
Reduces phantom shoves that feel bad.

* why didn't i think of this i saw it earlier...

* Replaced Is fields with prefix

* remove some dependencies to fix tests???
2024-02-21 15:01:45 +11:00
Vasilis 5170593e85
Add roundid to replay_final.yml (#25398)
oopsy i forgor
2024-02-21 00:33:18 +01:00