Ed 40daccc703 Upstream sync (#1187)
* Mob movement rewrite (#35931)

* Conveyor optimisations

- Optimise movement for moving stuff. Better flags + less resolves + slapped parallelrobustjob on it.
- Sleeping for entities getting conveyed into walls.

* Blocker version

* Finish

* Final

* Fix conveyor power mispredict

* Bagel save

* Revert "Bagel save"

This reverts commit 1b93fda81fb852d89b89b0beae0b80f8a61165f2.

* Conveyor resave

* Fix prediction

* Mob movement rewrite

* Bandaid

* Working version

* Tentatively working

* Friction to fix cornering

* More fixes

* Revert bagel

* Revert this

* a

* Reviewed

* Funky re-save

* Fix velocity

* Table fix

* Review

* a

* Automatic changelog update

* Unhardcode role type names and colors within localization text (#36096)

* localize role type names within localization text

* also unhardcode colors

* comment

* typo

* Fix gas pressure pump prediction (#35865)

* ACTUALLY predict gas pumps

* generic fake

* aaaaaaaaaaaaa

* Fix embedded projectile deletion not being tracked by container (#36123)

* Remove deleted projectiles from the container tracking them

* Gotta dirty the container

* Remove the container component when all embedded projectiles are gone

* Add test

* No clientside deletion of networked entities

* Move cleanup logic before deletion

* Make ContainerFillSystem print contents on failure (#36128)

* Make ContainerFill/EntityTableContainerFill print current contents when failing to spawn an entity

* List each entry on a new line; add fallback for empty

* convex update

* update emergency_courser

* update emergency_meta

* update man-o-war shuttle

* remove warden stamp mapped on meta

* me waiting

* update fland

* sure

* update box

* another one

* le heisentest au chocolat

* oops

* Death Nettle changes (#25253)

* Added ThornyComponent, ThornyImmuneComponent, and ThornySystem, as well as changed Botanists glove's to have the ThornyImmuneComponent, and for Death Nettle to have the ThornyComponent.

* Added heat damage to the player if they pickup nettle without gloves. Also displays a popup message .

* Revised OnHandPickUp method and reduced whitespace

* Touching death nettle without gloves now does damage split between heat and caustic, and does more damage.

* File-scoped namespace adherence

* Code revisions, and removal of old file.

* Removed thornyImmune key from botanist's gloves in gloves.yml for cleanup / yaml linter

* Adds new generic DamageOnPickup, still very WIP

* Starting on localization, removed _Notes.txt, adds immunity component

* Added OnPickupDamageImmune component to botanists gloves

* Removed botany specific components/system, moved to generic DamageOnPickup. Added code comments. Extra checks in component for whether to toss an item, damage an entity. Still WIP.

* changes to audio and popups

* Removes my system/component/ftl in favor of DamageOnInteract, tweaking values

* me stupid

* Death nettle will 'wilt' after 5 hits

* added interaction delay to stop spam clicking, added a 10% stun (paralyze) chance

* minor changes/cleanup

* more minor changes and cleanup

* Reduced maximum amatoxin within fly amanita spores.

* Readjusted to allow more than 5 amatoxin above 50 potency

* Remove Debug.Log statement from system

* Mark Death Nettle as major contraband.

* Automatic changelog update

* "I'm Weh-cellent" Cap (#28573)

* copy pasted fishcap.rsi

* added the sprites

* credited myself

* added it to the hats.yml list

* meh, make the spites look nicer

* hopefully this fixes that

* yeah that makes sense

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* that too

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* new courtroom, better signage, fixed uncleanable dirt, more

* Delete AccessReaderTest.TestTags (#36153)

* Sentry turrets - Part 4: The sentry turret and its primary systems (#35123)

* Initial commit

* Removed mention of StationAiTurretComponent (for now)

* Prep for moving out of draft

* Fixing merge conflict

* Re-added new net frequencies to AI turrets

* Removed turret control content

* Removed unintended change

* Final tweaks

* Fixed incorrect file name

* Improvement to fire mode handling

* Addressed review comments

* Updated how turret wire panel auto-closing is handled

* Ranged NPCs no longer waste shots on stunned targets

* Fixed bug in tracking broken state

* Addressed review comments

* Bug fix

* Removed unnecessary event call

* Automatic changelog update

* Shove down a person on uncuff if harm mode is on (#35193)

* stamdamage on uncuff while buckled

* pro tip

* 99 -> 100 stamdmg and don't count self-uncuffs

* review implementation

* tip update

* guidebook update

* merg

* Automatic changelog update

* Mapping warnings cleanup (#36168)

* Mapping warnings cleanup

* Redo

* Remove warnings from cargo system (#36159)

* Remove warnings from cargo system

* Guard statement early exit and cleaner object instantiation

* Whitespace

* Add AnimationPlayer as a component of telepads

* Fix some atmos warnings (#36157)

* Update Credits (#36172)

Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>

* Draw depth bug fix for sentry turrets (#36175)

Initial commit

* Update oasis

* Better jetpack emitter (#36093)

* Better jetpack emitter

Still need particles this just tilts me whenever I see it.

* Update Resources/Prototypes/Entities/Objects/Tools/jetpacks.yml

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Automatic changelog update

* Implement field-deltas for melee (#33977)

* Implement field-deltas for melee

* Review

* One day Im gonna snap and fix a bug

* Fix LoadGameMap running MapInit sometimes (#35241)

The map loadpath keeps it as not being mapinit but the grid one does not so this standardises them slightly.

* More responsive votekick system (reduce timer and successive timeout) (#36044)

* reduce votekick timer from 60 to 20 seconds

* votekick timeout from 120 to 30 seconds

* votekick timer duration from 20 seconds to 45, successive votekick timeout from 30 to 60 seconds

* Examine warnings cleanup (#36162)

* Examine warnings cleanup

* Revert unnecessary change

* SpriteSystem naming conventions

* Chemistry warnings cleanup (#36160)

* Chemistry warnings cleanup

* Fixing failed ITest

* Better entity instantiation

* Caching spritesystem and entity instantiation improvement

* Correcting naming conventions

* Rearranging dependency caching

* Movement systems warning cleanup (#36161)

* Movement systems warning cleanup

* Revert unnecessary change

* Reverting variable removal and changing entity query

* Reverting VV removals

* LocalEntity does in fact exist

* Anomaly warnings cleanup (#36188)

* use manual component state for BaseEmitSoundComponent (#35030)

* why

* cursed

* Gameticking warnings cleanup (#36193)

* Cleanup and small update to the stethoscope! (#36210)

* First commit

* Address most of the review!

* Automatic changelog update

* refactor: simple radial menu for easier creation (#34639)

* it works! kinda

* so it works now

* minor cleanup

* central button now is useful too

* more cleanup

* minor cleanup

* more cleanup

* refactor: migrated code from toolbox (as it was rejected as too specific)

* feat: moved border drawing for radial menu into RadialMenuTextureButton. Radial menu position setting into was moved to OverrideArrange to not being called on every frame

* refactor: major reworks!

* renamed DrawBagleSector to DrawAnnulusSector

* Remove strange indexing

* Regularize math

* refactor: re-orienting segment elements to be Y-mirrored

* refactor: extracted radial menu radius multiplier property, changed color pallet for radial menu button

* refactor: removed icon backgrounds on textures used in current radial menu buttons with sectors, RadialContainer Radius renamed and now actually changed control radius.

* refactor: in RadialMenuTextureButtonWithSector all sector colors are converted to and from sRGB in property getter-setters

* refactor: renamed srgb to include Srgb suffix so devs gonna see that its srgb clearly

* fix: enabled any functional keys pressed when pushing radial menu buttons

* fix: radial menu sector now scales with UIScale

* fix: accept only one event when clicking on radial menu ContextualButton

* fix: now radial menu buttons accepts only click/alt-click, now clicks outside menu closes menu always

* feat: simple radial menu prototype for easier creation

* refactor: cleanup, restored emote filtering, button models now have class hierarchy

* refactor: remove usage of closure from 'outside code'

* refactor: remove non existing type from UiControlTest

* refactor: remove unused using

* refactor: revert ability to declare radial menu layers in xaml, scale 32px sprites using scale in radial menu

* refactor: whitespaces

* refactor: subscribe for dispose on existing radial menus

* feat: now simple radial menu button models can have custom color for each sector background (and hover background color). Also added OpenOverMouseScreenPosition inside SimpleRadialMenu

* fix: AI door menu now can be closed by verb if it gets unpowered

* refactor: simplify hiding border, extended xml-doc for simple radial menu settings

* refactor: remove linq

* fix: fix AI radial action serialization using invalid type

* refactor: fix duplicate ShowDeviceNotRespondingPopup for AI by properly checking if it can interact

* refactor: whitespaces, changed list to array in simple radial button preparing methods

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>

* delete PolymorphOnCollideComponent (#36227)

delete component

* Light warnings cleanup (#36195)

* Light warnings cleanup

* Using EntitySystem Proxy overrides

* New TryComp guards for light animations

* Reverting guards when not wanted

* Holoparasite injector fix (#36109)

* HoloParaTextFix

* PleaseSpeedMergeLmao

* ThankYouOrks

* Update Resources/Locale/en-US/guardian/guardian.ftl

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* Update Content.Server/Guardian/GuardianSystem.cs

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* Update Content.Server/Guardian/GuardianSystem.cs

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* Localize and colorize grill temperature settings (#36236)

* Make it easier to localize grill heat level settings

* Change examine text color based on setting

* Trailing periods

* Use Fluent terms to reduce duplication

* Rework the way held items scatter when holder is knocked down (#36232)

* Redo drop held items math

* Don't assume the holder has a PhysicsComponent

* Assume infinite mass for held items with no PhysicsComponent

* Switch to EntityQuery for PhysicsComponent

* The micro-est of optimizations

* use NextAngle

* Might as well do that outside the loop

* Automatic changelog update

* Undetermined thieving satchel (#36201)

* yippee!

* no toolboxes allowed

* sprite, descriptions

* Automatic changelog update

* more maints, new AI, xenobiology, etc, ect

* Add prediction to electric grills (#36241)

* Prediction for EntityHeaterSystem

* Switch to Entity<T>

* meh

* Move popup inside ChangeSetting

* Fix grill visually turning on when changing setting while power is off

* Add note about my failed quest

* Why isn't this an IDE warning?

* Move comment above switch expression in SettingPower

* Automatic changelog update

* Move medical locker fills to entityTables (#36249)

* Added tables + moved things to EntityTableContainerFill

* YAML convention

* Rotation warnings cleanup (#36197)

* Rotation warnings cleanup

* Naming convention fix

* Adding component that we already have

* New food recipe: World Peazza (#35191)

* added world peazza

* fixed a comma in the pizza sprite json

* changed attribution comment on ArtisticRoomba's suggestion

* restored accidentally deleted line, thanks Tayrtahn

* Automatic changelog update

* Fix KeyNotFoundException that sometimes happens on server shutdown (#36221)

* Fix "other player points at you" message formatting (#36253)

Fix "other player points at you" message's Fluent functions

* Light replacer description typo fix (#36256)

Replacer description typo fix

* fix: re-add missing RCD deconstruct action #36243 (#36255)

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>

* Automatic changelog update

* add: Dragon rift color changes based on charge (#36216)

* use dragon rift sprite colours

* Entity<T>

* Automatic changelog update

* :3

This is so we can publish stable again

* Convert AgentIDCard message to use a Fluent selector (#36263)

Convert AgentIDCard message to use a selector

* NPC Warnings cleanup (#36189)

* NPC Warnings cleanup

* Reverting unnecessary changes

* Reverting unnecessary changes, missed

* Using entity GetGrid override instead

* Fix entities burning to ash not using identity, and bad formatting (#36268)

* Make burning to ash use identity

* CAPITALIZE(THE())

* Localize air alarm states (#36266)

* Fix a few loc bugs with magic mirror/scissors (#36269)

* Use identity for magic mirror popups

* THE()

* Use correct pronouns in blocked-by-hat message

* Add autocomplete to controlmob (#36234)

Expensive for what it is just really annoying in debug to not have it. Worst case I just make it debug only and we don't add it for release.

* Change the name and description of the templar helmet. (#36258)

Changed the name and description of the knight helmet.

Co-authored-by: Flesh <N/A>

* Diphenhydramine causes drowsiness (#36212)

* nap time in medbay

* suggested changes

* fake test fail

* Automatic changelog update

* Improve sprite fading behaviour (#35863)

* Click through faded sprites

* Count the mouse position for which sprites to fade

* Automatic changelog update

* Recipes for curtains and tables using carpets now respect stacks. (#33721)

* Carpet curtain/table recipes now respect stacks

* remove unused colour carpet tags

* Remove the tags outright

* Automatic changelog update

* Stop ghosts from being logged to Airlocks (#36261)

* stop ghosts from being logged

* thanks rider for the random import

* add new tag PreventAccessLogging

* once again removing random auto imports

* inverted if for code readability

* switch to ProtoId<> usage

* Automatic changelog update

* Fix loc issues with syringes (#36285)

Fix injector loc issues

* [Hotfix] Change ID card console admin log severity to Medium (#36283)

It's that simple

* Fix loc issues with suicide popup (#36284)

* Add PKA and PTK-800 shuttle gun recipes to sec techfab (#34566)

* add Magboots and PKA to sec lathe

* add kinetic shuttle gun to sec lathe

* use pack recipe

* remove magboot from prior commit

* Automatic changelog update

* Mob collisions (#34580)

* Conveyor optimisations

- Optimise movement for moving stuff. Better flags + less resolves + slapped parallelrobustjob on it.
- Sleeping for entities getting conveyed into walls.

* Blocker version

* Finish

* Final

* Mob collisions

* impulses

* Collision smoothing

* Locked in

* 30tps working

* r

* fixes

* Best

* Fixes + CVars

* CVars in place

* Pushies

* Opt attempt 1

* Revert "Opt attempt 1"

This reverts commit 5ccd72dcbea09261a992aa1f7f05df169a1ce676.

* Fix mispredicts

* Ready-ish

* better

* Cleanup

* Fix conveyor power mispredict

* Forgetting to actually do deltas

* Fix buckle pushes

* Bagel save

* Revert "Bagel save"

This reverts commit 1b93fda81fb852d89b89b0beae0b80f8a61165f2.

* Conveyor resave

* Fix prediction

* Mob movement rewrite

* Bandaid

* Working version

* Tentatively working

* Friction to fix cornering

* More fixes

* Revert bagel

* Revert this

* Bad parity

* Working

* Fixes

* Woops

* Doc comments

* Pen cap cvar

* StandingState cleanup and sub

* Fix downed mobs

* fish

* client

* Disable pushing on tests

* More variables

* Movement mods

* Mass diff

* 1 more tweak

* Cvar

* Mob collision tweaks (#36296)

* Mob collision tweaks

- Remove the dot product default so moving also pops it.
- Cleanup the cvars so admins can adjust

* Gas canister revert

* fix implanting borgs and bots (#36218)

* fix implanting borgs

* fix

* Automatic changelog update

* Rotate Adv Mineral Scanner in Inventory (#36294)

* Automatic changelog update

* Fix ninjas not being able to hack criminal records (#36299)

Index reason placeholders prototype as a LocalizedDataset

* Automatic changelog update

* Remove embed mispredict (#36297)

* Remove embed mispredict

I don't know why this is here but it doesn't seem to cause issues and transforms should be fully predicted so if there are bugs I will deal with them as they come up.

* a

* IPIntel now rounds to 2 decimal points (#36298)

* IPIntel now rounds to 2 decimal points

* Nvm i understood what pjb wanted now

* Antagonist roles now require 1h playtime. (#36276)

* init

* whitespace

* Automatic changelog update

* Extracts magic strings from Tag calls (#36305)

* Extracts magic strings from Tag calls

When #36281 gets merged, the `TagSystem` methods will all give warnings. Let's fix those warnings before they even happen!

* Adds missing libraries

* Remove not yet implemented TagSystem changes

* Fix tag spelling error

Genuinely surprised there was only 1!

* Styling and proper type changes

* Styling

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

---------

Co-authored-by: Tayrtahn <tayrtahn@gmail.com>

* Fix shutter construction ghost rotation (#36082)

* Fixed shutter construction frame not aligning with construction ghost

* removed metadata change that should be in a different PR

* Add 10u of plasma to SyndieJuice (#36280)

Gift for the agent

* Automatic changelog update

* maints insuls, more meteor shielding

* Typo fix in Syndicate agent locale resources (#36318)

* "discretely" corrected to "discreetly"

* how did it happen twice

* removed mapinit and mappaused components

* Remove "SHUTTLES" from the allergy list in ion_storm.yml (#36317)

with accordance pull 35751, removes the "SHUTTLES" as a possible allergy to prevent possible round stall

* Reduce storage implant to a 2x L shape/6 slots (#36272)

Change subdermal implant

* Automatic changelog update

* Add additional Biome Markers. (#36300)

* init

* slight value tweaks

* few more

* move DeviceLinking events to shared (#36307)

move events

* Displacement Map Visualizer update (#35952)

Update Displacement Map Visualizer.lua

* remove evil shitcode from randommetadata (#36324)

* remove evil

* fix non-localizeddataset uses

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>

* Centcomm death rattle implant (#36113)

* behold!

* minor name change 👍

* Remove fields 👍

* Changes it to parent off DeathRattleImplant

* Adds implants round start and fixes hypothetical bug

* Update Resources/Prototypes/Entities/Mobs/Player/humanoid.yml

As per slarticodefast's suggestion

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

* Remove toxins from the chemical synthesis kit description (#36323)

Alter the description of the chemical synthesis kit to no longer include any false hopes of toxins

* Automatic changelog update

* Fix blocked UI interaction on unpowered devices (#36319)

init

* Automatic changelog update

* Update Credits (#36337)

Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>

* Salvage melee weapon tweaks (#35914)

* Minor salvage melee tweaks.

* Minor salvage melee tweaks.

---------

Co-authored-by: RedBookcase <Usualmoves@gmail.com>

* Automatic changelog update

* Make Health Analyzer scan range nullable and adjust admin PDA (#36347)

* Modify .cs and admin pda

* enhance comment

* Automatic changelog update

* Allow Aghosts to load biomes. (#36325)

* init

* review

* Automatic changelog update

* Make `RandomMetadata` properly support localization (#36343)

* Make _outputSegments readonly

* Remove mystery character

* Use Fluent instead of string concatenation

* Adjust format

* Convert existing content

* Don't need these anymore

* Docs

* predict IgnitionSourceComponent (#36310)

* PREDICTION

* comment

* don't overwrite event args

* totally not a web edit

* intn't

* Make spam delivery headers easier to reuse (#36332)

Convert nanotrasen, syndicate, and alternate timeline nanotrasen headers into reusable terms

* Make FlammableTileReaction additive instead of multiplicative. (#36387)

Make FlammableTileReaction additive

* New security box fills, renamed and replaced sechud box icon (#35057)

* secglasses and sechud icons, new box fills

* sunglasses box

* fixes indentation

* Automatic changelog update

* Allow sound to play at the start of anomaly supercritical animation (#36260)

* Add datafield to AnomalyComponent to play a sound when an anomaly enters supercriticality

* use Entity<T> pattern

* use implicit default for nullable

* don't forget to resolve the AnomalyComponent...

* Add comment for StartSupercriticalEvent "ent" parameter

* use implicit casts from Entity<T> to EntityUid

* StartSupercriticalEvent requires AnomalyComponent to resolve

* Printable vials (#36380)

* add vial recipe

* adding vial to lathe recipes

* adjusted vial production cost

* Reduced glass cost for vials

* Automatic changelog update

* DocumentParsingManager: Ignore XML comments in guidebook pages (#35506)

* Parse XML comments

* Use var instead of typed for variable declaration

---------

Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>

* fix rmobjective command and add completion options (#36396)

fix rmobjective command

* Automatic changelog update

* Fix `lsobjectives` target player logic (#36398)

* Fix lsobjectives target player logic

* Logic 3.0

* Fix matchstick prediction issues (#31418)

* First commit

* Minor fixes please ymal error begone

* If this fixes it

* Last chance

* How

* Forgot

* First fixes

* Added correct component tags

* Minor cleanup

* Address review!

* Namespace change

* Fix yaml yelling

* Changes

* Update namespace

* Removed the unneeded files

* Add inhands for Holoprojectors, labelers, cone, brb sign, fartbag (#36036)

* Add inhands for Holoprojectors, labelers, cone, brb sign, whoopie cushion

* Update Resources/Textures/Objects/Devices/Holoprojectors/atmos.rsi/meta.json

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

---------

Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>

* Automatic changelog update

* Replaced Sterile Swabs in NutriMax with a Swab Dispenser (#36399)

Replaced Sterile Swabs with Swab Dispenser in NutriMax

* Automatic changelog update

* convex fixes

* Mark the spider clan explosive as major contraband (#36421)

Even though it's an unsanctioned explosive device, it's currently
not considered contraband. This patch adds BaseMajorContraband to it.

* Automatic changelog update

* job counts for each map

* remove duplicate CE entry

* Predict inflatable barriers verb (#32420)

* First commit

* evil

* Made it not do weird things

* address review!

* Automatic changelog update

* Feature/shader radial menu (#35152)

* it works! kinda

* so it works now

* minor cleanup

* central button now is useful too

* more cleanup

* minor cleanup

* more cleanup

* refactor: migrated code from toolbox (as it was rejected as too specific)

* feat: moved border drawing for radial menu into RadialMenuTextureButton. Radial menu position setting into was moved to OverrideArrange to not being called on every frame

* refactor: major reworks!

* renamed DrawBagleSector to DrawAnnulusSector

* Remove strange indexing

* Regularize math

* refactor: re-orienting segment elements to be Y-mirrored

* refactor: extracted radial menu radius multiplier property, changed color pallet for radial menu button

* refactor: removed icon backgrounds on textures used in current radial menu buttons with sectors, RadialContainer Radius renamed and now actually changed control radius.

* refactor: in RadialMenuTextureButtonWithSector all sector colors are converted to and from sRGB in property getter-setters

* refactor: renamed srgb to include Srgb suffix so devs gonna see that its srgb clearly

* fix: enabled any functional keys pressed when pushing radial menu buttons

* fix: radial menu sector now scales with UIScale

* fix: accept only one event when clicking on radial menu ContextualButton

* fix: now radial menu buttons accepts only click/alt-click, now clicks outside menu closes menu always

* feat: simple radial menu prototype for easier creation

* refactor: cleanup, restored emote filtering, button models now have class hierarchy

* refactor: remove usage of closure from 'outside code'

* refactor: remove non existing type from UiControlTest

* refactor: remove unused using

* refactor: revert ability to declare radial menu layers in xaml, scale 32px sprites using scale in radial menu

* refactor: whitespaces

* refactor: subscribe for dispose on existing radial menus

* feat: now simple radial menu button models can have custom color for each sector background (and hover background color). Also added OpenOverMouseScreenPosition inside SimpleRadialMenu

* fix: AI door menu now can be closed by verb if it gets unpowered

* overlay and its registration

* radial menu shader but it requires wierd offset

* remove unused file

* smol cleanup

* remove unused code

* neat internal subsctors in radial menu shaders

* refactor finalize visual style

* comments, simplify, extract variable and other minor refactors on radial-menu shader

* refactor: extract more data from radial menu with sector to radial container for shader drawing

* replaced DrawSeparators for RadialMenuTextureButtonWithSector with DrawBorder (no reason to make them separate), also now colors are properly applied

* refactor: simplify hiding border, extended xml-doc for simple radial menu settings

* refactor: remove duplication of radial menu shaders, use ValueList to collect ClearExistingChildrenRadialButtons buttons to remove

* refactor: remove linq

* fix: fix AI radial action serialization using invalid type

* refactor: fix duplicate ShowDeviceNotRespondingPopup for AI by properly checking if it can interact

* refactor: removed *if* blocks from shader, replaced with branchless logic

* refactor: whitespaces, changed list to array in simple radial button preparing methods

* fix: merge duplicated code

---------

Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>

* Fixed the empty mass scanner still being a normal item, whoops. (#36340)

* Fixed the empty mass scanner still being a normal item, whoops.

* Fixed parenting duplication and issues with item state.

---------

Co-authored-by: RedBookcase <Usualmoves@gmail.com>

* remove mind roles from EntityWhitelist (#36089)

* remove mind roles from EntityWhitelist

* remove redundant dependency

* Automatic changelog update

* Various UI warnings cleanup (#36169)

* Various UI warnings cleanup

* Revert unnecessary change

* Redoing SpriteSystem as it's non-injectable

* Missed one

* Better entity instantiation

* General cleanup of warnings changes

* Wrong class name!

* Lower minimum size of absorbent item status (#35804)

80f2dc6dd3 fixed BoxContainer so that the actual specified MinimumSize gets used. This is a problem because for the absorbent item status it's way too high so it looks silly.

* Update submodule to 251.0.0 (#36435)

* Fix power cells/cages counting for laser weapon bounties (#36431)

fix cargo bounty bug

* Automatic changelog update

* Holopad fixtures bugfix (#36341)

Initial commit

* Automatic changelog update

* Add cooked dragon steak and cutlets (#36273)

* Add cooked dragon steak and cutlets

* If it's worse for you it's even more of a delicacy

* Attribution

* Automatic changelog update

* Disable mob pushing

Part of maint meeting

* Revert "Feature/shader radial menu" due to shader issue (#36470)

* Hotfix for water/fuel tank fixtures (#36527)

Sharing the same fixture layer as walls causes dragged water/fuel tanks to be blocked by things that they really shouldn't be, such as lights and holopads

Being PRed as a hotfix in order to fully finalize #36341

* [HOTFIX] Sprite fade review #36509 (#36552)

cherry-picked

* Clarify "purple text" characters in rules & readd Space Law non-restricted item seizure (#36414)

Initial commit

---------

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: PJBot <pieterjan.briers+bot@gmail.com>
Co-authored-by: Errant <35878406+Errant-4@users.noreply.github.com>
Co-authored-by: Milon <milonpl.git@proton.me>
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
Co-authored-by: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
Co-authored-by: Emisse <99158783+Emisse@users.noreply.github.com>
Co-authored-by: James <40279265+ViceEmargo@users.noreply.github.com>
Co-authored-by: UBlueberry <161545003+UBlueberry@users.noreply.github.com>
Co-authored-by: Deerstop <edainturner@gmail.com>
Co-authored-by: chromiumboy <50505512+chromiumboy@users.noreply.github.com>
Co-authored-by: Killerqu00 <47712032+Killerqu00@users.noreply.github.com>
Co-authored-by: J <billsmith116@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Avery Dobbins <avery.dobbins@gmail.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
Co-authored-by: K-Dynamic <20566341+K-Dynamic@users.noreply.github.com>
Co-authored-by: Myra <vasilis@pikachu.systems>
Co-authored-by: beck-thompson <107373427+beck-thompson@users.noreply.github.com>
Co-authored-by: Fildrance <fildrance@gmail.com>
Co-authored-by: pa.pecherskij <pa.pecherskij@interfax.ru>
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
Co-authored-by: YoungThug <ramialanbagy@gmail.com>
Co-authored-by: ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
Co-authored-by: Radezolid <snappednexus@gmail.com>
Co-authored-by: MisterImp <101299120+MisterImp@users.noreply.github.com>
Co-authored-by: Kirby <205904127+154942@users.noreply.github.com>
Co-authored-by: qwerltaz <msmarcinpl@gmail.com>
Co-authored-by: Polter <62557990+PolterTzi@users.noreply.github.com>
Co-authored-by: āda <ss.adasts@gmail.com>
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
Co-authored-by: Whatstone <166147148+whatston3@users.noreply.github.com>
Co-authored-by: Luna "YuNii" Henrich <yuniivrc+github@proton.me>
Co-authored-by: SlamBamActionman <83650252+SlamBamActionman@users.noreply.github.com>
Co-authored-by: lzk <124214523+lzk228@users.noreply.github.com>
Co-authored-by: TheBlueYowie <the.blue.yowie@hotmail.com>
Co-authored-by: BWTCK <193008538+BWTCK@users.noreply.github.com>
Co-authored-by: Super <84590915+SuperGDPWYL@users.noreply.github.com>
Co-authored-by: KamTheSythe <kamil.dolowiec01@gmail.com>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: UpAndLeaves <92269094+Alpha-Two@users.noreply.github.com>
Co-authored-by: Phil <91200802+PhilIngham@users.noreply.github.com>
Co-authored-by: RedBookcase <crazykid1590@gmail.com>
Co-authored-by: RedBookcase <Usualmoves@gmail.com>
Co-authored-by: Minemoder5000 <minemoder50000@gmail.com>
Co-authored-by: Quantum-cross <7065792+Quantum-cross@users.noreply.github.com>
Co-authored-by: Nyxilath <colton.malone@gmail.com>
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
Co-authored-by: Tiniest Shark <head.rebel@yahoo.com>
Co-authored-by: Spessmann <156740760+Spessmann@users.noreply.github.com>
Co-authored-by: Alex Parrill <alex.parrill@col32.net>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2025-04-15 01:00:51 +03:00
2025-03-17 11:54:43 +03:00
2025-02-06 13:57:14 +03:00
2025-02-06 13:57:14 +03:00
2025-02-06 13:57:14 +03:00
2025-02-06 13:57:14 +03:00
2025-02-06 13:57:14 +03:00
2025-02-26 19:54:33 +01:00
2025-02-08 17:29:29 +03:00

CrystallEdge

CrystallEdge is a build running on the RobustToolbox, engine, developed by Space Wizard Federation. It is based on the original build of Space Station 14, and rewritten into a new game.

Discord | Steam | Boosty

Contributing

We welcome any support from the community in the development of the game! Join our discord to find out how you can help the project, or check out Issues on Github.

Building

  1. Clone this repo.
  2. Run RUN_THIS.py to init submodules and download the engine.
  3. Compile the solution.

More detailed instructions on building the project.

Licensing/Attriibution

These are just the most important points, Please read Legal.md for the specifics around licensing/attribution/copyright.

  • Unless specified otherwise, all Source Code, inside any _CP14 or CP14 folders, fall under the terms specified in LICENSE_CE.TXT (all right reserved) with Exhibit B enforced and the CrystallEdge CLA. All assets/content in those folders falls under CC-BY-SA 4.0 unless otherwise specified.
  • Any content from SpaceWizards/SpaceStation14 without specified licensing of any code is licensed under MIT (LICENSE.txt). Any Space Wizards content licensed under CC-BY-SA 3.0 to Space Wizards Federation & Contributors.
  • You may not use CrystallEdge code in other projects without specific permission from the CrystallEdge author (TheShuEd)

Forking CrystallEdge

You cannot create forks of CrystallEdge to open your own public servers. You can copy a build for educational purposes, code research and contributing to the main build.

Description
Somethin something about magic rp coop game. Based on the game Space Station 14.
Readme 910 MiB
Languages
C# 84.7%
Fluent 14.8%
Python 0.3%