Commit Graph

60 Commits

Author SHA1 Message Date
Perry Fraser
9a605c8642 fix: deglitchify drowsiness effect on macOS (#37817) 2025-06-17 23:05:12 +02:00
Southbridge
cbf8fa2349 Remade the AI Camera Static Shader (#38093)
Redid the camera static shader
2025-06-09 21:47:35 -07:00
slarticodefast
7d2d05b99c Fix noir shader in compability mode (#38080)
fix noir shader in compability mode
2025-06-05 14:52:39 +02:00
slarticodefast
1441effed2 improve noir glasses shader (#37996)
* improve noir glasses shader

* tweak values
2025-06-02 09:16:10 -07:00
slarticodefast
9b1a6dd57b add reduced motion drug overlay (#37584)
* reduced motion flash effect

* reduced motion drug overlay

* Revert "reduced motion flash effect"

This reverts commit e350b2899d0acc78c9833b5bc23a9680e03b2736.
2025-05-20 08:36:08 -04:00
Pieter-Jan Briers
e6e60dead4 Revert "Feature/shader radial menu" due to shader issue (#36470) 2025-04-11 23:30:52 +02:00
Fildrance
56710697a9 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>
2025-04-10 20:42:53 +10:00
chromiumboy
7780b867ac Holopads (#32711)
* Initial resources commit

* Initial code commit

* Added additional resources

* Continuing to build holopad and telephone systems

* Added hologram shader

* Added hologram system and entity

* Holo calls now have a hologram of the user appear on them

* Initial implementation of holopads transmitting nearby chatter

* Added support for linking across multiple telephones/holopads/entities

* Fixed a bunch of bugs

* Tried simplifying holopad entity dependence, added support for mid-call user switching

* Replaced PVS expansion with manually networked sprite states

* Adjusted volume of ring tone

* Added machine board

* Minor features and tweaks

* Resolving merge conflict

* Recommit audio attributions

* Telephone chat adjustments

* Added support for AI interactions with holopads

* Building the holopad UI

* Holopad UI finished

* Further UI tweaks

* Station AI can hear local chatter when being projected from a holopad

* Minor bug fixes

* Added wire panels to holopads

* Basic broadcasting

* Start of emergency broadcasting code

* Fixing issues with broadcasting

* More work on emergency broadcasting

* Updated holopad visuals

* Added cooldown text to emergency broadcast and control lock out screen

* Code clean up

* Fixed issue with timing

* Broadcasting now requires command access

* Fixed some bugs

* Added multiple holopad prototypes with different ranges

* The AI no longer requires power to interact with holopads

* Fixed some additional issues

* Addressing more issues

* Added emote support for holograms

* Changed the broadcast lockout durations to their proper values

* Added AI vision wire to holopads

* Bug fixes

* AI vision and interaction wires can be added to the same wire panel

* Fixed error

* More bug fixes

* Fixed test fail

* Embellished the emergency call lock out window

* Holopads play borg sounds when speaking

* Borg and AI names are listed as the caller ID on the holopad

* Borg chassis can now be seen on holopad holograms

* Holopad returns to a machine frame when badly damaged

* Clarified some text

* Fix merge conflict

* Fixed merge conflict

* Fixing merge conflict

* Fixing merge conflict

* Fixing merge conflict

* Offset menu on open

* AI can alt click on holopads to activate the projector

* Bug fixes for intellicard interactions

* Fixed speech issue with intellicards

* The UI automatically opens for the AI when it alt-clicks on the holopad

* Simplified shader math

* Telephones will auto hang up 60 seconds after the last person on a call stops speaking

* Added better support for AI requests when multiple AI cores are on the station

* The call controls pop up for the AI when they accept a summons from a holopad

* Compatibility mode fix for the hologram shader

* Further shader fixes for compatibility mode

* File clean up

* More cleaning up

* Removed access requirements from quantum holopads so they can used by nukies

* The title of the holopad window now reflects the name of the device

* Linked telephones will lose their connection if both move out of range of each other
2024-12-17 20:18:15 +01:00
slarticodefast
577f30fb13 Add haloperidol, potassium iodide (#27454)
* add haloperidol, potassium iodide

* review fixes

* review and tuning

* shader review

* use timespan and AutoPausedField
2024-08-03 03:12:08 +10:00
slarticodefast
1283989346 Flash overlay rework and bugfixes (#27369) 2024-06-02 00:17:53 -04:00
Pieter-Jan Briers
2f7d0dedbd Displacement map prototype (#26709)
Requires https://github.com/space-wizards/RobustToolbox/pull/5023

This uses the new engine features (above) to add a displacement map shader. This allows deforming a sprite based on another sprite.

Primary use case is automatically adapting human clothing sprites to different species, something we want to make species like Vox a reality.

A basic example of wiring this up with Vox has been added. The system is however incredibly simple and **will** need more work by a content developer to select and toggle displacement maps when appropriate. I am leaving that to somebody else. For example right now the displacement map is applied even if a species already has custom-fit sprites for a piece of clothing, such as the grey jumpsuit for Vox.

Basic Aseprite plugins to help with authoring displacement maps have also been made.
2024-04-27 16:03:58 +10:00
deathride58
6901e930b5 Blindness hotfix (content side) (#23465)
* fixes major blindness issues like blindness not scaling with render res

* HEY. get outta there
2024-01-04 11:17:06 +11:00
deathride58
aa6645c8e9 Blindness rework - damaged eyes are now a stylized simulation of legal blindness (#23212)
* blindness rework - damaged eyes now simulate legal blindness

* hEY THATS FOR DEMONSTRATION PURPOSES ONLY AAA

* attributions

* makes eyeclosecomponent adminbus compatible

* useshader(null)
2024-01-03 01:07:02 -08:00
deathride58
ef1cba70b3 Shader cleanup - applies DRY to various shaders in the game (#23294)
shader cleanup - applies DRY to various shaders in the game
2024-01-03 19:35:25 +11:00
Tomás Alves
345b0e6305 Fix: Blindness radius when zooming (#23130)
* Fix Zoom while Blind

* Fix Zoom while Blind (ContentEyeComponent->EyeComponent)
2023-12-28 20:38:08 -05:00
deathride58
3addd3e32c fixes drug shader in compatibility mode FOR REAL THIS TIME (#22903)
fixes drug shader FOR REAL THIS TIME
2023-12-23 14:27:46 -08:00
deathride58
9870c7f9eb Fixes GLES2 crashing when compiling the drug shader (#22899)
fixes drug shader not compiling in gles2 and also applies DRY
2023-12-24 05:36:56 +11:00
deathride58
e61b7d105c Drug overlay shader rework - a little more motion-sickness friendly, a little less shonky (#22872)
* reworks the drug overlay effect to be less motion-sickness inducing and a bit less shonky

* UNAUTHORIZED fucking THING. DESTROY it immediately

* further tweaks - adds another gradient to control the color effect too
2023-12-23 00:35:46 -05:00
metalgearsloth
816ee2e1ab Gateway destinations (#21040)
* Gateway generation

* Gateway stuff

* gatewehs

* mercenaries

* play area

* Range fixes and tweaks

* weh

* Gateway UI polish

* Lots of fixes

* Knock some items off

* Fix dungeon spawning

Realistically we should probably be using a salvage job.

* wahwah

* wehvs

* expression

* weh

* eee

* a

* a

* WEH

* frfr

* Gatwey

* Fix gateway windows

* Fix gateway windows

* a

* a

* Better layer masking

* a

* a

* Noise fixes

* a

* Fix fractal calculations

* a

* More fixes

* Fixes

* Add layers back in

* Fixes

* namespaces and ftl

* Other TODO

* Fix distance

* Cleanup

* Fix test
2023-11-14 19:23:40 -07:00
deathride58
136e895f83 Further interaction outline tweaks (tonemap rework) (#19898) 2023-09-27 19:22:32 +10:00
metalgearsloth
cf6b760910 Fix shader 2.0 (#19699) 2023-09-01 00:31:26 +10:00
metalgearsloth
e0f0879fce Fix shader precision (#19695) 2023-08-31 23:26:39 +10:00
Leon Friedrich
102c6a441c Tweak outline changes (#18599) 2023-08-30 21:23:36 -04:00
metalgearsloth
460ecebbe4 Make shader bool constant (#19660) 2023-08-30 22:28:59 +10:00
metalgearsloth
cae574cbda Add tile entity occlusion (#14626) 2023-08-30 12:32:35 +10:00
Moony
3b7a23bde4 Update paperstamp.swsl (#19114)
blorg
2023-08-14 02:04:07 -06:00
eoineoineoin
4ccc8a04be Improve paper stamping experience (#17135) 2023-08-13 14:28:10 -04:00
deathride58
ce3299c49f single line fix to fix GLES2 (#18587) 2023-08-02 18:13:07 -05:00
deathride58
2db1c1600f Light-reactive interaction outlines (#18343) 2023-08-02 20:07:12 +10:00
Leon Friedrich
84299cae63 Blindness refactor (#15705)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-04-29 15:32:14 +10:00
Moony
c3dcc7a124 Flash now flashes black instead of white. (#14642) 2023-03-14 16:37:21 +11:00
Leon Friedrich
436131e9f4 Fix compat mode stealth shader (#11833) 2022-10-11 11:55:19 +11:00
keronshb
386c7f9223 Cardboard Box and Stealth Components (#11569) 2022-10-10 09:17:53 +11:00
Nemanja
512e96eed4 new eye damage effect (#10728) 2022-08-20 15:17:58 -05:00
Rane
572a4f7fb3 Eye damage (#10262) 2022-08-13 22:59:14 -07:00
Rane
83c03b60a1 [2 lines] fix blinding (#9690)
* Adds blinding + blindfolds (#8688)

* Adds blinding + blindfolds

* Don't break examining lol

* moment

* fix toggle lights behavior

* move checks around

* Sloth review

* Added a salvage funny

* review

* woops

* Switch circle shader

Co-authored-by: wrexbe <wrexbe@protonmail.com>

* resolve merge conflict

Co-authored-by: wrexbe <wrexbe@protonmail.com>
2022-07-14 06:58:24 -05:00
Moony
a655891a8d Revert "Adds blinding + blindfolds (#8688)" (#9689)
This reverts commit 7a7ab5e8c1.
2022-07-13 16:50:35 -05:00
Rane
7a7ab5e8c1 Adds blinding + blindfolds (#8688)
* Adds blinding + blindfolds

* Don't break examining lol

* moment

* fix toggle lights behavior

* move checks around

* Sloth review

* Added a salvage funny

* review

* woops

* Switch circle shader

Co-authored-by: wrexbe <wrexbe@protonmail.com>
2022-07-11 22:55:04 -07:00
metalgearsloth
a2a5df1990 Damage masks (#9402) 2022-07-06 17:58:14 +10:00
Leon Friedrich
0954efa6ed Fix compatibility mode drunk shader (#9053) 2022-06-22 23:20:39 -07:00
Leon Friedrich
c25f2e6283 Drunk Shader (#8910)
Co-authored-by: Kara D <lunarautomaton6@gmail.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-06-23 14:33:25 +10:00
Leon Friedrich
bf489adb91 Basic drug shader (#9033) 2022-06-23 14:33:07 +10:00
Flipp Syder
d4697c000c Surveillance cameras (#8246)
* cameras but i didn't feel like git stashing them

* Adds more functionality server-side for surveillance cameras

* rider moment

* Adds skeleton for SurveillanceCameraMonitorBoundUi on client

* whoops

* makes surveillance camera monitor UI more defined

* removes tree from SurveillanceCameraMonitorWindow

* surveillance camera active flag, other routing things

* actually sets how SurveillanceCameraMonitorSystem sends camera info to clients

* adds entity yaml, changes field

* adds the camera/monitor entities, makes the UI open

* SurveillanceCameraRouters (not implemented fully)

* subnets for cameras, server-side

* it works!

* fixes rotation in cameras

* whoops

restores surveillance cameras to ignored components
makes it so that switching cameras now lerps the other camera

* makes the UI work

* makes it so that cameras actually refresh now

* cleanup

* adds camera.rsi

* cleans up prototypes a bit

* adds camera subnet frequencies, cameras in subnets

* adds surveillance camera router subnets

* might fix testing errors

* adds the circuit board to the surveillance camera monitor

* fixes up the camera monitor (the detective will get his tv soon)

* adds heartbeat, ensures subnet data is passed into cameras to send

* fixes up a few things

* whoops

* changes to UI internals

* fixes subnet selection issue

* localized strings for UI

* changes 'test' id to 'camera' for cameras

* whoops

* missing s

* camera static!

* adds a delay to camera switching

* adjusts a few things in camera timing

* adds setup for cameras/routers, localization for frequency names

* adds setup ui for routers, makes subnet names in monitor window follow frequency name in prototype

* localization, some cleanup

* ui adjustments

* adds surveillance camera visuals

* fixes a bug when closing the UI for monitors

* adds disconnect message to UI

* adds construction graph to cameras

* adds the camera to the construction menu

* fixes network selection for setup, tweak to assembly

* adds surveillance camera router construction, fixes up surveillance camera wire cutting

* adds disconnect button to monitor UI

* switches around the status text

* tweaks monitor UI

* makes the address actually show

* might make tests pass

* UI adjustments, hard name limit

* ok, that didn't work

* adds wireless cameras

* makes the television work/look nicer

* adds tripod cameras in addition to mobile cameras

* makes wireless cameras constructable

* fixes up those prototypes

* reorganization in C#, small cleanup

* ensures that power changes deactivate some devices

* adds a component to the television, comments out a function

* actually, never mind, i forgot that wireless cameras existed/are creatable for a second

* tweaks to router construction, removes SubnetTest from prototypes

* removes it from frequencies too

* Apply suggestions from code review

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

* type serializers into components

* setup window opens centered, enum is now byte

* replaces active monitor list with ActiveSurveillanceCameraMonitorComponent

* adds paused/deleted entity checks, changes how verbs are given

* removes EntitySystem.Get<T>() references

* fixes bug related to selecting network from setup, alphabet-orders network listing in setup

* rider moment

* adds minwidth to surveillance camera setup window

* addresses reviews

* should fix the issue with camera visuals not updating properly

* addresses some reviews

* addresses further review

* addresses reviews related to RSIs

* never needed a key there anyways

* changes a few things with routers to ensure that they're active

* whoops

* ensurecomp over addcomp

* whoops

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-05-31 18:44:57 +10:00
Leon Friedrich
79204b0052 Fix compatibility mode singularity shader (#7856) 2022-04-29 15:45:05 +02:00
Leon Friedrich
8fb48a09ef Improve singularity shader (#7647)
* Working example

* vector arrays

* simplify math

* max distance

* max distance

* PVS override

* rename count
2022-04-28 22:43:16 +10:00
Pieter-Jan Briers
057a9ea4f3 Fix radiation shader not working on GLES2. 2022-01-30 20:20:45 +01:00
E F R
e0d58f1eb3 Shaders/radiation: Maybe fix some weird graphical effects on some Intel graphics chipsets (#5648) 2021-12-02 02:09:42 +01:00
E F R
eff00bd57a Shaders/radiation: cOuLd NoT iMpLiCiTlY cOnVeRt OpErAnDs (#5645) 2021-12-01 13:43:06 -07:00
E F R
9216d279af Events/RadiationStorm: Fancy radiation shader & SFX (#5612) 2021-12-01 13:21:17 -07:00
20kdc
6a78c401bf Singularity Fixes, Part 3 (#4105)
* Hopefully make singularity shader warping resolution-invariant

This may or may not fix intensity issues

* Fix singularity 'zero velocity' check

It got stuck in a corner. Twice. I really thought I'd fixed that.

* Make it easier to move around various power stuff by shrinking their AABBs a little and making singulo generator a circle

* Changes to some machine prototypes to reduce duplication of collision changes (#1)

* Changes to some machine prototypes to reduce duplication of collision changes

* BaseMachine.BaseMachineUnpowered -> BaseMachine.BaseMachinePowered
2021-06-03 00:55:50 -07:00