Commit Graph

71 Commits

Author SHA1 Message Date
ScarKy0 253a9fbdf1
Seperate EMAG into EMAG and Authentication Disruptor (#34337) 2025-01-29 23:05:47 -05:00
ScarKy0 dd28f17b9a
Fix access configurator debug assert (#34330)
* fix

* greytide fix

* fix admin log

* Dirty
2025-01-09 19:22:28 -05:00
SlamBamActionman 3238c2e144
[HOTFIX] Fix chameleon PDAs renaming IDs (#34249)
Fix chameleon PDA
2025-01-07 20:31:54 +01:00
chavonadelal 6d99597349
Job title localization (#32338)
* Job title localization

* Correcting fields
2024-10-09 17:05:36 +02:00
nikthechampiongr ee434e397d
Rename fix (#31654)
* Localize RenameCommand and delegate most of the process to MetaDataSystem.SetEntityName()

* Make renaming rely on the EntityRenamedEvent. Fix issue where renaming would keep old Examine text

Requires engine change

* Fix localisation strings

* Make PDA search be based on a renamed entity's Uid instead of its old name

To do this the pda component now has an PdaOwner field which gets
assigned when it is given as a loadout to a player

* Fix bad merge???

huh

* Use AllEntityQuery
2024-09-15 11:55:03 +10:00
Fildrance 6380a9adca
feat: now when research is unlocked in console, approver of reasearch is radio-ed too (#31170)
* feat: now when research is unlocked in console, approver of reasearch is radio-ed too

* refactor: now most of events that require actor name to be radio-ed or logged use TryGetIdentityShortInfoEvent which is subscibed by id-card system and borg system (to work for both carbon and synthetic life-forms)

* refactor: moved TryGetIdentityShortInfoEvent on id card system to shared, fixed cargo cent-com-originated orders

* remove unused check

* refactor: decoupled systems from IdCardSystem (those that are not dependent on it anymore)

* refactor: removed unuseed usings

* feat: emagged cargo/research consoles wont radio messages on buy/research confirm anymore

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
2024-09-03 23:01:38 +10:00
Kara 485caa4553
Contraband marking & examining (#28688)
* System & loc strings

* pass over syndie contraband

* fixes

* grand theft pass

* contrabandexamine -> contraband

* examine text generation update

* all composition parents necessary

* bring back minor contra so it has a less confusing message

* minor

* weapon pass

* jumpsuit pass

* feet pass

* AUUUUUUUUUGHHHHHHHHHHHHHHHHHH

* head

* AUUUUGH

* ear

* belt

* back

* fix

* bro

* rename for more clarity

* do da review

* add cvar for contraband examine

---------

Co-authored-by: EmoGarbage404 <retron404@gmail.com>
Co-authored-by: Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
2024-08-11 23:57:49 -04:00
slarticodefast e0d30aff4e
Add tooltips to the agent ID job icons and improve status icon prototypes (#28575)
* add tooltips to agentid job icons

* forgot to stage this

* make StatusIconPrototype abstract

* minor visual improvements

* cleanup

* use currentculture to sort job names

* review
2024-08-09 16:14:07 +10:00
metalgearsloth 6005a9f4cb
Fix door access in mapping mode (#30030)
Fix shouldn't break anythingTM.
2024-07-19 16:19:15 +10:00
Winkarst f687124312
Update IdExaminableSystem.cs to use TryFromMarkup (#29957)
* Change FromMarkup to TryFromMarkup method in IdExaminableSystem.cs

* Update
2024-07-14 01:17:15 +02:00
deltanedas 02636386b5
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>
2024-07-11 15:55:56 +10:00
deltanedas 475c2a0b42
add access reader log wire (#29094)
* add LoggingDisabled to AccessReader

* add LogWireAction

* -m give everything besides high-security door a log wire

* make LogAccess public and support string arg

* add log when pulsing

* m

* l

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-06-23 01:12:58 +10:00
lzk 713c6d966b
Make borgs shown in logprobe (#27788) 2024-06-03 14:48:44 -04:00
DrSmugleaf 0e3a2b3ba1
Move id and health examinable to shared (#27867)
* Move id and health examinable to shared

* Make GetInfo public
2024-05-10 11:26:39 +10:00
deltanedas 85780dce96
fix mapping door access (#27784)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-05-08 06:14:17 -07:00
DrSmugleaf c122fdf183
Move job info changing methods for id cards to shared (#27337)
* Move job info changing methods for id cards to shared

* Revert "Move job info changing methods for id cards to shared"

This reverts commit 95cbc46b2d1934fa7bf5c72d7d3de9f9168992a1.

* Reapply changes
2024-04-26 18:00:16 +10:00
deltanedas 6d695dd326
dirty after calling SetAccesses (#26849)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-04-09 09:17:31 -04:00
c4llv07e 64bb8dbdd5
Add door electronics access configuration menu (#17778)
* Add door electronics configuration menu

* Use file-scoped namespaces

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

* Open door electronics configuration menu only with network configurator

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

* Doors will now try to move their AccessReaderComponent to their door electronics when the map is initialized

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

* Make the access list in the id card computer a separate control

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

* Fix merge conflict

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

* Remove DoorElectronics tag

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

* Integrate doors with #17927

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

* Move door electornics ui stuff to the right place

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

* Some review fixes

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

* More fixes

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

* review fix

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

* move all accesses from airlock prototypes to door electronics

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

* rework door electronics config access list

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

* Remove Linq from the door electronics user interface

* [WIP] Add EntityWhitelist to the activatable ui component

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

* Better interaction system

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

* Refactor

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

* Fix some door electronics not working without AccessReaderComponent

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

* Move AccessReaderComponent update code to the AccessReaderSystem

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

* Remove unnecesary newlines in the door access prototypes

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

* Remove unused variables in access level control

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

* Remove unnecessary method from the door electronics configuration menu

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

* [WIP] change access type from string to ProtoId<AccessLevelPrototype>

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

* Remove unused methods

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

* Newline fix

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

* Restored to a functional state

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

* Fix access configurator not working with door electronics AccessReaderComponent

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

* Replace all string access fields with ProtoId

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

* move access level control initialization into Populate method

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

* Review

---------

Signed-off-by: c4llv07e <kseandi@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-04-01 17:06:13 +11:00
Pieter-Jan Briers 68ce53ae17
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
2024-02-13 16:48:39 -05:00
Ed 498ad2d5d7
Lock Anomaly generator to research access (#24464)
* small patch

* fix

* remove garbage

* fix

* moved to shared events

* fix

* LocId

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2024-02-01 19:45:24 +11:00
Nemanja 736b9dd7df
Cryogenic Sleep Units (#24096)
* Cryogenic sleep units

* pause map support

* no more body deletion

* Cryogenic Storage Units

* boowomp

* no more emag, no more dropping present people
2024-01-14 23:35:28 -07:00
AJCM-git a4dd4828cf
Access logs tweaks and fixes (#23096)
* Fix AccessRecord not serializing correctly on map saves

* record struct my beloved

* Final tweaks

* pro

* This is no longer necessary
2023-12-28 19:32:46 -05:00
Chief-Engineer 476ea14e8a
Add access logs (IC ones) (#17810) 2023-12-26 18:24:53 -04:00
DrSmugleaf f560f88eb5
Remove 700 usages of Component.Owner (#21100) 2023-10-19 12:34:31 -07:00
Nemanja 3949932536
Fix access for vehicles and mechs (#20737)
* fix access for vehicles and mechs

* optimize
2023-10-05 03:12:40 -06:00
DrSmugleaf a44fa86b68
Update trivial components to use auto comp states (#20539) 2023-09-28 16:20:29 -07:00
metalgearsloth 5a0fc68be2
Content update for NetEntities (#18935) 2023-09-11 09:42:41 +10:00
Leon Friedrich af79f369ae
Remove outdated access reader method. (#19765) 2023-09-03 11:05:22 +10:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Nemanja 7ddee71379
More borg tweaks (#19143)
* borg tweaks but i'm gonna go code fun stuff first

* werkin' on it

* a ton of tweaks

* fuck everyone and then myself
2023-08-14 18:34:23 -05:00
Nemanja 98fa00a21f
Borgs (#18136)
* Laws

* positronic brain and PAI rewrite

* MMI

* MMI pt. 2

* borg brain transfer

* Roleban support, Borg job (WIP), the end of mind shenaniganry

* battery drain, item slot cleanup, alerts

* visuals

* fix this pt1

* fix this pt2

* Modules, Lingering Stacks, Better borg flashlight

* Start on UI, fix battery alerts, expand activation/deactivation, low movement speed on no power.

* sprotes

* no zombie borgs

* oh fuck yeah i love a good relay

* charger

* fix the tiniest of sprite issues

* adjustable names

* a functional UI????

* foobar

* more modules

* this shit for some reason

* upstream

* genericize selectable borg modules

* upstream again

* holy fucking shit

* i love christ

* proper construction

* da job

* AA borgs

* and boom more shit

* admin logs

* laws redux

* ok just do this rq

* oh boy that looks like modules

* oh shit research

* testos passo

* so much shit holy fuck

* fuckit we SHIP

* last minute snags

* should've gotten me on a better day
2023-08-12 16:39:58 -05:00
chromiumboy 2df70799f8
Add access configurator (#18638)
The access configurator programs the access levels of any access reader. To use the access configurator, players must:

- Insert an ID card
- Click a nearby entity with an access reader with the access configurator in hand
- Change the access list

Note that players only need one of the access levels listed on the device to lock/unlock it, but will only be able to alter access settings when they all of the access levels listed on the device

For example, an airlock which has 'Science' and 'Engineering' access listed can be opened by any player with either 'Science' or 'Engineering' access. However, to change the access settings on this airlock, a player must have both 'Science' and 'Engineering' access. This is to prevent people from easily breaking into secure areas with this tool, by adding one of their own access levels to the target device

Obviously, the most useful ID card to use with this tool is one with all access, since it can change the settings of any device. Removing all access requirements from a device will make it useable by anyone.

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-08-08 10:30:46 -08:00
PrPleGoo 852f041581
Add auth to the mass-media console (#18345)
* process my own comments

* add fields and handling

* little cleanups

* localization

* u

* whoops
2023-07-27 14:25:55 -06:00
c4llv07e edb33cacc4
Makes AccessReaderComponent support containers (#17927) 2023-07-26 01:34:08 -04:00
TemporalOroboros df1dcb74ac
Dewarns access (#16666)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-07-23 14:19:51 +10:00
0x6273 247c7a1d4d
Fix PDA capitalization to be PascalCase (#17335) 2023-06-15 11:44:28 +10:00
Julian Giebel 6ebd784cb6
Device Linking and better linking ui (#13645)
Co-authored-by: AJCM-git <60196617+AJCM-git@users.noreply.github.com>
Co-authored-by: Visne <39844191+Visne@users.noreply.github.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-05-07 16:07:24 +10:00
Moony 5cb1d70a3b
ID Console can no longer grant access the privileged ID doesn't have. (read: AA nerf) (#14699)
Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-05-05 23:56:54 +10:00
DrSmugleaf b4164e62b1
Remove id card console component reference (#15205) 2023-04-08 13:15:52 -07:00
DrSmugleaf b947856431
Remove hands component reference (#15197) 2023-04-07 11:21:12 -07:00
Kara 9688544e78
Content PR for auto-componentstate sourcegen (#14845)
* Content PR for auto-componentstate sourcegen

# Conflicts:
#	Content.Shared/Chat/TypingIndicator/TypingIndicatorComponent.cs
#	Content.Shared/Content.Shared.csproj
#	SpaceStation14.sln

* shared file too

* afterautohandlestate example

* oops

* anudda

* access fixed

* smart
2023-04-06 12:33:40 -05:00
Nemanja 89d3875cde
Fix access wires emagging machines (#14471)
* Fix access wires emagging machines

* comment

* le fix
2023-03-13 19:55:18 -07:00
Nemanja 52031e9309
Fix access on vehicles, mechs (#14458) 2023-03-12 23:55:02 +11:00
DrSmugleaf f4ccfc5e35
Fix access mispredicts when having a remote in hand (#14451) 2023-03-06 11:10:35 -08:00
Nemanja 13d71f14e2
add support for per-id access on AccessReaderComponent (#13659)
* add support for per-id access on AccessReaderComponent

* comments!!!

* oh yeah we predicting baby

* foobar

* sloth review

* weh
2023-02-28 08:03:55 -08:00
deltanedas 98b02b3d97
make emagged marker component (fixed version of #13867) (#14096)
* The all-in-one hacking solution
The thinking man's lockpick
The iconic EMAG

* emagged medbay's stasis bed

* left med, emagged sec' apc

* went back to chem, emagged the dispenser

* emagged the fax while i was there

* had a donut while waiting for emag to charge

* i broke into the bridge then announced 'mandatory johnson inspection in medical'

* get system instead of dependency

* feedback

* net suggestion

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

* use EnsureComp and import NetworkedComponent

---------

Co-authored-by: deltanedas <user@zenith>
Co-authored-by: deltanedas <deltanedas@laptop>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-02-18 19:03:06 -06:00
Nemanja d87d8f2886
predict emag and make blessed record struct events (#13623) 2023-01-22 02:12:45 +11:00
Visne c6d3e4f3bd
Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00
Chief-Engineer 0d18cec6b5
Improve ID modification logs (#12918)
* show modifications in access change logs

* skip logging and updates to name and job when no change was made

* add method to SharedAccessSystem.cs to get access tags

* add ID microwave logs
2022-12-19 21:53:20 -06:00
Nemanja 80d06362c5
vehicle access fix (#12868) 2022-12-04 18:23:59 -06:00