Commit Graph
40 Commits
Author SHA1 Message Date
slarticodefastandwalksanatora 6b57b9bd6b move all the radio components and system to Shared (#40293)
* move all the radio components and system to Shared.

* duh split impl

* address reviews

* cleanup

---------

Co-authored-by: walksanatora <walkerffo22@gmail.com>
2025-12-29 11:39:05 -06:00
Pieter-Jan Briersandslarticodefast b7f297f612 Fix usages of TryIndex() (#39124)
* Fix usages of TryIndex()

Most usages of TryIndex() were using it incorrectly. Checking whether prototype IDs specified in prototypes actually existed before using them. This is not appropriate as it's just hiding bugs that should be getting caught by the YAML linter and other tools. (#39115)

This then resulted in TryIndex() getting modified to log errors (https://github.com/space-wizards/RobustToolbox/commit/94f98073b07bd3fa3133ae6799b34d90f46f467e), which is incorrect as it causes false-positive errors in proper uses of the API: external data validation. (#39098)

This commit goes through and checks every call site of TryIndex() to see whether they were correct. Most call sites were replaced with the new Resolve(), which is suitable for these "defensive programming" use cases.

Fixes #39115

Breaking change: while doing this I noticed IdCardComponent and related systems were erroneously using ProtoId<AccessLevelPrototype> for job prototypes. This has been corrected.

* fix tests

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2025-12-29 11:39:03 -06:00
beck-thompson 41341a8a03 Voice Mask refactor (#30798)
* First commit

* Added base.Initialize()

* Voice wire fix (Electricty name)

* Various minor cleanups

* Localized default voice mask name

* Added VoiceOverride stuff

* Removed unused stuff

* Typo

* Better localized stuff

* Typo / spelling stuff / comments

* Blessed
2024-10-02 12:06:05 +01:00
Nemanja 8295d43319 Intercom buffs and fixes (#29580)
* Intercom buffs and fixes

* remove unused bui state

* mild sec intercom buff

* reinforce sec intercoms
2024-08-09 17:33:56 +01:00
SkaldetSkaeg 5c696acf9e No echo from handheld radio (#27046)
I found the echo from my own radio very annoying.

(cherry picked from commit 9378688ffc)
2024-05-03 00:12:30 +02:00
Tayrtahn 7141b1ff32 Fix sloshing electricity & enable SpeechVerb masking (#24238)
* Implemented electricity speech verb masking

* Handle speech verb override elsewhere in the system, even though we're not using it

* Fix that protoId business

* No nullable component fields

* Use ProtoId, and try going back to a nullable.
Specifiy DataFields on VoiceMaskComponent.

(cherry picked from commit b4046bc2bb)
2024-01-27 23:51:27 +01:00
LordCarve ad35a2fda3 Obsolete refactor - ConnectedClient to Channel (#24409)
(cherry picked from commit 05a2e6b3a2)
2024-01-27 23:44:02 +01:00
Nemanja 994eb01f9d research console radio messages on unlock (#22166) 2023-12-16 19:23:01 +01:00
Nemanja 8aa9d90812 global radio toggle for observers (#22137) 2023-12-16 19:18:42 +01:00
Bakke 6690974ba2 Fix syrinx voice mask not working over radio (#488) 2023-12-06 17:01:50 +01:00
Leon Friedrich 1465c02a77 Move ActorComponent to shared (#21293) 2023-10-31 19:12:44 +01:00
DrSmugleaf 253e012462 Add admin Erase verb, add checkbox to erase from the ban panel (#20985) 2023-10-14 22:19:04 +02:00
metalgearsloth c9648da984 Content update for NetEntities (#18935) 2023-09-27 21:59:12 +02:00
Visne c7b21b631b Remove unused dependencies (#19490) 2023-08-24 09:55:15 -08:00
Nemanja f3b40197b9 remove "failed to send message" popup from radio (#19184) 2023-08-15 14:56:42 -06:00
Kara 7db8c781e7 Speech verbs & conditional markup modification (#18980) 2023-08-15 13:03:05 -07:00
Nemanja 6dbfbc52c0 Good Intercoms (#17950)
* crystal anomaly

* Good intercoms

* fixes

* fix construction fail

* Revert "crystal anomaly"

This reverts commit 0d9e3f62ff82c79e72f882b9c7f4ca1b9c6e6dd8.

* migration
2023-07-11 17:58:18 -06:00
Leon Friedrich b03d9a90ab Add support for client-side replays (#17168) 2023-06-19 03:23:31 +10:00
metalgearsloth f7950d07e2 Revert "Revert "Emp more effects" (#16159)" (#16165)
This reverts commit 0da5a78509.
2023-05-06 11:26:04 -04:00
metalgearsloth 0da5a78509 Revert "Emp more effects" (#16159) 2023-05-06 20:45:49 +10:00
Slava0135andmetalgearsloth 4d47562dde Emp more effects (#14550)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-05-06 11:38:09 +10:00
Slava0135 8aef835d33 radio systems replace all entity query with enumerator (#15449) 2023-04-23 18:29:08 +10:00
Slava0135 7886d27dda Add radio jammer (#14369) 2023-04-14 12:50:19 -07:00
adamsong bcb07142ae Allow ghosts to hear radio message globally (#15078) 2023-04-02 18:56:07 -05:00
Slava0135 53681a8b31 Add telecomms system (#14486) 2023-03-23 20:02:41 -04:00
Nemanja 64e882bb6d fix radiosystem popup (#14121) 2023-02-15 16:53:13 +11:00
Slava0135andAJCM 301956ef15 Add solar flare event (#13749)
* add solar flare event (only affects headsets)

* add popup

* cleaner impl using RadioReceiveAttemptEvent

* unused import

* handheld radio and intercom work again

* Revert "handheld radio and intercom work again"

This reverts commit 0032e3c0725a19a465daf1ff1d6b4942a5c14fbb.

* add radio source to Radio events

* intercoms and handheld radios work now

* use Elapsed instead of new field

* add configuration

* better not touch Elapsed

* the

* make popup bigger

* xml comments for configuration

* very minor refactoring

* default config is now in yaml

* lights can break

* use RobustRandom

* use file namespace

* use RuleStarted

* store config in field

* a

---------

Co-authored-by: AJCM <AJCM@tutanota.com>
2023-02-11 20:24:29 +00:00
Chief-Engineer 5c06c4c3ef Add voice changer logs (#14040)
* add set voice log

* add used identity to chat message logs

* please tell me there's a better way
2023-02-11 19:26:44 +00:00
deltanedas 101261b280 make voice mask affect radio too (#13858) 2023-02-05 11:38:14 -04:00
Chief-Engineer 7587891d21 add radio message logs (#13167) 2022-12-24 14:50:34 -06:00
Leon Friedrich 6af331c9ff Remove StoredChatMessage (#12623) 2022-11-22 22:52:19 +11:00
Leon Friedrich 0b5a58001c IListener and IRadio purge (#11980) 2022-11-15 15:09:27 +11:00
Flipp Syder 0385f1387c Voice mask (#10458) 2022-09-29 12:22:27 +10:00
Leon Friedrich e9616e40f9 Remove IActivate (#9705)
* git mv

* purge IActivate

* File scoped NS
2022-07-14 20:29:29 +10:00
metalgearslothandKevin Zheng 3da454140d Add department-specific radio channels (#9061)
* Add department-specific radio channels

This commit adds working department-specific radio channels, while
minimizing damage to the current codebase. It is expected that a future
refactor will clean this up a bit.

ChatSystem now has a RadioPrefix() method that recognizes
department-specific channels (e.g. ":e" and ":m") in addition to the
global channel (";"). It strips the prefix from the message and assigns
messages an integer representing the destination channel, if any.

IListen and IRadio now accept optional 'channel' arguments with this
channel in mind.

The ugly is that the integer channel number is hard-coded and also shows
up in chat.

Comms are not modeled at this time. You cannot break comms (yet).

All headsets have channels soldered into them. You cannot change
encryption keys to hop on new channels. Steal a headset instead.

* Remove debugging print

* Convert to prototypes

* Use prototype names in headset prototype

* Adjust list style

* Document prototype fields

* cringe

* some cleanup

* colours

* Remove alphas at least

* cc

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2022-06-23 20:11:03 +10:00
Rane 7900abb888 Literally Murder IExamine (#7352) 2022-04-08 14:17:25 -07:00
mirrorcult ec4d4688c7 Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
DrSmugleaf 2a3b7d809d Fix 3000 errors 2021-12-05 18:09:01 +01:00
Vera Aguilera Puerto 0be5ff829b Gets rid of all ComponentManager usages. (#4707) 2021-09-28 13:35:29 +02:00
DrSmugleaf ff1a2d97ea Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00