Commit Graph

577 Commits

Author SHA1 Message Date
Pieter-Jan Briers a0bceb5c97
Various item status fixes/tweaks (#27267)
* Always display item status panel fully

Initial feedback from the UI changes seems to be that a lot of people go "why is there empty space" so let's fix that.

* Fix item status middle hand being on the wrong side

I think I switched this around when fixing the left/right being inverted in the UI code.

* Minor status panel UI tweaks

Bottom-align contents now that the panel itself doesn't dynamically expand, prevent weird gaps.

Clip contents for panel

* Fix clipping on implanters and network configurators.

Made them take less space. For implanters the name has to be cut off, which I did by adding a new ClipControl to achieve that in rich text.

* Update visibility of item status panels based on whether you have hands at all.

This avoids UI for borgs looking silly.

Added a new "HandUILocation" enum that doesn't have middle hands to avoid confusion in UI code.

* Use BulletRender for laser guns too.

Provides all the benefits like fixing layout overflow and allowing multi-line stuff. Looks great now.

This involved generalizing BulletRender a bit so it can be used for not-just-bullets.

* Fix geiger word wrapping if you're really fucked

(cherry picked from commit 7b90c08a2c7315b2c5a6cb17dfd82a5ac9863a53)
2024-05-03 00:01:56 +02:00
DrSmugleaf fd40a7a33a
Add events for custom action target validation (#27230)
(cherry picked from commit b0e6ff67793723f1fd23e62eccde731d8aec5f4c)
2024-05-02 23:52:51 +02:00
Pieter-Jan Briers 176e9b0a81
THE RETURN OF ITEM STATUS (#22986)
* THE RETURN OF ITEM STATUS

Item status is now inline with the hands again. You can now see item status for both hands at once.

If you have more than 2 hands, the last active hand of that side is displayed in the respective item status.

The item status for the active hand is also highlighted.

Item status has been given a new look so it looks unique and matches every UI theme.

* Shrink item status to 125px

This is going to require fixing the existing controls. Do that later.

* New bullet item status rendering

sex

* Make gun item status look just a little bit nicer.

Avoid only one or two bullets ending up on a single row of an item status.

* Delete Eris theme files

* More improvements

Fixed the fact that left/right were flipped around when assigning status panel locations. Involved renaming all the UI textures.

Redid how content margins are set from the theme. Less complex and cleaner now.

Made the item name always left-aligned, just looks better since other UI elements don't adapt anyways.

* Compact down item status text

Now it fits 3 lines of text on one line. Yay.

This is achieved by compacting RichTextLabels by reducing their line height and giving them a negative bottom margin.

* Add item status sprites for Ashen theme.

* Add status control to show beaker/bucket/jug solution/transfer volumes

Also PollingItemStatusControl I'll be using that more.

* Fix welder item status, clean up welder code

The item status control implementation was ancient and bad. That's why it was buggy.

Removed all the complex dated networking stuff for welders, we just sync the solution contents now anyways so none of that is needed anymore. This moves a buncha stuff to shared and just removes code.

Cleanup. The code was doing some really dumb stuff.

* Spray bottles show contents in item status.

* cowtools

* Fix plasmafire and clockwork themes.

Actual git gaslighting wtf.

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>

(cherry picked from commit 58f025ba8043bcf5c32204b08eec8ae9e5d2bd41)
2024-04-21 23:41:08 +02:00
deathride58 13af11e3db
Adds the option to fit the viewport to vertical screenspace (#27061)
* Adds the option to fit your viewport to your vertical screenspace

* fixes documentation

* Removes commented-out leftover

* Hides the viewport width slider and also we dont know if the viewport width causing stretching/squishing was a bug present before but we fixed that while we were at it

* Removes commented out leftovers

(cherry picked from commit 396c6133664de50f8d85133b3680292fa1b95be0)
2024-04-21 23:32:41 +02:00
Nemanja 1d00da85fd
make filled inventory slots blank (#27150)
* blank filled slots

* Update InventoryTemplatePrototype.cs

(cherry picked from commit e5a5196b1f5cba8e0f05c374b2b7c58eea6f7361)
2024-04-21 23:21:54 +02:00
Sk1tch f269ccc099
Added chat window transparency slider to options (#24990)
* Adds a new slider to the misc tab in options that lets the player set chat window transparency

* Tweaked variable names

* Fixed order to match UI

* Renamed set chat window transparency function

* Changed and refactored to opacity instead of transparency

* Remove unnecessary int to float conversions

Slider used to be 0-100 while the CCVar was 0.0-1.0f. This is confusing and was only used for rounding to 2 decimal points.

* Round the value to two decimal points

* Remove rounding for now

* Rename

* Unhardcode chat color by moving to stylesheet

* Fix indent

* Make opacity slider only change opacity

---------

Co-authored-by: Your Name <you@example.com>
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit bc31c193c25b297179e0de2bf54c2623fbeeebe0)
2024-04-07 14:28:59 +02:00
eoineoineoin afb70a74dc
Fix some text overflow bugs in HUD (#26615)
* Don't clip text in item status

* Fix overflow in examine tooltip

---------

Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
(cherry picked from commit 9b08c2c908e344e3356c7cb4bd75efca0adae2e4)
2024-04-07 14:23:26 +02:00
chromiumboy 7f158f2e5f
Improved RCDs (#22799)
* Initial radial menu prototyping for the RCD

* Radial UI buttons can send messages to the server

* Beginning to update RCDSystem

* RCD building system in progress

* Further updates

* Added extra effects, RCDSystem now reads RCD prototype data

* Replacing tiles is instant, multiple constructions are allowed, deconstruction is broken

* Added extra functionality to RadialContainers plus documentation

* Fixed localization of RCD UI strings

* Menu opens near cursor, added basic RCD

* Avoiding merge conflict

* Implemented atomized construction / deconstruction rules

* Increased RCD ammo base charges

* Moved input context definition to content

* Removed obsoleted code

* Updates to system

* Switch machine and computer frames for electrical cabling

* Added construction ghosts

* Fixed issue with keybind detection code

* Fixed RCD construction ghost mispredications

* Code clean up

* Updated deconstruction effects

* RCDs effects don't rotate

* Code clean up

* Balancing for ammo counts

* Code clean up

* Added missing localized strings

* More clean up

* Made directional window handling more robust

* Added documentation to radial menus and made them no longer dependent on Content

* Made radial containers more robust

* Further robustness to the radial menu

* The RCD submenu buttons are only shown when the destination layer has at least one children

* Expanded upon deconstructing plus construction balance

* Fixed line endings

* Updated list of RCD deconstructable entities. Now needs a component to deconstruct instead of a tag

* Bug fixes

* Revert unnecessary change

* Updated RCD strings

* Fixed bug

* More fixes

* Deconstructed tiles/subflooring convert to lattice instead

* Fixed failed tests (Linux doesn't like invalid spritespecifer paths)

* Fixing merge conflict

* Updated airlock assembly

* Fixing merge conflict

* Fixing merge conflict

* More fixing...

* Removed erroneous project file change

* Fixed string handling issue

* Trying to fix merge conflict

* Still fixing merge conflicts

* Balancing

* Hidden RCD construction ghosts when in 'build' mode

* Fixing merge conflict

* Implemented requested changes (Part 1)

* Added more requested changes

* Fix for failed test. Removed sussy null suppression

* Made requested changes - custom construction ghost system was replaced

* Fixing merge conflict

* Fixed merge conflict

* Fixed bug in RCD construction ghost validation

* Fixing merge conflict

* Merge conflict fixed

* Made required update

* Removed lingering RCD deconstruct tag

* Fixing merge conflict

* Merge conflict fixed

* Made requested changes

* Bug fixes and balancing

* Made string names more consistent

* Can no longer stack catwalks

(cherry picked from commit 02273ca0e7a4091bac88e585ecca5253dd0e7fd7)
2024-04-07 14:19:42 +02:00
Nemanja e2ddce9938
dynamic alert sprites (#25452)
* dynamic alert sprite

* fix fat cooldowns

(cherry picked from commit d576f5cbbb3969d1399a25b9692c16b63bbf2a46)
2024-04-07 14:09:54 +02:00
deltanedas 76199f9ff0
biggest gridinv update OF ALL TIME (#25834)
* add SaveItemLocation keybind

* make item direction public to avoid having to change between Angle for no reason

* add item location saving

* show

* Added a better save keybind, made it draw saved positions, and trying to save in a position it has already been saved in removes that position.

* w

* code style

* Make taken spots appear blue

* style

* !

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: notquitehadouken <tripwiregamer@gmail.com>
Co-authored-by: I.K <45953835+notquitehadouken@users.noreply.github.com>
(cherry picked from commit 6863a7cc26f815ec9089003e8735777cea927d0f)
2024-04-07 14:08:49 +02:00
Wrexbe (Josh) 998bc5af12
Fix crash on load when no slot key assigned (#26354)
Co-authored-by: wrexbe <wrexbe@protonmail.com>
(cherry picked from commit e69723153dc571e1461c99ac5c7d82a1992e011d)
2024-03-24 00:14:01 +01:00
LordCarve f8ea31a192
Obsolete `Logger` cleanup for `EntitySystem`s part 2 (#26159)
* Kill the static InRangeUnOccluded

* Adjusted 4 more EntitySystems that were missed.

(cherry picked from commit 7d275a4b5e4188db424cc417c609dced3f9aca89)
2024-03-17 15:11:33 +01:00
Nemanja 8950fd6a0f
Add a toggle for colorblind friendly progress bar colors (#25318)
* Add a toggle for progress bar colors

* yeah this thing

* PJB review

* optimization

(cherry picked from commit f3f4616c49317898aeeff304160b0b50df9ee851)
2024-03-17 14:46:26 +01:00
metalgearsloth 772218ab65
Fix shuttle console UI scaling (#25807)
(cherry picked from commit b7ccf738883b486364b10b272ce4c9fef3ad6261)
2024-03-08 12:54:54 +01:00
metalgearsloth f102e8ff75
Shuttle console + FTL rework (#24430)
* Add shuttle interior drawing back

Just do it per-tile she'll be right, at least it's done with 1 draw call.

* Revamp shuttle console

* Bunch of cleanup work

* Lables sortito

* dok

* Pixel alignment and colours

* Fix a bunch of drawing bugs

* Shuttle map drawing

* Drawing fixes

* Map parallax working finally

* weh

* Commit all my stuff

* mic

* deez

* Update everything

* Xamlify everything

* uh

* Rudimentary blocker range

* My enemies have succeeded

* Bunch of changes to FTL

* Heaps of cleanup

* Fix FTL bugs

* FTL

* weewoo

* FTL fallback

* wew

* weh

* Basic FTL working

* FTL working

* FTL destination fixes

* a

* Exclusion zones

* Fix drawing / FTL

* Beacons working

* Coordinates drawing

* Fix unknown map names

* Dorks beginning

* State + docking cleanup start

* Basic dock drawing

* Bunch of drawing fixes

* Batching / color fixes

* Cleanup and beacons support

* weh

* weh

* Begin pings

* First draft at map objects

* Map fixup

* Faster drawing

* Fix perf + FTL

* Cached drawing

* Fix drawing

* Best I got

* strips

* Back to lists but with caching

* Final optimisation

* Fix dock bounds

* Docking work

* stinker

* kobolds

* Btns

* Docking vis working

* Fix docking pre-vis

* canasses

* Helldivers 2

* a

* Array life

* Fix

* Fix TODOs

* liltenhead feature club

* dorking

* Merge artifacts

* Last-minute touchup

(cherry picked from commit c5486873db0d6826122eb1f30007e392fc101082)
2024-03-08 12:54:53 +01:00
exincore a66dc10cf0
feat(inventory): Add secondary smart-equip star (#25696)
* feat(inventory): Add secondary quick-remove star

* style: Fix end of file newline

* feat(inventory): Change secondary smart-equip star to silver star

* feat(inventory): Decrease secondary quick-equip star luminosity to better match the primary

(cherry picked from commit c8cc806a8fed7de92db48f4f066f63d5464502d1)
2024-03-07 01:18:38 +01:00
Errant 63e45f9532
Alerts for breathing plasma/tritium (#24484)
* Alert autoremove v0

* Code cleanup and timing

* comment

* Tritium, code compression

* not resolving manually

* reduced lookups, new comp

* fix-fix yes

* use RemCompDeferred, handle OnUnpaused

* missed a todo

* entitysystem resolve

* remove unnecessary component updates

* remove AlertState from comp, move EntityUnpausedEvent actions to AlertStateComponent's Timespan

* Code cleanup

* comments

* combines AutoRemove input into Clear

* minor logic adjustment that does not really change anything but is less ambiguous

(cherry picked from commit ecd2d5a644540c6ad28903ee4fb2af87876e3030)
2024-03-07 01:17:31 +01:00
Debug c6bd89ce76
Revert "Fix chat bubbles (#25643)"
This reverts commit a074c30a52.
2024-03-07 01:03:46 +01:00
metalgearsloth a074c30a52
Fix chat bubbles (#25643)
Dependencies got misused

(cherry picked from commit 23d2c4d924efbae39f1b6677f1e495f55e3d75a2)
2024-03-07 01:02:59 +01:00
Julian Giebel c9f4910cb9
News UI overhaul and PDA notifications (#19610)
(cherry picked from commit 0752acdc2ca2db43581e2c0d95a5d96041247bc9)
2024-03-07 01:02:24 +01:00
Krunklehorn 17af37f8bc
Fix grid inventory pick/drop rotation (#25510)
OnPiecePressed

(cherry picked from commit 7d6e4b164d6013257423afe02b3f06447e37bec3)
2024-03-07 00:53:11 +01:00
dffdff2423 6757f63a90
Add option for admins to disable bwoink (#25008)
* Add option for admins to disable bwoink

In a vain attempt to get people to ahelp more, provide the possibility
for admins to not play the bwoink sound if they don't want to scare the
player.

* Add silent indicator to discord relay

* Use string interpolation

(cherry picked from commit a3c93b0bd7478c0f75daaa2f7d0bd8b88565b27e)
2024-03-05 09:43:40 +01:00
Pieter-Jan Briers ccea85136b
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>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
SlamBamActionman 6991618a45
Add option for character name colors in chat & move coloration to clientside (#24625)
* Adds option to disable character names in chat/speechbubbles

* Moved the coloring of names to clientside

* Move string functions to SharedChatSystem to avoid duplicate code in SpeechBubble.cs

* Changed to be put under Accessibility section

* Cache CVar

(cherry picked from commit 247be5b5c770261544f4e468ea09422efb0f7028)
2024-02-18 22:52:19 +01:00
Nemanja 1efd153b83
prevent opening debug menus without perms (#25091)
prevent people without permissions from opening the tile, entityspawn, or decal menus

(cherry picked from commit 2293f46bcac38c73a212fc34ee77d2839cd8558b)
2024-02-18 22:38:55 +01:00
deltanedas 215d861bb8
make dialog window not evil (#24677)
* add Placeholder and make default buttons flags consistent w old behaviour

* DialogWindow ops

* make QuickDialog use DialogWindow

* Update Content.Client/UserInterface/Controls/DialogWindow.xaml

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
(cherry picked from commit 6b03aaaec78bd50c8f4730c9aa7d0f5cea76e782)
2024-02-08 12:21:02 +01:00
Nemanja fea640584d
make newchat box more opaque (#24555)
(cherry picked from commit 6605b7ba5023c01f3ac590bfda089e0291bbb7f9)
2024-01-28 00:27:31 +01:00
Kevin Zheng 1ab0ed77f6
Wrap objective briefing text (#24244)
(cherry picked from commit 0d53dad58ac5efc8d6cbd76a5e43eae7450ea25d)
2024-01-26 23:05:38 +01:00
Psychpsyo e439d50479
Plates & Cash gridinv visuals (#24075)
(cherry picked from commit a747e6dda407cc93f8184be0712941606b19263e)
2024-01-26 22:50:12 +01:00
AJCM-git 9a6fa17e72
Virtual items cleanup (#23912)
* Virtual items cleanup

* Detail

* Review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 108f001731b9394f98d9ef712b9b777e5b3f8abc)
2024-01-26 22:49:14 +01:00
DrSmugleaf c0edcf330c
Fix error when switching to a screen without an inventory gui widget (#24059)
(cherry picked from commit 6a7f1b2f1f52a8f88f8770a4c695292e5bebedff)
2024-01-26 22:37:14 +01:00
Crotalus 43de08bff3
Added search bar to warp points (#23978)
(cherry picked from commit 668d0eca2276b731730af930024ae66ccfdda11e)
2024-01-26 22:33:43 +01:00
metalgearsloth dcc2baa5a5
Fix objects tab not showing nents (#23837)
* Fix objects tab not showing nents

* Fix everything

(cherry picked from commit 11701215322efe6e03c84a99645e60c766f0e2bb)
2024-01-26 22:22:36 +01:00
metalgearsloth 404ac576b8
Fix storagecomp serialization (#23780)
* Fix storagecomp serialization

* Fix state

(cherry picked from commit b22c9aa5e265994f87c9a3f41a95e0aef611b61d)
2024-01-26 22:17:53 +01:00
themias 9ba3f62cec
fix use delay cooldown visual bug (#23532)
(cherry picked from commit edd85a5d2d8848fcbb5d5f60d505abe0164b10c1)
2024-01-26 21:39:31 +01:00
AJCM-git 6b7e8b4f5b
UseDelay + ItemCooldown merge (#22502)
(cherry picked from commit 9c522c8b19f7a6f6b396c66342413572a22d7845)
2024-01-26 21:32:09 +01:00
Kot 5846fe3931
Fix chat size cvar serialization (#23005)
(cherry picked from commit 3d955677c53c929d95f4ef4a39a9b4415a11afd7)
2024-01-22 21:00:52 +01:00
metalgearsloth 6cfbdc6a4e
Add UI click sounds (#22410)
* Add UI click sounds

* tweaks

* Significant cleanup

* Audio options and numerous fixes

* Fix the remaining UI elements

* new click sound

---------

Co-authored-by: Kara <lunarautomaton6@gmail.com>
(cherry picked from commit 4023134cf0536d36dd1d685189e8b1ee6c004d81)
2024-01-22 20:59:16 +01:00
Nemanja 21dce7d10b
Better hover coloring for inventory (#23148)
(cherry picked from commit a4d36d408dcd3fa867d9254f734ca95a54a0e9a3)
2024-01-22 19:01:06 +01:00
Leon Friedrich f3e61795f4
Add some tests and fix some miscellaneous bugs (#22836)
* Add some tests and fix some bugs

* Add more helper methods

* remove submodule

* fix merge

* also fix DirtyAll()

* poke

(cherry picked from commit 35ba42af9ccbbe41e8a3e59b30f2799ef8ca4b8d)
2024-01-22 18:44:30 +01:00
Nemanja 1fa68eefb0
Ion law visuals (#22908)
(cherry picked from commit 681f9a2c852033949f0b984f9f3b711c52e4cfdf)
2024-01-22 18:29:23 +01:00
Nemanja 21548d9cf8
Corner Clothing UI (#22883)
* Corner clothing (save point)

* IT WORKS. YIPPEE

* the last of it

* template rejigs

(cherry picked from commit 9b18357a882d6a9e3dfb3b4fccaa42f65238c9f0)
2024-01-22 18:24:28 +01:00
Debug 18f0af1f68
Implement gridinv, proper (#703)
* Implement gridinv, 1500 squashed commits :elp:

* Me when

* Linter errors

* Fix katana belts
2024-01-21 19:58:28 +01:00
LordCarve 2dc6a192ae Use different chatbox placeholder when dependent keys unbound (#22747) 2023-12-22 23:25:35 +01:00
Leon Friedrich 8494bd0885 Use ECS prototype-reload events (#22613)
* Use ECS prototype-reload events

* better constructors

* Maybe this fixes tests?
2023-12-22 23:25:35 +01:00
Kara 86af7b732d Fix glorfcode for real (#22838)
Fix glorfcode
2023-12-22 23:25:04 +01:00
DrSmugleaf 0c745cd168 Fix right click not showing the context menu in AHelps, players tab and objects tab (#22798)
* Fix right clicks in AHelp window

* Fix player tab right click

* Fix objects tab right click
2023-12-22 23:15:11 +01:00
qwerltaz 8e25e7a1f4 Improve gas analyzer interface (#22779) 2023-12-22 23:04:49 +01:00
keronshb 6a155a52ce Action Upgrade System (#22277)
* Adds uses before delay so actions can be used multiple times before cooldown

* adds methods to get remaining charges, to set uses before delay, and to set use delay

* adds method to change action name

* moves set usedelay

* action upgrade ECS

* adds method to reset remaining uses

* adds upgrade events

* refactors action upgrade event and adds logic to parse it

* fix serialization issue

* adds level up draft method

* adds action commands and a command to upgrade an action

* more warning lines to help

* Gets action to upgrade properly

* Removes unneeded fields from the action upgrade component and now properly raises the level of the new action

* Cleans up dead code and comments

* Fixes punctuation in actions-commands and adds a TryUpgradeAction method.

* removes TODO comment

* robust fix

* removes RT

* readds RT

* update RT to 190

* removes change name method

* removes remaining uses & related fields and adds that functionality to charges

* Adds Charges to action tooltips that require it
2023-12-16 20:24:54 +01:00
DrSmugleaf 41dc1299d5 Add ahelp bwoink sound cvar (#22439) 2023-12-16 20:16:24 +01:00