Commit Graph

7792 Commits

Author SHA1 Message Date
Tayrtahn e5bbb0a4bc
Random book story generator refactor (#28082)
* Randomized book overhaul

* Fix prototype names

* Improved setting paper content

* Praise Ratvar
2024-06-01 16:50:57 +02:00
Ed e0820b8b13
Nuke spaceshroom ore (#28110)
nuke spaceshroom ore
2024-06-01 16:50:55 +02:00
double_b 7c7872a89f
Resolves Bible summon message being sent to all users (#28104)
* Changed PopupEntity overload used to ensure message is only sent to user

* Updated uid for PopupEntity call

* Updating _popupSystem.PopupEntity call in AttemptSummon
2024-06-01 16:50:40 +02:00
no 34e8105f70
Add Syndicate/generic radio implants, remove Syndicate encryption key from uplink (#1262)
* Add radio implants

* Syndie radio implant: add to uplink, formatting pass

* Syndie radio implant: fix doc string

* Syndie radio implants: add inheritdoc to systems

* Syndie radio implants: Change wording on uplink

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>

* Syndicate radio implants: More wording changes

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>

* Syndicate radio implants: fix review code problems

* syndicate radio implants: remove OpenRadioImplantEvent event and reuse storageimplant stuff

* Syndicate radio implants: prevent implanting borgs with generic radio (syndicate radio is still possible)

* syndie radio implants. extremely graphic non-null matching action and establishment of extreme non-virtual privacy

---------

Signed-off-by: no <165581243+pissdemon@users.noreply.github.com>
2024-05-27 15:24:52 +00:00
deltanedas 5e86111d7d
add secwatch pda app for current sussy baka
* Crime Assist cleanup

* Add SecWatch cartridge to PDAs

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Azzy <azzydev@icloud.com>
2024-05-23 14:58:06 +00:00
deltanedas d1014cdedd
early merge antag fix (#1238)
* early merge antag fix

* fix test

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-22 08:36:39 +02:00
Null 0976829e7f
Roboisseur no longer sends messages in the chat (#1222)
Webedit ops

Signed-off-by: Null <56081759+NullWanderer@users.noreply.github.com>
2024-05-18 23:15:46 +02:00
deltanedas 94d3fdafa2
paradox anomaly antag rework (#1206)
* move paradox code around and update it

* make MidRoundAntagRule just give spawn locations

* update the yaml

* give anom and listening post raffles

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: Null <56081759+NullWanderer@users.noreply.github.com>
2024-05-18 19:44:48 +00:00
Null 72853c1b09
Senior ID cards get a custom job name (#1218)
* Allow preset id's to have different job names

* Senior roles

* Sync with Station Records

* Change markers
2024-05-18 21:29:07 +02:00
null a37b4c3477
Fix build error 2024-05-18 14:12:42 +02:00
lzk 79d60ab6e0
Move replacement chance from ReplacementAccentComponent to ReplacementAccentPrototype (#28049)
Move replacement chance to ReplacementAccentPrototype
2024-05-18 14:04:28 +02:00
DrSmugleaf 2cef141f94
Add data field for id card microwave behaviour (#28087) 2024-05-18 14:04:27 +02:00
deltanedas fb4a534b97
fix ninja hacking not affecting sechud (#28021)
minor refactor and fix

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 14:01:33 +02:00
DrSmugleaf 85a0742a88
Move most rotting code to shared (#28050)
* Move most rotting code to shared

* Remove unused dependency
2024-05-18 14:00:20 +02:00
deltanedas efe79da550
biome flexibility changes (#28017)
make biome apply template on mapinit, add api for setting Enabled

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 14:00:10 +02:00
deltanedas 16bd7f2e8d
fire troll fix (#28034)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:59:35 +02:00
beck-thompson 99d69a89b1
Fix incorrect message displaying when trying to remove stuck item from someones hand. (#28024)
* Fix

* Fixed the other spot!
2024-05-18 13:59:34 +02:00
deltanedas 08f7ab64c5
fix fire spread round removal (#27986)
* fix a resolve debug assert

* rewrite fire spread

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:59:20 +02:00
Brandon Li 6a83e2bb1b
Reagent dispenser UI (Again) (#27958)
* reagent dispenser: fancy window

* reagent dispenser: dispense button grid

* reagent dispenser: rearrange containers & info

* reagent dispenser: remove `reagent-dispenser-window-container-label`

* reagent dispenser: add `Scrollcontainer` on right side

* reagent dispenser: get rid of pointless actions

* reagent dispenser: cleanup actions and `inventory` field on bound ui state

* reagent dispenser: cool reagent cards & finishing touches

* reagent dispenser: final cleanup and formatting

* reagent dispenser: `ButtonGrid` and `ReagentDispenserSetDispenseAmountMessage` refactor

* reagent dispenser: cleanup code & address minor concerns

* reagent dispenser: text in reagent cards no longer clips

* reagent dispenser: oh wait i forgot to change this and thats why the builds keep failing probably

* reagent dispenser mayybe this

* reagent dispenser: remove `using FastAccessors;`

* delete unused classes

* disable reagent button when container is empty

* Make things a bit bigger

* remove obsolete text color override
2024-05-18 13:59:16 +02:00
Leon Friedrich 8530bcf6e8
Change some `EntityQueryEnumerator` to `AllEntityQuery` (#27969) 2024-05-18 13:59:02 +02:00
metalgearsloth 93a6823bbb
Implement Equals for ApcBoundInterfaceState (#27965)
* Implement Equals for ApcBoundInterfaceState

Saves a lot on bandwidth. Also made it round to the nearest 5.

* Also this
2024-05-18 13:59:01 +02:00
Kara b93f956353
Resolve `'EntitySystem.Get<T>()' is obsolete` in content (#27936)
* PROJECT 0 WARNINGS: Resolve `'EntitySystem.Get<T>()' is obsolete` in content

* pass entman

* dog ass test

* webeditor
2024-05-18 13:58:55 +02:00
nikthechampiongr c8ded7032c
Record deletion (#27883)
* Allow for Station Records interface for aghosts to delete records

* Fix record consoles not working when there are more than 2 crew members.

HOW DID NOONE NOTICE THIS SOONER???

* Stop being unconventional
2024-05-18 13:58:44 +02:00
no 3e277a22d1
Prevent admin-frozen players from ghosting or suiciding, add "Freeze And Mute" verb (#27813)
* prevent admin-frozen players from ghosting or suiciding

* Add "Freeze and Mute" admin verb

* Allow "Freeze And Mute" admin verb when player is already frozen but not muted

* Remove redundant scream handler (scream action just emotes, duh)

* AdminFrozenSystem: clean imports

* Update Content.Server/Chat/Commands/SuicideCommand.cs

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

* Update Ghost.cs

* retrigger ci (empty commit)

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2024-05-18 13:58:36 +02:00
Kara c56db3b1a8
Resolve `'TransformComponent.MapPosition' is obsolete` in content (#27939)
* Resolve `'TransformComponent.MapPosition' is obsolete: 'Use TransformSystem.GetMapCoordinates'` in content

* build?
2024-05-18 13:58:34 +02:00
ShadowCommander d82acccaa8
Replace AttachToGridOrMap with DropNextTo (#27950) 2024-05-18 13:57:16 +02:00
Kara 74eef92443
Resolve all non-obsoleting warnings in content (#27934)
* Resolve all non-obsoleting warnings in content

* Update ClientGameTicker.cs

* Update SkeletonAccentSystem.cs

* Update BwoinkSystem.cs
2024-05-18 13:57:06 +02:00
Джексон Миссиссиппи e8dce2b0ed
Add an admin smite for making people slip really far (and localize the admin smites better) (#27246)
* Sliiiiiiiiiiiiiiiiiip

* what

* Localize!

* antiterminate
2024-05-18 13:57:03 +02:00
metalgearsloth 25ce6c531b
Lobby refactor + species loadouts support (#27576)
* Vox stuff

* Species loadouts and lobby refactor

The control flow for lobby is all over the shop so I pulled it all up from the individual controls so now they handle the bare minimum required and LobbyUIController handles the rest.

* a

* Bulk changes

* a

* weh

* Character import / export

* finalise

* woops this stuff too

* Also datafield exporting

* comments

* Review
2024-05-18 13:55:56 +02:00
keronshb 27be1ad8c9
Magic Refactor + Wizard Grimoire (#22568)
* Brings over changes from the original magic refactor PR

* Adds Master Spellbook, spellbook categories, WizCoin currency, and locale

* Wiz€oin™

* Adds currency whitelist to Spellbook preset, grants contained actions on action added.

* Adds grant contained action and remove provided action.

* adds a way for actions to be upgraded to the store

* Adds Fireball 3 and fixes action upgrade logic so that it checks if the action can level or if the action can upgrade separately

* Fixes upgrade logic in ActionUpgradeSystem to allow for level ups without an actual upgrade. Fixed action upgrade logic in store system as well

* Removes current action entity from the bought entities list and adds new or old action entity

* Removes Current Entity

* Removes old comments, fixes TransferAllActionsWithNewAttached

* Removes TODO

* Removes Product Action Upgrade Event

* reverts changes to immovablerodrule

* Removes stale event reference

* fixes mind action grant logic

* reverts shared gun system change to projectile anomaly system

* forgor to remove the using

* Reverts unintended changes to action container

* Adds refund button to the store

* Refreshes store back to origin.

* Refund with correct currency

* Init refund

* Check for terminating and update interface

* Disables refund button

* Removes preset allow refund

* dont refund if map changed

* adds refunds to stores

* Adds method to check for starting map

* comments, datafields, some requested changes

* turns event into ref event

* Adds datafields

* Switches to entity terminating event

* Changes store entity to be nullable and checks if store is terminating to remove reference.

* Tryadd instead of containskey

* Adds a refund disable method, disables refund on bought ent container changes if not an action

* Removes duplicate refundcomp

* Removes unintended merges

* Removed another unintended change from merge

* removes extra using statement

* readds using statement

* might as well just remove both usings since it won't leave the PR

* Fixes Action upgrades from stores

* Changes to non obsolete method uses

* Shares spawn code between instant and world

* Adds action entity to action event, adds beforecastspellevent, adds spell requirements to magic component

* puts prereq check in spell methods, sets up template code for before cast event

* checks for required wizard clothes

* Networks Magic Comp and Wizard Clothes Comp. Renames MagicSpawnData to MagicInstantSpawnData.

* Removes posdata from projectiles

* Speech > RequiresSpeech

* Fixes ActionOnInteract

* checks for muted

* popup for missing reqs

* Validate click loc for blink spell

* Checks if doors are in range and not obstructed before opening

* Check ents by map coords

* Adds speak event

* Comments spellbooks

* Removes comments

* Unobsoletes smite spell

* Invert if

* Requirements loc

* Fixes spell reqs

* Inverts an if

* Comment updates

* Starts doafter work

* Removes doafter references

* Balances fireball upgrades to be more reasonable

* Enables refund on master spellbooks

* Spells to do

* update spellbook doafter

* knock toggles bolts

* Touch Spell comments

* Comments for pending spells

* more comments

* adds spider polymorph to spellbook

* TODOs for spells

* reorganizes spellbook categories and adds wands

* fixes spacing and adds limited conditions

* commented owner only for future store PR

* reenables owner only for the grimoire

* fixes grimoire sprite

* Adds wizard rod polymorph

* summon ghosts event

* Moves rod form to offensive category

* Adds charge spell and loc for rod polymorph

* Oops forgor the actual chages

* Item Recall comment

* Fixes UI

* removes extra field for wizard rod

* Cleanup

* New Condition (INCOMPLETE)

* Fix linter

* Fix linter (for real)

* fixed some descriptions

* adds regions to magic

* Adds a non-refund wizard grimoire, fixes blink to deselect after teleporting, reduces force wall despawn time to 12 seconds

* removes limited upgrade condition

---------

Co-authored-by: AJCM <AJCM@tutanota.com>
2024-05-18 13:55:05 +02:00
DrSmugleaf af6a694481
Make projectiles not hit crit mobs unless clicked on (#27905) 2024-05-18 13:53:49 +02:00
icekot8 c5b3e2861a
revenant can no longer harvest souls while in solid objects (#27612)
meow
2024-05-18 13:53:04 +02:00
ShadowCommander 13fb095cae
Fix ghosts getting spawned in nullspace (#27617)
* Add tests for ghost spawn position

* Make ghosts spawn immediately

* Format mind system

* Move ghost spawning to GhostSystem

* Spawn ghost on grid or map

This fixes the ghosts being attached the parent entity instead of the grid.

* Move logging out of the ghost system

* Make round start observer spawn using GhostSystem

* Move GameTicker ghost spawning to GhostSystem

Moved the more robust character name selection code over.
Moved the TimeOfDeath code over.
Added canReturn logic.

* Add overrides and default for ghost spawn coordinates

* Add warning log to ghost spawn fail

* Clean up test

* Dont spawn ghost on map delete

* Minor changes to the role test

* Fix role test failing to spawn ghost

It was failing the map check due to using Nullspace

* Fix ghost tests when running in parallel

Not sure what happened, but it seems to be because they were running simultaneously and overwriting values.

* Clean up ghost tests

* Test that map deletion does not spawn ghosts

* Spawn ghost on the next available map

* Disallow spawning on deleted maps

* Fix map deletion ghost test

* Cleanup
2024-05-18 13:53:01 +02:00
Vasilis 411ffc9b9d
Do not wake up NPC if there is still a mind attached. (#27651)
* Do not wake up NPC if there is still a mind attached.

This became apparent with diona nymphs (?) and slime gyras (?). This caused players that disconnected while a nymph, gyras or other npc to resume their NPC behavior. Which I would call unwanted. This fixes that.

* Zombies become AI anyway

* Update Content.Server/NPC/Systems/NPCSystem.cs

---------

Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-05-18 13:52:56 +02:00
DrSmugleaf c9e717ed48
Make FTL constants in ShuttleSystem into cvars (#27706)
* Make FTL constants in ShuttleSystem into cvars

* Fix tests
2024-05-18 13:52:25 +02:00
DrSmugleaf 8971937177
Add ActionPerformedEvent, ActionsSystem.SetIfBiggerCooldown, action id to action events and BackgroundOn field (#27682)
* Add ActionPerformedEvent and ActionsSystem.SetIfBiggerCooldown

* Add action id to action events and backgroundon field to action component
2024-05-18 13:52:01 +02:00
Ed c0d1c43003
New event: Approaching unknown shuttle (#24490)
* setup codebase

* Add first shuttle

* tak

* sync striker

* sync 2

* pipipi

* Preloaded roundstart shuttles!

* Make it abstract "PreloaderGrid" not "PreloaderShuttle"

* to do

* added china cuisin shuttle

* fixes

* add disaster evacpod

* remove enemy

* final shuttles

* weight 5 -> 10

* move data to component

* remove autotrailer touching

* doc, respath

* fix frozen positioning

* fixes + cvar

* finally

* fix evacpod

* remove blacklistrules

* remove `UnknownShuttleSpawnRule`, refactor `LoadMapRule` to support preloaded grids

* use tryload

* cleanup

* fixes

* use preloadedgrid for loneops

* weight unknown shuttles differently (preliminal)

* leftover

* cleanup and raffling

* partial review

* singleton gridpreloader no station coupling

* fix grid atmoses

* `roleLoadout` support for `LoadoutComponent`, fix missing gear

* weighting changes

* init logic fix

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-05-18 13:51:30 +02:00
Errant 6a1b7c8ee7
Space Ninjas auto-toggle internals after spawning (#25083)
* fix engine version

* actually fix engine version

* Automatically activated breathing masks

* weh

* who needed that component anyway

* check if internals are already running

* Update Content.Server/Atmos/Components/BreathToolComponent.cs

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

* Update Content.Server/Body/Systems/InternalsSystem.cs

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

* prediction

* record struct event

* remove delayed activation, instead ensure that masks spawn last

* leftover

* engine version

* re-implement

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-05-18 13:51:21 +02:00
Jajsha fdaba28158
Players can no longer see that emagged cyborgs' internals have been tampered with. (#27816)
* Add emag-detection funtionality to diag huds

* Add component to the omniHUD

* Fix namespace

* Adress discord review, just axe the message.
2024-05-18 13:48:50 +02:00
Brandon Li 1e60c8642b
Reagent dispenser UI (#27831)
* reagent dispenser: fancy window

* reagent dispenser: dispense button grid

* reagent dispenser: rearrange containers & info

* reagent dispenser: remove `reagent-dispenser-window-container-label`

* reagent dispenser: add `Scrollcontainer` on right side

* reagent dispenser: get rid of pointless actions

* reagent dispenser: cleanup actions and `inventory` field on bound ui state

* reagent dispenser: cool reagent cards & finishing touches

* reagent dispenser: final cleanup and formatting

* reagent dispenser: `ButtonGrid` and `ReagentDispenserSetDispenseAmountMessage` refactor

* reagent dispenser: cleanup code & address minor concerns

* reagent dispenser: text in reagent cards no longer clips

* reagent dispenser: oh wait i forgot to change this and thats why the builds keep failing probably

* reagent dispenser mayybe this

* reagent dispenser: remove `using FastAccessors;`
2024-05-18 13:48:42 +02:00
username fe7f506139
Traitor objective issuers (#27855)
* the thing

* another one

---------

Co-authored-by: whateverusername0 <whateveremail>
2024-05-18 13:47:19 +02:00
Tayrtahn db488fce74
Fix two issues with ReplacementAccentSystem (#27866) 2024-05-18 13:36:05 +02:00
DrSmugleaf 44eff7af7a
Move id and health examinable to shared (#27867)
* Move id and health examinable to shared

* Make GetInfo public
2024-05-18 13:36:03 +02:00
Mr. 27 a56b364c7e
Prevent non-inital infected from getting the succumb to zombie action (#27820)
* b

* Update ZombieRuleSystem.cs

* hi
2024-05-18 13:35:55 +02:00
deltanedas 6781d9e0a6
make fire not burn through hardsuits (#27161)
* add FireProtection system and event

* minor optimisation + make flammable use fire protection event

* add fire protection values to some things, nerf firesuit heat resistance

* bruh

* unrevert laser nerfs, make elite hardsuit fully fireproof

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:35:46 +02:00
Killerqu00 a9f81262d9
Revolutionaries can now cuff command instead of killing/exiling them (#27627)
* command can now be restrained for revs victory

* headrevs still must be killed
2024-05-18 13:34:17 +02:00
deltanedas 1fa0bad89f
malf killer 9000 (robotics console) (#24855)
* create devicenet frequencies

* create borg transponder and give it to all nt borgs

* add robotics console

* actually implement battery charge display + some fix

* tab

* real explosion

* little safer

* disable destroy button clientside too when on cooldown

* m

* how do i do this when i review things...

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

* webedit ops

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

* ui updates

* oracle java

* do a thing

* update ui when a borg times out

* maybe fix test

* add IsLocked to LockSystem

* make destroying gib the chassis again, so emagging isnt sus

* use locking

* require using alt click to unlock so normal click is open ui

* the

* use LogType.Action

* take this L

* pocket lint?

* sharer

* pro ops

* robor pushmarkup

* m

* update and make it not use prototype anymore

* frame0

* update yaml

* untroll

* bad

* h

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-05-18 13:34:13 +02:00
deltanedas 48afd84a12
ninja criminal records hacking (#24982)
* more humour

* spotted a troll

* add TryFindObjective to MindSystem

* replace copypaste bool conditions with CodeCondition

* use CodeConditionSystem in ninja + add handling for criminal hack

* add criminal records hacking

* update objectives

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-18 13:34:11 +02:00
Tornado Tech 094ea59b95
Added new HTN operations and preconditions (#27486)
* Added new HTN operations & preconditions

* Ok I forgot about partial

* Namespace pierce the skies

* Some fixes, debug and new operators

* Bruh git eat my files
2024-05-18 13:32:55 +02:00
Pieter-Jan Briers fa2223ed8d
Fix preferences sent to client not being sanitized (#27789)
Fucking whoops

In #27742 I made it so sanitization of character profiles was moved to be *after* database load. Except that means I moved it to be after the copy of all character profiles got sent to the client.

Move the sending to *also* be in that second load stage, and rename it. Fixes the issue.
2024-05-18 13:31:44 +02:00