Commit Graph

631 Commits

Author SHA1 Message Date
Galactic Chimp 392b820796
Removed old Loc.GetString() use instances (#4155)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-06-21 02:13:54 +02:00
Vera Aguilera Puerto a2b737d945
Atmos pipe rework (#3833)
* Initial

* Cleanup a bunch of things

* some changes dunno

* RequireAnchored

* a

* stuff

* more work

* Lots of progress

* delete pipe visualizer

* a

* b

* pipenet and pipenode cleanup

* Fixes

* Adds GasValve

* Adds GasMiner

* Fix stuff, maybe?

* More fixes

* Ignored components on the client

* Adds thermomachine behavior, change a bunch of stuff

* Remove Anchored

* some work, but it's shitcode

* significantly more ECS

* ECS AtmosDevices

* Cleanup

* fix appearance

* when the pipe direction is sus

* Gas tanks and canisters

* pipe anchoring and stuff

* coding is my passion

* Unsafe pipes take longer to unanchor

* turns out we're no longer using eris canisters

* Gas canister inserted tank appearance, improvements

* Work on a bunch of appearances

* Scrubber appearance

* Reorganize AtmosphereSystem.Piping into a bunch of different systems

* Appearance for vent/scrubber/pump turns off when leaving atmosphere

* ThermoMachine appearance

* Cleanup gas tanks

* Remove passive gate unused imports

* remove old canister UI functionality

* PipeNode environment air, make everything use AssumeAir instead of merging manually

* a

* Reorganize atmos to follow new structure

* ?????

* Canister UI, restructure client

* Restructure shared

* Fix build tho

* listen, at least the canister UI works entirely...

* fix build : )

* Atmos device prototypes have names and descriptions

* gas canister ui slider doesn't jitter

* trinary prototypes

* sprite for miners

* ignore components

* fix YAML

* Fix port system doing useless thing

* Fix build

* fix thinking moment

* fix build again because

* canister direction

* pipenode is a word

* GasTank Air will throw on invalid states

* fix build....

* Unhardcode volume pump thresholds

* Volume pump and filter take time into account

* Rename Join/Leave atmosphere events to AtmosDeviceEnabled/Disabled Event

* Gas tank node volume is set by initial mixtuer

* I love node container
2021-06-19 13:25:05 +02:00
DrSmugleaf ff1a2d97ea
Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00
ShadowCommander 3af9c334ea
Stop ItemStatus from spamming measure
ItemStatus set Label.Text in Update which caused measure and arrange to be invalidated
every update.
2021-06-05 01:33:30 -07:00
Pieter-Jan Briers 4903c3bbc6 Remove usages of client IPlayerSession from content. 2021-05-13 01:18:09 +02:00
Pieter-Jan Briers d796dcfcca
Multi-window input handling. (#3911) 2021-05-02 20:48:00 +02:00
ike709 055059ab5c
Chairbender Chat (#3794)
* #272 restructure and restyle chat line edit section

* #272 no arrow, actually change id on channel changer

* #272 nice round chat channel picker

* #272 add chat channel selection logic, and auto-select
when a prefix is entered

* #272 consistent width of chat channel btn

* #272 only show admin channel filter if asay perms

* #272 add tutorial info on chat prefixes

* #272 added chat filter button

* #272 added chat filter button

* #272 WIP on filter popup

* #272 fix filter popup pressed / unpressed logic

* #272 fix filter popup positioning and layout

* #272 WIP channel filter logic

* #272 WIP channel filter logic

* #272 WIP refactoring how chatbox / manager manages available filters and channels to send on

* #272 WIP implementing filtering UI / logic
and refactoring how chat UI is managed

* #272 fix various bugs with new chat filter / selector logic

* #272 remove outdated todos

* #272 WIP working chat window resize

* #272 bounded chatbox resizing

* #272 alertUI moves with resized chat

* #272 WIP making alertUI not be too large when changing size / UIScale

* #272 WIP fixing window / uiscale adjustment

* #272 WIP hacky approach for resizing, will try another approach

* #272 implement hacky approach for bounded chat resize

* #272 no resizing of lobby chat

* #272 WIP adding unread marker to chat filters

* #272 basic working unread chat message indicators

* #272 WIP adding horizontal channel selector items

* #272 horizontal channel selector popup

* #272 workaround for chat selector staying highlighted when right clicking it while toggled

* #272 workaround for chat selector staying highlighted when right clicking it while toggled

* #272 wip trying to add tests for chatbox

* #272 remove test, not really possible with current system

* #272 merge latest

* #272 merge latest

* #272 fix csproj changes

* It works if you disable the lobby

* Fixes lobby chat

* Adds more channel focusses

* Channel cycler

* Address review

* Address nitpicks

* Address more of the review

* Fix chat post-viewport

* Finalize review stuff

Co-authored-by: chairbender <kwhipke1@gmail.com>
Co-authored-by: ike709 <sparebytes@protonmail.com>
2021-04-20 16:39:39 -07:00
Pieter-Jan Briers 147a54c642
Viewport improvements (#3765) 2021-04-19 09:52:40 +02:00
ike709 69dbb9f654
HUD Themes (#3774)
* HUD Themes

* Prototypes

* field

* oops

* ugh

* Fixes

* Update Content.Client/UserInterface/GameHud.cs

Co-authored-by: ike709 <sparebytes@protonmail.com>
2021-04-12 00:43:53 +02:00
Vera Aguilera Puerto 2fac6b1089
Player list now lists antagonists. (#3826) 2021-04-10 22:24:50 -07:00
Pieter-Jan Briers d5d4f434c1
Merge pull request #3718 from SweptWasTaken/swepthud 2021-04-01 23:24:39 +02:00
metalgearsloth bd0d0ec512
Fix action item rotation (#3764)
Similar to how hands does it.
2021-03-31 12:10:56 +02:00
SweptWasTaken d8996c05b6 More tweaking 2021-03-28 16:39:33 -07:00
Pieter-Jan Briers fd1012d0d2 Hair style fixes.
Can color facial hair again.
Fix sort for hair styles to use name instead of ID.
2021-03-28 21:37:09 +02:00
Pieter-Jan Briers 0ac4c0e85c
SKREEEEEE (#3706)
* Import bird sprites and define basic mob.

* SKREEEEEEEEE

* Move hair styles to new sprite accessory prototypes.

Basic stuff, no multi-species stuff yet.

* Vox hair styles and clothes

* Make HumanoidCharacterProfile.Default() a static default to fix tests.

Usages that wanted the previous random behavior now call Random().

* Remove names from hair style prototypes.

(They're in localization files)

* Update Content.Shared/Actions/ActionType.cs

(sk)reeee github

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-03-28 17:26:32 +11:00
Acruid 3e7e44df29 Removed Control.Update, moved all update code to Control.FrameUpdate. UI controls have no business running code inside simulation Ticks. Because of how the update loop is ordered, this will actually make the UI elements more responsive to simulation changes.
Fixed multiple bugs in the action UI where the Control.Update method was calling the base Control.FrameUpdate.
2021-03-26 17:10:31 -07:00
SweptWasTaken 1a0b5fb742 HandsGUI uses correct sprites again 2021-03-26 10:55:41 -07:00
ike709 1d052d0410
Improves the HUD (#3655)
* All good except the combat doll

* Makes the HUD inventory less terrible

* Cleanup, nuke the Combat Mode button

* Harm icon

* Switch the icon

* Basic goon hud

* Toggleable

* Nuke the popup, properly centers it

* Fix clicking the button

* Nuke some old code

* missed a comment

* Remove defaults

* Localization

* Nuke some old yaml

* New sprites

Co-authored-by: ike709 <sparebytes@protonmail.com>
2021-03-27 02:23:12 +11:00
DrSmugleaf a5ade526b7
Enable nullability in Content.Server (#3685) 2021-03-16 15:50:20 +01:00
mirrorcult e4169ecf0d
Fix minsizes for all windows that needed it (#3648)
* fix minsizes

* fix scanner height, minsize->setsize for some
2021-03-15 09:38:08 +01:00
Pieter-Jan Briers 70e2648fa0 Verb icons now UI scale. 2021-03-14 14:40:14 +01:00
ike709 31f1cf9936
Adds lobby music (#3620)
* Adds lobby music

* Add UI toggle for lobby music

* Pick the song serverside so everyone gets the same song

* Add more songs

* Fixes

* Catch-all end lobby music

* Rename it

* Catchall ambience cvar change

* Wait until we receive the lobby song to start playing one

* Fix toggling ready status resetting the song

* Comment

* Expend the last of my sanity fixing latejoin lobby music

* Update Content.Client/GameObjects/EntitySystems/BackgroundAudioSystem.cs

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

* Update Content.Client/GameObjects/EntitySystems/BackgroundAudioSystem.cs

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

* Update Content.Client/GameObjects/EntitySystems/BackgroundAudioSystem.cs

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

* Move the var

Co-authored-by: ike709 <sparebytes@protonmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-03-12 23:40:28 +01:00
DrSmugleaf 902aa128c2
Enable nullability in Content.Client (#3257)
* Enable nullability in Content.Client

* Remove #nullable enable

* Merge fixes

* Remove Debug.Assert

* Merge fixes

* Fix build

* Fix build
2021-03-10 14:48:29 +01:00
DrSmugleaf f682833c8d
Make the client validate character information (#3563)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-03-08 13:07:53 +11:00
RemberBL 343f183b32
Character eye customization, scroll bar in appearance tab character setup. Fixes #2946 (#3403)
* A lot of unfinished work, trying to figure stuff out but it ain't really working

* The eye colors finally work on the sprite!

* Big refactor for HumanoidProfileEditor, crashes upon making a lobby

* Fixed Lobby crashing

* Moves the eye selection box to a new tab, which fixes selection the box from going off-screen and not expanding the bars

* uncommented something I shouldn't have commented out

* Moved eye colors back to the appearance tab, still some ui glitches

* Made it possible to scroll in the appearance tab

* Added "Eye color:" label

* Migrating some deprecated functions into their replacements

* Merged two private sealed classes into one public class, removing duplication
2021-03-07 20:48:24 +01:00
WlarusFromDaSpace 952a8e709a
Fixes a fatal error when opening the PA control computer interface. (#3478)
* Fixes a fatal crash when opening the PA control computer interface.

* Fix to make PA emitters work.

* Turned _pos and _afterUnderscore into local variables.

* Explicit states

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-03-04 19:38:43 +11:00
Pieter-Jan Briers 0db42c8018 Fix reset all keybinds button alignment. 2021-03-03 23:10:41 +01:00
Swept eeb5cadaa0
Adds server rules (#3475)
* Initial

* Removes all unneeded stuff

* Rules

* Applied review
2021-03-03 17:56:52 +11:00
Swept 45a09bc7ea
Nerfs cargos minimum starting balance (#3468)
* e

* Aight

* Done
2021-03-01 12:56:38 -08:00
AJCM-git 4228326826
Fix changelog new out of window (#3438) 2021-02-27 18:33:31 +01:00
Daniel Castro Razo f96839cb4c
Added a margin so the scrollbar doesn't overlap the entity's label in the context menu. (#3426) 2021-02-26 15:59:10 +11:00
Daniel Castro Razo f30a4d8a52
ContextMenu (#3286)
* ContextMenu

* Updating to WPF.

* Updating to WPF.

* Margins
2021-02-26 12:42:16 +11:00
AJCM-git d177f0fd07
Adds changelog button to the escape menu (#3421) 2021-02-25 23:44:48 +01:00
Pieter-Jan Briers bd71dfc555 Escape menu: localized. 2021-02-25 21:11:27 +01:00
Pieter-Jan Briers 454465694a Localize options menu. 2021-02-25 21:08:06 +01:00
Pieter-Jan Briers cca23f2812
Changelog. (#3398) 2021-02-25 09:50:45 +01:00
Remie Richards 85916b87b4
Fluent Localisation Fixes (#3344)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-02-22 01:07:46 +01:00
tmtmtl30 b314c3f040
Adds a very basic perpetual background ambient hum. (#3150) 2021-02-21 14:02:23 +01:00
Pieter-Jan Briers b898443f28
WPF layout (#3346) 2021-02-21 12:38:56 +01:00
DrSmugleaf 5667cffe95
Separate ghost warp message into two (#3310)
* Separate ghost warp message into two

* Remove redundant arguments

* Address reviews

* Move properties up
2021-02-19 19:29:34 +01:00
DrSmugleaf 65d1df4f0f
Fix the admin panel not showing the account name (#3322) 2021-02-19 19:27:06 +01:00
Leo 19ca611f5f
Improves kick, teleport and ban menus (#3312) 2021-02-19 19:26:34 +01:00
Leo 8640f342b5
Change all XAML to use spacestation14.io namespace (#3277) 2021-02-17 15:22:51 +01:00
Leo 48eea211bc
Converts AdminMenu to partially use XAML (#3231) 2021-02-17 13:39:31 +01:00
DrSmugleaf c435b5150d
Change character names to use datasets prototypes (#3259)
* Remove old name lists in .txts

* Fix tests

* LATEST MASTER TECHNOLOGY
2021-02-17 20:46:44 +11:00
DrSmugleaf 3c54c755ce
Remove some criminal if checks (#3261) 2021-02-16 20:14:21 +01:00
Pieter-Jan Briers cea87d6985
Voting (#3185)
* Basic voting

* Rewrite lobby in XAML.
Working lobby voting.

* Escape menu is now XAML.

* Vote menu works, custom votes, gamemode votes.

* Vote timeouts & administration.

Basically done now.

* I will now pretend I was never planning to code voting hotkeys.

* Make vote call UI a bit... funny.

* Fix exception on round restart.

* Fix some vote command definitions.
2021-02-17 01:07:17 +11:00
DrSmugleaf cf7ac025b4
Fix the admin panel only listing your character name (#3229) 2021-02-16 09:11:15 +01:00
DrSmugleaf 17a224ad2c
Fix being able to teleport with the ghost warp menu while alive (#3246) 2021-02-16 01:55:09 +01:00
DrSmugleaf ab56f7dc92
Add banning to the admin panel (#3191)
* Add banning to the admin panel

* Added response to ban command
2021-02-14 16:05:02 +01:00
Vera Aguilera Puerto 4678e44edc Fix warnings 2021-02-12 10:53:02 +01:00
Vera Aguilera Puerto 9ee0ec4106
Holiday System (#3122) 2021-02-12 10:45:22 +01:00
Vera Aguilera Puerto 4c419f85ce
Ghost Roles (#3106)
* Add files for Ghost Roles.

* Work on Ghost Roles

* Improvements

* GHOST ROLES IS DONE

* mmm yes

* auto-update when setting rolename/roledescription

* well

* command graceful error

* Makes UI have a scrollbar when it has too many entries

* fix command fuckup

* Apply suggestions from code review

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

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-02-12 14:35:56 +11:00
Acruid ca4fd649fe
Massive Namespace Cleanup (#3120)
* Engine namespace changes.

* Automated remove redundant using statements.

* Simplified Graphics namespace.

* Apparently the container system stores full type names in the map file.😞 This updates those names.

* API Changes to LocalizationManager.LoadCulture.

* Update submodule to v0.3.2
2021-02-11 01:13:03 -08:00
metalgearsloth 116fc027a1
addgas and settemp under admeme menu (#3098)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-02-10 13:36:11 +01:00
Pieter-Jan Briers 5cbb3f1222 Fix UI layout bugs with the PA. 2021-02-06 17:40:00 +01:00
Pieter-Jan Briers 3be3b7da64 Fix suspicion timer going negative and counting up.
The sign was never shown but it's still silly.
2021-02-04 15:29:59 +01:00
Pieter-Jan Briers 29918b2810 Fix suspicion round end timer, actually show it. 2021-02-04 04:16:36 +01:00
Acruid 8b5d66050a
Console Unify API Changes (#3059)
* Remove unused IChatCommand.

* Lots of refactoring into a shared context.

* Removed ICommonSession from server concmd Execute.

* Added argStr parameter to concmd execute.

* The execute function of client concmds now returns void, use the new shell.RemoteExecuteCommand function to forward commands.

* Finally move shells and commands into shared.

* Console commands can now be registered directly without a class in a shared context.

* Engine API Changes.

* Repair rebase damage.

* Update Submodule.
2021-02-01 16:49:43 -08:00
Pieter-Jan Briers 080846d396 Make AlertControl use AnimatedTextureRect for animated alert icons. 2021-01-24 23:02:29 +01:00
Pieter-Jan Briers 3874f1f77a HighDPI actions UI icons. 2021-01-24 02:32:56 +01:00
Pieter-Jan Briers ae91059c0b Adds "Add Reagent" admin verb. 2021-01-23 16:45:20 +01:00
chairbender f9670d36c4
Improved Inventory / Hand Slots UI (#2965) 2021-01-20 09:32:44 +01:00
Pieter-Jan Briers 2526e98d47 Crisp double scale icons for top button bar.
Still looks good on 100% scale mode but looks much better on higher modes than the previous bilinear scaling.
2021-01-15 11:49:57 +01:00
chairbender 803eda40c3
Fix "stuck" drag/drop controls using ControlFocusExited (#2828)
* #1449 use new ControlFocusExited override for drag/drop controls to avoid getting
"stuck" dragging when the control lost focus mid drag, also use the renamed
KeyboardFocusEntered/Exited methods.

* Update Content.Client/UserInterface/ActionMenuItem.cs

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

* Update ActionMenuItem.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-01-13 23:20:23 +01:00
Pieter-Jan Briers 66c359770b Fix placement of some right click menus with UI scaling. 2021-01-13 03:32:39 +01:00
bgare89 9165dfa670
Job Preference Selection Now Painless (#2919)
* # UI Win.

This is my PR that requires an engine change.

  * Added RadioOptionButton
  * Made JobPrioritySelector easier to use.

Requires space-wizards/RobustToolbox#1484

* Better nam.

* Updated to use the new version that isn't a mess.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-01-12 23:29:20 +11:00
NuclearWinter 57b3e7780d
Fix tutorial button being weird (#2984) 2021-01-11 10:12:37 +01:00
chairbender ee6c28aede
Better logic related to selecting / deselecting target-based actions (#2962) 2021-01-10 15:27:55 +01:00
chairbender 79dd7a7d7e
Improved top menu (#2949)
* #272 proper open sides in menu buttons

* #272 WIP, good starting point for making
the top menu work well at different UI scales

* #272 WIP top menu looking better, but inconsistent size

* #272 WIP esc nice and big

* #272 consistently sized top buttons

* #272 proper highlighting of top menu elements

* #272 proper highlighting of top menu elements

* #272 nice shiny red tutorial button

* #272 better tutorial icon

* #272 missed svg changes

* #272 consistently sized top menu

* #272 better padding / alignment of top bar with other UI sections

* #272 fix hamburger menu height to
match others

* #272 top menu name set based on
keybind, use shortened names if possible

* #272 top menu name set based on
keybind, use shortened names if possible

* #272 add top menu actions button

* #272 add top menu admin button

* #272 fix sandbox top button down status

* #272 remove todo
2021-01-09 15:40:07 +11:00
Metal Gear Sloth 42171a9b70 Stop github warnings 2021-01-09 14:51:27 +11:00
Leo 8eb96cfb01
Add setoutfit command (#2874)
* Add setoutfit command

* Adds setoutfit as a verb and adds a proper UI to the command

* Removes from AdminMenuWindow

* Changes the SetOutfit verb to be a component verb instead of a global verb

* Addresses reviews

* Remove empty method

* Remove on server aswell
2021-01-08 14:29:08 +01:00
Pieter-Jan Briers c1f53a4303 Clean up a ton of bugs with suspicion. 2021-01-04 09:18:28 +01:00
Swept 81730e2612
Backpack preferences. (#2864)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-01-03 16:22:14 +01:00
20kdc 6b5cded8c2
Clothing and pronoun fields (#2689)
* Clothing & Gender fields: Add to database [MODIFIED TO NOT DEPEND ON SAPHIRE-DB-REFACTOR]

Sorry about this, Saphire.

* Clothing & Gender fields: Add UI [FALLBACK II]

* Clothing & Gender fields: Actually apply gender

* Clothing & Gender fields: Import innerclothingskirt field from my previous attempt

Couldn't import actual prototypes because of a change to IDs

* Clothing & Gender fields: Add innerclothingskirt field to everything

* Clothing & Gender fields: Jumpskirts now work

* Clothing & Gender fields: Gender field will follow sex field if it's not different (UX improvement) [FALLBACK II]

* Clothing & Gender fields: Gender -> Pronouns to reduce confusion. Also, fix profile summary. Properly. [FALLBACK II]

* Clothing & Pronoun fields: Refactor so that profile equipment adjustments are performed in StartingGearPrototype.
2020-12-24 14:42:40 +01:00
Pieter-Jan Briers 44e3cc9395 Alerts now use SpriteSpecifier 2020-12-23 23:45:52 +01:00
Pieter-Jan Briers 9b53793ca5 Adds permissions panel to admin menu. 2020-12-23 17:08:34 +01:00
Pieter-Jan Briers 2e6ab15a2a Clean up station events synchronization code.
AAAAAAAAAAAAAAAAAAAAAAAAAAA
2020-12-23 17:08:34 +01:00
chairbender 9a3dee2042
Hotbar Improvements + Item Action Integration Test (#2749)
* my IDE keeps wanting to change this so....

* Add item actions integration test, fix bug where empty item action
dict was left in SharedActionsComponent state

* bigger hotbar arrows

* nice wide hotbar pagination hitboxes

* add ability to switch hotbar loadout
via keybinds

* always highlight on drag over
of actions hotbar

* dont rely on content entity for integration test
2020-12-22 15:41:56 +01:00
DrSmugleaf 0b24d425d2
Add job categories to the lobby screen (#2770)
* Rename department property to departments

* WIP Categories

* Add better spacing to categories

* Fix first separator and sync selectors

* You want some types with that

* Apply changes to latejoin as well

* Add category sorting to the late join gui as well

* CONTROL STUCK
2020-12-20 04:33:10 +01:00
GraniteSidewalk 89f8d0f34c
Cargo Telepad (#2579)
* Cargo telepad

* fixes error

* more efficient tile lookup

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2020-12-19 13:14:26 +11:00
chairbender 7a3c281f60
Actions System + UI (#2710)
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-12-13 23:28:20 +01:00
Manel Navola 7265c53391
Added master volume slider in audio options (#2642)
Co-authored-by: Manel Navola <ManelNavola@users.noreply.github.com>
2020-12-05 21:14:16 +01:00
Exp 876cbb9d18
Fix exception when selecting two jobs with high prio (#2671) 2020-12-02 20:41:55 +11:00
Swept a00d042dbe
Slight changes to lobby screen. (#2622)
* Initial

* More

* Pissed in a cup

* Cleansup some gunk I accidently committed

* More fuckups

* Added third gender option

* Applied review

* Fixed changed storage

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2020-12-02 19:45:07 +11:00
Pieter-Jan Briers 9cd297899d
Hide patreon link on Steam, fix YamlDotNet 9.1.0 parse error, update patrons list. 2020-11-27 16:31:36 +01:00
DrSmugleaf 5c0cf1b1a0
Use 'new' expression in places where the type is evident for content (#2590)
* Content.Client

* Content.Benchmarks

* Content.IntegrationTests

* Content.Server

* Content.Server.Database

* Content.Shared

* Content.Tests

* Merge fixes

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2020-11-27 21:00:49 +11:00
Pieter-Jan Briers 0a488ddc4a
Merge branch '20-11-27-merge' 2020-11-27 00:54:29 +01:00
DrSmugleaf 06b1939a60
Update usages of ! is with is not (#2584)
* Update usages of ! is with is not

* Content.IntegrationTests commit

* Content.Server commit

* Content.Shared commit

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-11-27 00:33:31 +11:00
Pieter-Jan Briers fcb5787d33
Use YamlDotNet to load patrons JSON file.
So that i don't have to add Newtonsoft.Json stuff to the sandbox whitelist.

YAML is a JSON superset after all...
2020-11-24 00:14:23 +01:00
DrSmugleaf 749cd11d33
Add readonly where it is missing and fix those field names according to their modifiers (#2589) 2020-11-22 00:02:00 +11:00
Pieter-Jan Briers 736f9958cc
Cleanup, code review, comments. 2020-11-10 21:30:20 +01:00
Pieter-Jan Briers 00774e90ed
Merge remote-tracking branch 'upstream/master' into 20-10-30-admins 2020-11-10 16:59:17 +01:00
Pieter-Jan Briers e39ddd4802
Permissions panel. 2020-11-10 16:50:28 +01:00
chairbender 5f788c3318
Alerts System and UI (#2529)
* #272 add bordered panel for effects bar

* #272 avoid mouse overlapping tooltip when near edges,
change tooltip colors to match mockups

* #272 WIP defining status effect states as YML and
sending them as encoded integers

* #272 refactor to use new alert system

* #272 refactor to use new alert system

* #272 fix various bugs with new alert system and update
alerts to have color

* #272 WIP

* #272 rename status effects to alerts

* #272 WIP reworking alert internals to avoid code dup
and eliminate enum

* #272 refactor alerts to use
categories and fix various bugs

* #272 more alert bugfixes

* #272 alert ordering

* #272 callback-based approach for alert clicks

* #272 add debug commands for alerts

* #272 utilize new GridContainer capabilities for sizing of alerts tab

* #272 scale alerts height based on
window size

* #272 fix tooltip flicker

* #272 transparent alert panel

* #272 adjust styles to match injazz mockups more, add cooldown info in tooltip

* #272 adjust styles to match injazz mockups more, add cooldown info in tooltip

* #272 alert prototype tests

* #272 alert manager tests

* #272 alert order tests

* #272 simple unit test for alerts component

* #272 integration test for alerts

* #272 rework alerts to use enums instead
of id / category

* #272 various cleanups for PR

* #272 use byte for more compact alert messages

* #272 rename StatusEffects folder to Alerts,
add missing NetSerializable
2020-11-10 15:22:19 +11:00
Exp c82199610d
Fix Exception when updating preview (#2533) 2020-11-09 18:36:45 +01:00
Exp d45072495e
Adds a live preview to the character customizer (#2523)
* Preview

* -Dispose Dummy
-Unsubscribe from OnServerDataLoaded
2020-11-08 23:44:04 +11:00
DrSmugleaf bf5b9ad03b
Change cvar usages to use CVarDef and define them in CCVars (#2250)
* Change cvar usages to use CVarDef and define them in CCVars

* Merge fixes

* Remove duplicate cvar registration
2020-11-07 11:15:56 +11:00
Tomeno 015539dcdc
Revert to old cooldown and unify with DoAfter (#2469)
Co-authored-by: Tomeno <tomeno@lulzsec.co.uk>
2020-11-02 11:32:03 +01:00
zionnBE 14b0a6eae4
Add admin teleport button (#2435)
Co-authored-by: zionnBE <zionn@tfwno.gf>
2020-10-30 01:05:49 +01:00
Paul Ritter 6a0aa9b72f
Singularity, Particle Accelerator & Radiation Collectors (#2169)
* basic radiation generator

* might need this

* thonk

* big thonk

* oop

* e

* werks

* sprite

* oopsy woopsy

* radiation

* clean up file

* makes it work, probably

* minor fixes

* resources

* progress on component

* this will no longer be necessary

* radiation go brrrr

* finally fix container issues

* out var

Co-authored-by: Remie Richards <remierichards@gmail.com>

* second out fix

* another out fix

Co-authored-by: Remie Richards <remierichards@gmail.com>

* switch case

* fix switch

* sound and improvements

* nullable

* basic containment field system

* ensure alignment

* fix beam placement logic

* field generation fully working

* fix potential crash

* working containment functionality

* extremely basic emitter functionality

* fix radiation panel naming

* emitter stuff

* oopsies

* fixes

* some fixes

* cleanup

* small fix and move emitter file

* add sprite resources for PA

* slight rework of the singulo
adds rads

* pushing for smugleaf :)

* added radiationpanels

* some fixes for the singulo

* containmentfield

* pa wip

* progress

* pa working

* emitter fix

* works :)

* ui works

* some work on ui & pa

* progress

* ui work & misc fixes

* GREYSCALE

* pa ui polish
containmentfieldgen rework

* singulo rework
added snapgrid

* getcomponent get out

* singulo rework
added collisiongroups underplating & passable

* yaml work:
- collision boxes
- singulo now unshaded

* no unlit

* misc changes

* pa wires

* add usability check

* nullable enable

* minor fix

* power need added

* reenables containment field energy drain
menu close button
singularity collider fix

* sprite replacement

* finished singulo pulling

* pjb fixes

* fixing sprites & minor adjustments

* decrease containmentfield power

* some yml adjustments

* unlit layers
singulogenerator

* singulogen

* everything works just not the powergetting on the pa
i wanna die

* Adds PA construction graphs, PA construction works

* Snap to grid parts when completing construction

* updated to newest master

* inb4 i work on power

* fixes upstream merge
adds power need to particleaccelerator

* properly implements power & apc power

* Emitters are now fancy.

* I have actually no idea how this happened.

* Give PA a wiring LayoutId

* PA is an acronym

* indicators
fixes hacking

* Singulo is a word you blasphemous IDE.

* Rewrite the PA.

* Fancy names for PA parts.

* Wiring fixes, strength wire cutting.

* fixes projectile & ignores components

* nullability errors

* fixes integration tests

Co-authored-by: unusualcrow <unusualcrow@protonmail.com>
Co-authored-by: L.E.D <10257081+unusualcrow@users.noreply.github.com>
Co-authored-by: Remie Richards <remierichards@gmail.com>
Co-authored-by: Víctor Aguilera Puerto <zddm@outlook.es>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-10-28 19:19:47 +01:00
DrSmugleaf f785ec4efb
Add pulling taking up a hand (#2405)
* Add pulling taking up a hand

* Revert unnecessary refactor
2020-10-28 10:16:40 +01:00
Víctor Aguilera Puerto 870d052354
Gas tanks and masks (#2409)
Co-authored-by: a.rudenko <creadth@gmail.com>
Co-authored-by: creadth <creadth@users.noreply.github.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-10-27 20:53:44 +01:00
Víctor Aguilera Puerto 48841a274d
Remove default grids (content) (#2241)
* Default grids go poof

* Address review

* Update submodule

* Fix DoAfterSystem for entities without grid.

* Fix SubFloorHideSystem for entities without grid.

* Fix ExplosionHelper for coordinates that aren't in a grid

* Fix TurfHelpers' GetWorldTileBox crash in the case of invalid grid

* Fix tile prying component crash when trying to pry space.

* Spill fixes when passing coordinates without grids.

* Are you static'in, son?

* Change SaveLoadSaveTest grid Id hardcoded value
It's still hardcoded, but at least now it's correct!

* Only send debug AI thing if grid is not invalid

* Update submodule.

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-10-21 17:13:41 +02:00
Rich da0b6f333c
Standardized colors between DoAfter and Cooldown progress (red > yellow > green). (#2291) 2020-10-18 18:11:44 +02:00
NuclearWinter b4ea6857cd
Ghost Teleporting (#2071)
* Fix?

Nuked everything and put my code back in, hope everything works

* Nullable fix?

* nullable fix electric boogaloo

* Haha nullable error go brrr

send help

* Cleanup and fix not clearing the button list

* Remove unnecessary brackets and parentheses

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-10-16 20:36:20 +02:00
DrSmugleaf 435fb2630e
Disable job buttons when they aren't available or late join is disallowed (#2251)
* Disable job buttons when they aren't available

In real time too, the technology is overwhelming

* Jobs are all unavailable when late join is disallowed.

* Better ToggleDisallowLateJoin command parsing

* Add togglelatejoin to groups.

Co-authored-by: Víctor Aguilera Puerto <zddm@outlook.es>
2020-10-16 11:22:58 +02:00
DrSmugleaf 50bc61b672
Add IResettingEntitySystem for entity systems that do resetting cleanup (#2257)
* Add IResettingEntitySystem for entity systems that do resetting cleanup

* You got a license for that submodule update?
2020-10-14 22:45:53 +02:00
metalgearsloth d769661692
Fix some build warnings (#2226)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-11 16:42:53 +02:00
Víctor Aguilera Puerto 32876c78fe
Random default characters (#2216) 2020-10-11 13:15:09 +02:00
DrSmugleaf aa6e0e7539
Add SSS traitor label and fix ally sync (#2200) 2020-10-09 18:57:09 +02:00
Pieter-Jan Briers 390d064304
Re-organize in-memory character profile storage.
Now uses a dictionary of int -> profile instead of an array filled with nulls.
2020-10-06 15:13:16 +02:00
Swept d00ae036f8
Fonts moved from textures to proper folder (#2159)
* Initial

* Deletes old loc
2020-10-04 18:07:15 +02:00
Pieter-Jan Briers 66c8a68891
Holy crap auth works (#2099)
* Holy crap auth works

* Fix some usages of UserID instead of UserName

* Refactor preferences.

They be non-async now. Also faster.

* Rename DbContext.

* Guest username assignment.

* Fix saving of profiles.

* Don't store data for guests.

* Fix generating invalid random colors.

* Don't allow dumb garbage for char preferences.

* Bans.

* Lol forgot to fill out the command description.

* Connection log.

* Rename all the tables and columns to be snake_case.

* Re-do migrations.

* Fixing tests and warnings.

* Update submodule
2020-09-29 14:26:00 +02:00
DTanxxx 3e6f0eef58
Removed the last bits of dependencies on localization manager (#2127)
* Removed the last bits of dependencies on localization manager

* Updated submodules to resolve error

Co-authored-by: David Tan <>
2020-09-26 15:30:13 +02:00
derek 158f765895
Keybind to stop pulling. (#2094)
* keybind to stop pulling.

* smug
2020-09-16 23:58:50 +02:00
DTanxxx 27a5a7a09c
Removed LocalizationManager dependencies (#2059)
* Removed LocalizationManager dependencies

* Fixed error

Co-authored-by: David Tan <>
2020-09-16 23:55:50 +02:00
DrSmugleaf 74943a2770
Typo, redundant string interpolation, namespaces and imports cleanup (#2068)
* Readonly, typos and redundant string interpolations

* Namespaces

* Optimize imports

* Address reviews

* but actually

* Localize missing strings

* Remove redundant vars
2020-09-13 14:23:52 +02:00
Pieter-Jan Briers 03d6697323
Add UI scale option to options menu. 2020-09-07 14:08:06 +02:00
Pieter-Jan Briers f96f286ca4
Rework options menu.
It's much nicer now.
2020-09-07 12:23:28 +02:00
Pieter-Jan Briers 005aad8da5
Allow disabling margins on StripeBack. 2020-09-07 12:23:28 +02:00
Pieter-Jan Briers 0440bb5e75
Tweak colors for caution buttons. 2020-09-07 12:23:27 +02:00
Pieter-Jan Briers 0de5cfed7f
Update submodule (remove options menu) 2020-09-07 11:08:01 +02:00
Pieter-Jan Briers 527fababe0
Adds key rebinding window 2020-09-07 11:05:18 +02:00
Pieter-Jan Briers a1c1769d23
Rework button styling to add a "caution" button type.
It's red.
2020-09-07 11:04:03 +02:00
Exp fd21ceb0cf
Improves the Admin PlayerList (#1989)
* -Makes PlayerList scrollable
-Player names clip when they are too long
-Shows Player count

* Add padding to make columns more noticeable

* -Added Separators between the columns
-Pushed List a bit down

* Add alternating row colors
2020-09-02 18:47:13 +02:00
SoulSloth e40e3fa267
Cloning (#1932)
* Add art assets for cloning

* Added a 'Scan DNA' button to the medical scanner

* Made the UI update unconditional for the medical scanner until checks for power changes are in place

* Update Medical scanner to reflect powered status and fix #1774

* added a 'scan dna' button the the medical scanner that will add the contained bodies Uid to a list in CloningSystem, fixed an issue with the menu not populating if the scanner starts in an unpowered state

* Add disabling logic to 'Scan DNA' button on medical scanner

* Removed un-used libraries

* changed scan dna button to Scan and Save DNA

* Added cloning machine code infrastructure copied from Medical Scanner

* Added a list to cloning menu containing some numbers

* Cloning Machine UI sends a message to the cloning component with the entityUID

* New scans now show up in cloning pod menu

* fixed cloning machine collision shape

* cloning machine can now spawn the right player profile assuming the attatched entity is still correct.

* refactored cloning system to use a map of integer ids to player Minds

* Added a return to body cloning loop for the ghost

* Fixed warning for _playerManager being possibly null, added TODO note for ghost return to body button acting as a toggle

* removed #nullable from cloningMachineWindow"

* Trying to get rid of nullable error

* fix CloningMachine to not initilize with it's owner components

* updated CloningMachine server component to play nice with the new nullable rules

* replace flag with eventBus message for sending a ghosts mind to a clone body

* Refactor cloning so that a popup option is used to get user consent for cloning

* Refactoring

* Reverting unused changes for cloning component

* Added proper cloning pod sprites and a visualizer so 'idle' and 'cloning' states are properly reflected

* added missing robust toolbox contents

* Added cloning NoMind State and made cloning take time

* Added cloning progress bar and mind status indicator to cloning pod

* Added missing localization calls, removeed 'returned to cloned body' from ghostUI

* Added unsubscribe for cloningStartedMessage in Mindcomponent.cs OnRemove

* Added eject button to cloningMachine and clamped the cloning progress bar to 100%

* Added condition to eject body on cloningmachine so bodies can't be ejected until cloning is done

* Add click-dragOn functionality to the medical scanner for things with a bodyManager

* Messed with scan query so it doesn't fail on dead bodies as long as Mind still owns the mob

* refactored clonning scan check on medical scanner so it doesn't do a linq query

* merge with rogue toolbox

* Change the name of Cloning Machine to the less generic Cloning Pod

* Changed Cloning Pod so it pauses cloning while the power is out

* Removed the evil LocalizationManager from the cloning menus and used the static Loc instead

* removed localization dependency from bound accpetCloning user interface

* Removed Ilocalization dependency I accidentally added to ghost ui

* Update Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerComponent.cs

Co-authored-by: Exp <theexp111@gmail.com>

* Changed null check to tryget in case for cloning UiButton.Clone

* Parameterized Cloning time on serverside component

* tried to reset Robust toolbox module to current master

* Added null check to ghost client component message handling, unsubscribe to the mind component listening to the cloning question ui, fixed _clonningProgress typo, moved CloningPod component dependencies to actually be dependencies, removed un-needed disposals of cloning windows, added disposals missing in boundUserInterfaces.

* Reset submodule

* corrected exception for cloning pod visualizer to refer to cloning pod state and not medical scanner state

* Fix typo

* Unsubscribe from onUiReceiveMessage in mindcomponent in the onRemove function, not the acceptcloningui function

* unsubscribe from OnUiReceiveMessage in CloningPodComponent

* unssubscribe from ghostreturn message in cloningpodComponent onRemove

Co-authored-by: Exp <theexp111@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-09-02 12:07:54 +02:00
DrSmugleaf 8f9ed2f562
Replace usages of ISharedNotifyManager and IServerNotifyManager with extension methods (#1965)
* Replace usages of ISharedNotifyManager and IServerNotifyManager with extension methods

* Remove redundant code
2020-09-01 12:34:53 +02:00
Exp b993ebb30a
Status Effect Tooltip & Notify on click (#1943)
* -Show tooltip on hover
-Show notify on click

* -Status Effects now get removed instead of going invisible
-Removed empty textures for that

* Revert break in HungerComponent
2020-08-29 13:33:38 +02:00
DrSmugleaf 548ef3dedb
Add HUD button that displays your SSS role and allies (#1895)
* Add button that displays your SSS role and allies

* Capitalize button name

* Add cases for 0, 1 and invalid number of allies

* Make the ally syncing system saner
2020-08-27 16:39:29 +02:00
Exp 292ef4ef16
Admin Menu (#1648)
* First Prototype

* Command Window

* Dropdown

* Is this better?

* That's kinda better?

* Added divider

* Shit

* Check if Admin Menu & Commands are allowed

* -Funcy Shit
-Now gets properly the playerlist
-Fixed kick reason

* Dropdown Improvement with some more func

* -Added DirectCommand for commands that don't need a ui
-Added RestartRound

* Better way to make DirectCommandButtons

* -Some new Tabs
-Player list

* -Split Buttons
-Regions
-Fixed Test Command

* Some server buttons

* Playerlist alignment

* Fucky SpawnEntites & SpawnTiles in AdminBus

* -Debug Buttons
-Few more commands

* -Make dem controls thicc
-SpinBox

* Escape Kick Reason

* Only create the window when you press the button

* Adds StationEvents

* Nullable "fixes"

* This thing wasn't made for buttons

* Call other constructor for empty CommandButton

* Request method in the interface

* -Pushed most Controls to be fields
-No more dict passing
-Removed test cmd
-Regions to better navigate

* -Bound to key
-Removed from escape menu
-Remember cmd windows
-Close all cmd windows on toggle

* -Moved dependency

* Merge fixes

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-25 17:18:32 +02:00
DrSmugleaf 8a27a5322a Replace pragma warning 649 disable/restore with default! 2020-08-24 14:10:28 +02:00
Exp 769a371be6
Make the lobby player list include the ready indicator and not hack it together (#1860)
* Started new Lobby

* -Proper styling
-Use a scrollcontainer :smilethink:

* Too lazy to add a stylerule, too young to optimize css

* Fix typo

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-24 12:11:53 +02:00
Exp 1b634739ac
Observers are shown as observers in the RoundEndSummary (#1838)
* Observers are shown as observers in the RoundEndSummary

* Fix typo

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-22 12:45:49 +02:00
Pieter-Jan Briers 0eba05c604
Fix exception in preferences preview. 2020-08-20 22:37:48 +02:00
Pieter-Jan Briers bf60a4e9fc
Merge branch 'master' into mathmerge 2020-08-20 20:33:43 +02:00
Víctor Aguilera Puerto 9e7d698145
Allow specifying a text to be shown to players in the summary when ending the round. (#1818)
* Allow specifying a text to be shown to players when ending the round.
Also sets text

* Fix comment
2020-08-20 18:09:29 +02:00
Pieter-Jan Briers ed1a96e536
Nullability fixes. 2020-08-20 16:48:15 +02:00
Exp 81fea61b72
Fix Roundend Summary Overlap (#1789)
* Fixed translation

* Temp fix

* Add "TODO: Remove" Comment
2020-08-19 17:02:31 +02:00
Exp 5de57d6cd2
Ready Indicator in the lobby (#1771)
* Ready Indicator in the lobby

* Use SessionID instead of Name

* Don't show ready state when game is already running

* Make Ready List not selectable

* -Remove disconnected sessions from Ready
-Fix showing ReadyStatus when staying in lobby
2020-08-18 14:52:59 +02:00
Visne 0b448b500d Merge MathHelper and FloatMath
Requires  space-wizards/RobustToolbox#1234
2020-08-16 14:54:52 +02:00
Vince b647ad0f42
Refactor UpdateKinematics() and fix a lot of Content warnings (#1709)
Most warnings were related to EntityQuery and IPhysicsComponent.
Partially fixes #1650 and fixes #1682
2020-08-15 20:38:35 -07:00
Víctor Aguilera Puerto c3df108b27
Stripping (#1668)
* Start work on stripping.

* more strippable work

* Stripping works

* Nullable

* MORE NULLABLE

* nullable moment

* life is pain

* Interaction check.

* Update Content.Client/GameObjects/Components/HUD/Inventory/StrippableBoundUserInterface.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Client/GameObjects/Components/HUD/Inventory/StrippableBoundUserInterface.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/HandsComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/HandsComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/HandsComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/StrippableComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/StrippableComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/HandsComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/StrippableComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/StrippableComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Shared/GameObjects/Components/GUI/SharedStrippableComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Update Content.Server/GameObjects/Components/GUI/StrippableComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Rename InventoryComponent and HandsComponent's OnChanged event to OnItemChanged

* Apply suggestions from code review

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>

* Use static EquipmentSlotDefines

* Do not expose ContainerSlot on Inventory or Hands.

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-08-15 20:33:42 +02:00
DrSmugleaf 4a8ed41e3a
Fix namespaces and optimize imports (#1651)
* Fix namespaces and optimize imports

* Cleanup fixes

* Merge conflict fixes

* Merge conflict fixes

* Merge conflict fixes
2020-08-13 14:40:27 +02:00
Pieter-Jan Briers e76003948b
Remove this parameter from FloatMath.Clamp.
That was a stupid idea.
2020-08-12 21:19:34 +02:00
Pieter-Jan Briers f182ff5613
Remove CannyFastMath. 2020-08-12 21:19:34 +02:00
Swept 85d8051bf1
Removes "spawn entities" and "spawn tiles" from the escape menu (#1606) 2020-08-07 03:46:01 +02:00
Swept 54c0264f01
Adds "Quit Game" and "Disconnect" button to Escape Menu (#1602) 2020-08-06 13:35:32 +02:00
DrSmugleaf 0a82aba88e
Add pulling (#1409)
* Initial framework for pulling.

* Make it possible to pull items via (temporary) keybind Ctrl+Click, make items follow the player correctly.

* Make other objects pullable, implement functionality for moving an object being pulled, make only one object able to be pulled at a time.

* Make sure that MoveTo won't allow collisions with the player

* Update everything to work with the new physics engine

* Update Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs

Co-authored-by: ComicIronic <comicironic@gmail.com>

* Physics update and convert to direct type casts

* Add notnull checks

* Add pull keybinds to the tutorial window

* Move PullController to shared

* Fix pulled items getting left behind

* Fix moving pulled objects into walls

* Remove flooring of coordinates when moving pulled objects

* Add missing null check in PutInHand

* Change pulling keybind to control and throwing to alt

* Change PhysicsComponent references to IPhysicsComponent

* Add trying to pull a pulled entity disabling the pull

* Add pulled status effect

* Fix merge conflicts

* Merge fixes

* Make players pullable

* Fix being able to pull yourself

* Change pull moving to use a velocity

* Update pulled and pulling icons to not be buckle

A tragedy

* Make pulled and pulling icons more consistent

* Remove empty not pulled and not pulling images

* Pulled icon update

* Pulled icon update

* Add clicking pulling status effect to stop the pull

* Fix spacewalking when pulling

* Merge conflict fixes

* Add a pull verb

* Fix nullable error

* Add pulling through the entity drop down menu

Co-authored-by: Jackson Lewis <inquisitivepenguin@protonmail.com>
Co-authored-by: ComicIronic <comicironic@gmail.com>
2020-07-27 00:54:32 +02:00
Pieter-Jan Briers 804f287ee3
Improve item slot hover.
1. Use a separate SpriteView for the hover entity to avoid any bookkeeping issues
2. don't set storagebutton visibility.
2020-07-26 17:57:48 +02:00
Moses 8e08c64fcf
Show if items can be placed in a slot when hovering (#1480)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-07-26 14:25:38 +02:00
DrSmugleaf 4b4e83d2bf
Add changing the amount of hands on the GUI depending on your body parts (#1406)
* Multiple hands in gui first pass

* Remove IHandsComponent interface

* Create hand class and more hand textures

* Refactor ServerHandsComponent to use a single list of hands

* Seal SharedHand

* Fix picked up items not showing on top of the hand buttons

* Remove HandsGui buttons and panels dictionaries

* Fix items in hands rendering

* Fix wrong hand container comparison

* Fix not updating the location of duplicate hands

* Change ClientHandsComponent to use a SortedList instead of a dictionary

* More merge conflict fixes

* Change SortedList to List

* Fix hand button order

* Add item tooltip for more than 2 hands and updating when removing hands

* Add add hand and remove hand command

* Merge conflict fixes

* Remove nullable reference type from ContainerSlot

* Fix texture errors

* Fix error when reaching 0 hands

* Fix error when swapping hands with no hands

* Merged remove hand methods

* Fix item panel texture errors

* Merge conflict fixes

* Fix addhand and removehand command descriptions

* Add properly displaying tooltips for 2 hands

* Make hand indexes and locations consistent across the client and server

* Add dropping held entity if a hand is removed

* Change hand location to be calculated by index

* Made different hand gui updates more consistent

* Remove human body yml testing changes

* Sanitize addhand and removehand commands

* Merge conflict fixes

* Remove testing changes

* Revert body system changes

* Add missing imports

* Remove obsolete hands parameter in yml files

* Fix broken import

* Fix startup error and adding and removing hands on the same tick

* Make hand container id use an uint

In case someone gets more than 2 billion hands

* Rename hand component files

* Make hands state use an array
2020-07-25 15:11:16 +02:00
DrSmugleaf 245dbdaa3a
Add pointing (#1435)
* Add pointing keybind and simple message

* Add turning the player when pointing

* Add pointing arrow

* Make the popup message appear on the pointing entity

* Add pointing to tiles and space and proper grammar

* Move pointing bind from HandsSystem to PointingSystem

* Add more messages for pointing depending on the viewer perspective

* Fix non nullable reference type

* Serialize pointing arrow duration

* Serialize pointing arrow step and add summaries

* Make arrow speed serializable and make it depend on frame time

* Add 0.2 second delay between pointings

* Add pointing arrow yaml examples

* Add the ability for pointing arrows to be rogue

* Remove rogue package reference

* Add point to verb

https://cdn.discordapp.com/attachments/313107470031650816/735268651636228197/unknown.png

* Add shift middle clicking an entity in the verb menu to point at it

* Add VV to PointingArrowComponent

* Increase pointing delay from 0.2 to 0.5 seconds

* Address reviews

* Fix nullability errors

* Separate pointing and rogue pointing code

* Fix rogue pointing arrow visuals

* Made rogue pointing arrow rotation adjustment readable for mortals

* Make rogue pointing arrows less destructive

* Cleanup more of the rogue pointing arrow code
2020-07-24 14:51:18 +02:00
Pieter-Jan Briers 37a893c8ad
Adds side-open button styles. 2020-07-17 12:06:52 +02:00
ike709 915fffb635
Latejoin Job Selection (#1284)
* UI version 1

* Latejoining

* cleanup

* missed a line

* Various fixes

* comment
2020-07-10 15:27:55 +02:00
ike709 2d2385032a
Admin chat (#1287)
* Admin chat

* Change it to show username, not character name

* moves the thing

* Removes SenderEntity
2020-07-08 12:18:16 +02:00
DrSmugleaf e7d756811e
Replace CanBeNull annotations with nullable reference types (#1270)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-07-08 01:41:20 +02:00
AJCM-git ae41d03ec6
Re-organizing the Resources folder. Part 1. (#1234)
* First commit

* Lockers

* Lockers electric boogaloo

* Crates and Lockers

* Almost finishing the Textures folder

* Updating texture paths. Reminder to fix:
* Lockers
* Windows
* Vending Machines
* APC
* Catwalks
* Bedsheets and Cloaks
* Status effects

* dont know what happened here

* Commit before merge

* re-organizing

* Lockers broken

* Commit before merge

* Submodule

* renaming

* Fixing most issues

* forgot these ones

* Updating submodule

* typo

* Fixing some paths

* fixing some paths

* updating submodule

* (hopefully) fixing the submodule
2020-07-07 19:19:00 +02:00
chairbender b35333d366
Click Drag Functionality + Refactor Interaction Interfaces (#1125)
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: ComicIronic <comicironic@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-07-06 23:27:03 +02:00
ike709 c019d428a7
Antag preferences and antag prototype (#1264)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-07-06 23:24:29 +02:00
ike709 3bab2fd803
Focus OOC hotkey (#1272) 2020-07-06 15:45:58 +02:00
windarkata 6775ae8153
Cargo Console Limit (#1095)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-07-02 14:45:40 +02:00
Pieter-Jan Briers 579ff6bb26
Use async DB queries. 2020-06-26 03:46:28 +02:00
Pieter-Jan Briers da45a52325
WiP movement prediction. 2020-06-24 02:21:20 +02:00
Pieter-Jan Briers e063d49a49
Use new stylesheet syntax in StyleSpace 2020-06-18 02:38:40 +02:00
Tyler Young de274de9e3
use CannyFastMath in various places even where it might not be any different
also update a bunch of packages

clean up redundant YamlDotNet references
2020-06-14 09:36:53 -04:00
Pieter-Jan Briers 422f64fed0
Credits 2020-06-14 15:15:15 +02:00
Tyler Young ca1d255b6c
For @Tomeno; Shader form of Cooldown Animation (#1113)
Co-authored-by: Tomeno <tomeno@lulzsec.co.uk>
2020-06-12 18:53:41 +02:00
ComicIronic 3cedcaf004
Silence ScreenToWorld warnings (#1098)
This fixes one case of GridCoordinates being used unnecessarily, in
GameScreenBase.

It replaces other cases with explicit calls to TryFindGridAt and
GetDefaultGrid.
2020-06-12 18:36:25 +02:00
Tomeno 4cb61b8693
Adds color changing to cooldown circle and a blink animation when done (#1087)
Co-authored-by: Tomeno <tomeno@lulzsec.co.uk>
2020-06-09 12:18:09 +02:00
Tomeno 7d10c99070
Makes the cooldown graphic look cooler (#994) 2020-05-25 14:07:19 +02:00
Tomeno af0ec2aeb9
Replaces cooldown circle (#956) 2020-05-23 11:26:59 +02:00
Pieter-Jan Briers 63b0df5ba2
Fix ItemSlotButton and HandsGui handling all input.
Fixes #904
2020-05-11 11:19:41 +02:00
Pieter-Jan Briers 079dc839de
Merge pull request #905 from ShadowCommander/FixHandDoubleClick 2020-05-11 11:07:46 +02:00
ShadowCommander 04ffe032dc Fixes hand double click from CanFocus 2020-05-10 22:48:14 -07:00
Hugo Laloge a34983b095 Add emotes as borderless speech "bubbles" 2020-05-09 15:53:37 +02:00
Pieter-Jan Briers cf9edddf2f
Update submodule, UI fixes. 2020-05-05 23:59:31 +02:00
Hugal31 fbaafa8366
Add smart equip shortcuts (#873) 2020-05-05 00:39:15 +02:00
Pieter-Jan Briers e2677bab51
Wide attacks on space, remove UseOrAttack. 2020-05-03 16:03:52 +02:00
Hugal31 0215092016
Add a style to the popup messages (#867) 2020-05-02 23:20:12 +02:00
FL-OZ e5847910c7
Merge branch 'master' into round_end_screen 2020-04-15 14:00:56 -05:00
scuffedjays 1605a50098 Changed duration to use TimeSpan.
Using actual round realtime span to determine round length.
2020-04-14 23:26:37 -05:00
scuffedjays 18e10e289e Added tabs to separate player info and general round info.
Colored players IC name depending on antag status.
2020-04-12 00:59:44 -05:00
scuffedjays 5d3018d76d Change frm ItemList to list of labels with markup 2020-04-11 10:31:44 -05:00
scuffedjays 3ce50879b7 New struct for basic round end info per player. 2020-04-10 01:37:14 -05:00
scuffedjays c47368231b Add scrollable player list to round end menu with OOC Usernames. 2020-04-08 23:51:49 -05:00
scuffedjays febe9aa46c Removed unused. Use Loc instead. 2020-04-08 19:09:02 -05:00
scuffedjays 02f9c5259c Add foundation for Round End Summary Screen.
Adjust GamePreset class, added title alongside description.
2020-04-08 06:07:54 -05:00
zumorica a0d114c672 Ghost sprites and a bunch of fixes 2020-04-05 02:29:04 +02:00
zumorica 0902844457 Merge branch 'master' into 2020-03-03-g-g-g-g-g-g-g-g-ghooooosts 2020-04-04 17:17:11 +02:00
Pieter-Jan Briers 5edfa2db34
Re-organize style sheets and add StyleSpace. 2020-04-04 15:10:51 +02:00
zumorica 91f039d2af Merge branch 'master' into 2020-03-03-g-g-g-g-g-g-g-g-ghooooosts 2020-03-28 23:48:00 +01:00
zumorica 7f19381bec Ghost command, some other stuff 2020-03-03 20:37:26 +01:00
zumorica 055f09d501 Button to return to body 2020-03-03 19:10:25 +01:00
zumorica 6905394e8a Add placeholder ghost UI, ghost component 2020-03-03 19:10:25 +01:00
ShadowCommander 3edfdb8763 Refactor CharacterSetupButton into a ContainerButton 2020-02-27 04:15:02 -08:00
ShadowCommander 14f6cbb845 Refactor ContainerButtons to use a StyleClass for formatting instead of typeof 2020-02-27 04:15:00 -08:00
ShadowCommander 4bdb45731a Clean up MouseFilterMode.Ignore from Controls 2020-02-27 04:14:59 -08:00
Pieter-Jan Briers 0e6b55de66
Clean up client game ticker status code.
Fixes #495
2020-02-26 16:42:12 +01:00
Decappi 289ab4818f
#621 - Added sandbox spawner documentation to tutorial (#737) 2020-02-26 06:31:08 +01:00
Víctor Aguilera Puerto 4f397e1ce2
Fix warnings (#723) 2020-02-23 00:28:50 +01:00
Pieter-Jan Briers 08fcbdf271
Populate tutorial window key binds with proper key names. 2020-02-17 11:29:52 +01:00
Pieter-Jan Briers 011ac0fd7d
Fix inverted triangle path on Linux.
@ShadowCommander you messed up the casing on the file path.
2020-02-17 11:29:19 +01:00
ShadowCommander 983d626ce4 Fix Styling 2020-02-14 18:05:35 -08:00
ShadowCommander 92030c6724 Update NanoStyle for refactored Button and CheckBox 2020-02-14 04:18:14 -08:00
ShadowCommander 718bf0edc3 Update Button references 2020-02-14 04:17:07 -08:00
ShadowCommander 5f26944df9 Add styles for ContainerButton and OptionButton 2020-02-13 00:47:46 -08:00
moneyl b965dfea33
Fix toggle UI keybind in tutorial window (#669)
Is shift + f4, not F1
2020-02-09 23:35:35 +01:00
Pieter-Jan Briers eb7c80ba7a
You can no longer place unless you are in admin or sandbox. 2020-02-08 20:45:02 +01:00
moneyl d8afa6bc03
Update & improve tutorial window (#586)
* Update & improve tutorial window

- Fix scroll bar not showing up till window is resized/scrolled.
- Update keybinds and information.
- Add "quick controls" before detailed explanation for quick reference.
- Add section headers with larger font.

* Add more keybinds

Adds more keybinds from keybinds.yml

* Address code review

- Remove paragraph explaining controls in favor of quick list.
- Remove use of ForceRunLayoutUpdate(). Need to find bug causing scroll bar to not show up until resize. Can do in separate PR.

* Add gameplay section

Adds gameplay section with some important notes on respawning and combat node.

* Fix typo

"it's keybind" -> "its keybind"
2020-02-07 00:07:13 +01:00
DamianX 4a833e82cd Update character list when one of them is selected (#561) 2020-01-25 14:37:04 +01:00
Acruid a86363a6d2 API changes, renamed SpawnEntityAt to SpawnEntity. 2020-01-24 16:10:48 -08:00
Pieter-Jan Briers f95c5b7921
Adds job icons to the job list. 2020-01-24 16:31:18 +01:00
DamianX 46ce6bf45e Implemented random character creation (#548)
* Implemented random character creation

* Pick from a list and apply a bit of randomness instead

* Rename SetInitialData, unselect list entries properly
2020-01-24 00:56:26 +01:00
Pieter-Jan Briers 32fae60930
Make slot buttons in character setup less wide.
Most normal names will fit easily.
2020-01-21 03:37:27 +01:00
Pieter-Jan Briers 6537aead64
Use MapCoordinates.Nullspace 2020-01-20 22:26:28 +01:00
Pieter-Jan Briers f6fe9ce85c
Show job title in character setup. 2020-01-20 10:30:06 +01:00
Pieter-Jan Briers 75aa9541e0
Equip clothing to preview dummies in the lobby. 2020-01-20 10:30:06 +01:00
Pieter-Jan Briers 03bfb22559
Fix profile editor not correctly enforcing single high-priority job. 2020-01-20 10:30:06 +01:00
ShadowCommander 57c3f63a26 Fix HandsGui StatusPanel capturing input (#525) 2020-01-20 01:31:46 +01:00
Pieter-Jan Briers fc2d53eb4f
Adds preference unavailable setting to profiles. 2020-01-19 18:33:22 +01:00
DamianX 1bd17f73b1 Actually save when pressing "save and close" (#523) 2020-01-19 14:54:11 +01:00
Pieter-Jan Briers f86ad6175e
Basic implementation of jobs in the character profile. 2020-01-19 09:42:26 +01:00
DamianX 802fda3cfd Added option to generate random character name (#519)
* Added option to generate random character name

* awk '!seen[$0]++'
2020-01-18 23:09:14 +01:00
DamianX b5feb0db2a Fixed character setup save button (#518) 2020-01-18 16:57:11 +01:00
Pieter-Jan Briers 4b60c03688
Fix Sex not showing in character preview panel. 2020-01-18 04:38:56 +01:00
ShadowCommander e0aaab56e3 Implement StorageButton on HandsGUI and click empty hand to swap… (#517)
Also moved duplicate sprite view code to ItemSlotManager
2020-01-18 03:41:47 +01:00
DamianX a4e369e629 added Character Setup (#511)
* added Character Setup

* whoops

* reverted unrelated changes

* Made everything work post-rebase

* Removed unused PreferencesChanged event

* nope, don't need this

* HumanoidProfileEditorPanel -> HumanoidProfileEditor

* Set initial data for hair pickers

* Fixed nullable warning

* Renamed LooksComponent -> HumanoidAppearanceComponent

* Renamed LooksComponentState -> HumanoidAppearanceComponentState

* Final renaming maybe

* Use a human-like dummy instead of a real human

* Change preferences structs back to classes
2020-01-18 01:54:13 +01:00
ShadowCommander d03da83fda Inventory Input (#503)
* Create ItemSlotButton

* Refactor inventory buttons

Refactor so that KeyBind handling of inventory and hands are the same.

* Refactor InventoryInterfaceController to call ItemSlotManager with entities

This change allows HandsGUI and InventoryInterfaceController to just call ItemSlotManager.OnButtonPressed with an entity instead of a slot.

* Add CooldownCircle to ItemSlotButton

This allows Hands and Inventory to have cooldown circles on their ItemSlots.

* Refactor HandsGUI to use ItemSlots

This allows functionality and GUI to be the same between Inventory and Hands.

Added clicking empty hand to switch ActiveHand to clicked hand.

* Implement CooldownCircle in ItemSlotManager

Reorganize files
2020-01-17 15:43:20 +01:00
Pieter-Jan Briers da932c5caa
Styling for Slider. 2020-01-15 14:27:47 +01:00
Pieter-Jan Briers 411c23c46e
Item status! 2020-01-09 00:28:04 +01:00
Pieter-Jan Briers 43cb54bb21
Override orientation of handsgui sprites.
Fixes #474
2019-12-24 01:22:20 +01:00
Pieter-Jan Briers 4f3f82f27f
Fix cooldown circles not being centered. 2019-12-22 21:50:40 +01:00
DamianX 63b98f26a6 Fixed a bunch of unused variables warnings (#492) 2019-12-15 14:12:23 +01:00
Pieter-Jan Briers 26da24c3c5
UI Layout v2. (#489)
* UI Layout v2.

* Lobby fixed.
2019-12-05 16:00:03 +01:00
Peter Wedder 45567c7acc Scrollbar min size. (#464) 2019-11-28 14:28:33 +01:00
L.E.D 35f9de3366 Make examination of items in hand possible (#459) 2019-11-23 21:57:44 +01:00
ShadowCommander 1580750606 Implement Cargo Console (#413)
* Implement Cargo Console

Add to CargoConsoleComponent GalacticBank information for syncing Bank Account Balance.

Implement CargoOrderDatabase on the server side and a list of orders in the CargoOrderDatabaseComponent on the client side. This makes it easier to change data on the server side but also utilize the state syncing between components.

Implement GalacticMarketComponent.
Only productIds get sent. Both client and server create their lists from YAML.

Implement basic spawning of items from approved orders in CargoOrderDatabase.

* Finish Cargo Console

Add validation to make sure Order Amount is one or more.

Implement approve and cancel buttons to CargoConsoleMenu orders list row.

Add price to CargoConsoleMenu product list row.

Implement CargoOrderDataManager to consolidate CargoOrder lists.

Refactor CargoOrderDatabaseComponent to use CargoOrderDataManager instead of storing duplicate lists.

Implement canceling orders.
Implement approving orders.

Fix sprite links.

Implement Cargo Request Console.
2019-11-22 01:37:14 +01:00
ZelteHonor b2e2aef78d Rider static analysis (#433)
* Non-accessed local variable

* Merge cast and type checks.

* StringComparison.Ordinal added for better culture support

* Supposed code improvement in launcher. Remove unused code.

* Update ExplosionHelper.cs

Unintentional change.

* Optimized Import

* Add Robust.Shared.Utility import where it was deleted

* Other random suggestion

* Improve my comment
2019-11-13 23:37:46 +01:00
Pieter-Jan Briers 841bb101c5
Visualize melee weapon cooldowns in HUD. 2019-11-12 01:43:11 +01:00
metalgearsloth 12cf5559c2 Refactor SpeciesUI into overlay and status effects (#381)
* Refactor SpeciesUI into overlay and status effects

All components that update the UI will need to use PlayerAttached for cases where the Mind transfers I think.

* Change overlay / status effects to use states

* Change TryRemoveStatus to RemoveStatus

Doesn't return a bool so not trying.
Addressing PJB's feedback.
2019-10-30 16:37:22 +01:00
Pieter-Jan Briers 69796bf1bc
Make targeting doll less ugly. 2019-10-22 23:16:12 +02:00
Pieter-Jan Briers 44c9feaebf
Fix Leave button in lobby being off to the right. 2019-10-20 22:39:22 +02:00
Pieter-Jan Briers c457a2603a
Document combat mode and change the keybind to Num1.
So I don't CONSTANTLY hit it while alt tabbing.
2019-10-20 22:31:49 +02:00
Pieter-Jan Briers 19379decd5
Fancy up the lobby GUI. 2019-10-18 14:28:39 +02:00
Pieter-Jan Briers 743ede2243
Implement more new styling stuff. 2019-10-18 14:28:24 +02:00
Pieter-Jan Briers 0edccd8934
Improve spacing on Escape Menu. 2019-10-18 14:26:45 +02:00
Pieter-Jan Briers 4d5c34bd58
Increase horizontal margins on new buttons. 2019-10-15 13:59:25 +02:00
Pieter-Jan Briers f0fb3eb434
Fancy new style buttons. 2019-10-15 13:13:21 +02:00
moneyl 963bb28f0f Reagent dispensers (#360)
* Expose more private values of Solution and SolutionComponent

Expose SolutionComponent.ContainedSolution and Solution.Contents. Both needed by ReagentDispenserComponent.

* Implement IExamine for SolutionComponent

Allows players to see the contents of a solution by examining the entity which contains it.

* Implement ReagentDispenserComponent

Adds ReagentDispenserComponent. A component which can add or remove reagents from a solution container. It's written in a general way so that it can be used for things such as the Chemical dispensers in chemistry, but also the booze and soda dispensers in the bar. 

The chemicals it may dispense are defined in yaml, similar to the way that vending machines define which entities they can dispense, by defining a reagent pack.

* Add chemical dispenser and equipment

Adds the chemical dispenser, beaker, large beaker, dropper, and a few more chemicals.

* Add booze and soda dispensers.

Adds the booze and soda dispensers, and a few chemicals for them to dispense. There's no drink mixing or drunkenness yet.

* Update engine submodule.

* Remove unneeded and commented out code

Had a few WIP notes and debug code bits I forgot to remove beforehand.

* Make SolutionComponent._containedSolution and it's values private again

- Remove `SolutionComponent.ContainedSolution` property, replace with specific access functions to maintain safety.
- Make Solution.Contents return a `ReadOnlyCollection` instead of `_contents` to prevent uncontrolled access to the Solution values.
- Add `SolutionComponent.RemoveAllSolution()`

* Update Content.Shared/Chemistry/Solution.cs

Commits a suggestion from RemieRichards to match the coding style of the rest of the codebase. Using `IReadOnlyList` instead of `IReadOnlyCollection`.

Co-Authored-By: Remie Richards <remierichards@gmail.com>

* Update Content.Shared/GameObjects/Components/Chemistry/SolutionComponent.cs

Commits a suggestion from RemieRichards to match the coding style of the rest of the codebase. Using `IReadOnlyList` instead of `IReadOnlyCollection`.

Co-Authored-By: Remie Richards <remierichards@gmail.com>

* Add import for IReadOnlyList to Shared/SolutionComponent.cs

* Add documentation

* Improve localization

Improve use of ILocalizationManager.

* Resolve ReagentDispenserWindow._localizationManager before using it

Forgot to do this in the last commit, resulting in a crash. Oops.

* Add SolutionCaps.FitsInDispenser. Use in ReagentDispenserComponent.

Used to limit large containers like buckets or mop buckets from being placed in a dispenser. Both have large capacities (500) and weren't designed to hold certain chemicals like a beaker is, so for now they can be blocked from being put in a dispenser by giving them that flag.

* Add colors to new reagents

* Update engine submodule
2019-10-05 15:10:05 +02:00
Pieter-Jan Briers a2d8fc1ef9
Sandbox panel 2019-10-02 21:47:32 +02:00
Pieter-Jan Briers 02d509fc5f
Shitty combat mode & animations. (#367)
* Combat mode UI & targeting zones.

* Fix inventory hud positioning.

* Crappy attack animations.

* Import TG combat sounds

* More work on arcs.

* Implement hit sounds.

* Lunging, hit effects, some more stuff.
2019-09-26 22:32:32 +02:00
Pieter-Jan Briers b40a96f545
Make TabContainer spaced a bit more. 2019-08-30 09:39:22 +02:00
Pieter-Jan Briers c207297c57
Merge branches 'pseudo-classes', 'input-refactor' and '19-08-21-update-submodule' 2019-08-21 17:25:01 +02:00
Pieter-Jan Briers 6ca70b0156
Apply suggestions from PR 2019-08-21 17:24:05 +02:00
ShadowCommander 1c81f6097f Merge branch 'master' of https://github.com/space-wizards/space-station-14 2019-08-16 15:46:06 -07:00
CatTheSystem 3b48926d75 Help me 2019-08-15 21:26:56 +03:00
Pieter-Jan Briers 9cb37a6376
UI system refactor; submodule update. 2019-08-14 22:04:35 +02:00
ShadowCommander 7753ae7c3a Added OpenStorage trigger on ActivateItemInWorld
When ActivateItemInWorld is pressed when hovering over a InventoryButton and the InventorySlot contains a storage item, it will open the StorageGUI.
2019-08-07 15:56:22 -07:00
ShadowCommander 7422d9148a Refactored input system 2019-08-04 16:03:51 -07:00
ShadowCommander 151d3a3672 Fixed HandsGui and added an icon to access worn inventories (#279)
* Fixed HandsGui children so that HandsGui is clickable

* Added TextureButton for opening Storage items

* Update ClientInventoryComponent.cs

Fixed HandleComponentState so that it only updates the inventory when there are changes.

* Implemented storage button on Inventory

Adds a small button on the bottom right of Storage items when inside the inventory. When the button is pressed it opens the Storage UI.
2019-08-01 01:38:24 +02:00
Pieter-Jan Briers 0086e60b6a
Speech bubbles yo. 2019-07-30 23:13:05 +02:00
Pieter-Jan Briers 1fbb5915aa
Better inventory window, inventory buttons on game HUD.
Part of #272
2019-07-23 23:24:47 +02:00
Pieter-Jan Briers 4d202a7678
Use new inventory icons for hands. 2019-07-20 16:02:19 +02:00
Pieter-Jan Briers c675886713
Separate inventory & character UI. 2019-07-20 14:07:11 +02:00
Pieter-Jan Briers f5d319bc3a
Adds explicit inventory window. 2019-07-20 14:07:11 +02:00
Pieter-Jan Briers b34a68a519
Remove instances of Visible = false for windows. 2019-07-19 16:12:02 +02:00
Pieter-Jan Briers 18efec6472
Game HUD improvements:
Added sandbox button, needs implementation.
Tutorial bound to F1.
Improved color of buttons.
2019-07-19 14:21:36 +02:00
Pieter-Jan Briers 1ba460e1a6
Update submodule, entity spawn rewrite. 2019-07-19 12:40:28 +02:00
Pieter-Jan Briers 8621d61278
Chat improvements:
Improved chat box styling.
"All" button now works as a toggle for.. all buttons!
Also improved persistence of the chat box when switching to/from lobby.
2019-07-19 01:23:16 +02:00
Pieter-Jan Briers 96516fa288
Make scrollbars less opaque. 2019-07-19 01:21:48 +02:00
Pieter-Jan Briers 90173f6147
Change lobby chat placeholder. 2019-07-19 01:21:22 +02:00
Pieter-Jan Briers 6de6c6534c
De-capitalize "Esc". 2019-07-18 23:34:41 +02:00
Pieter-Jan Briers 068c997519
Switch to Noto Sans Display in CSS. 2019-07-18 23:34:40 +02:00
Pieter-Jan Briers c529f38517
Tutorial has a window title. 2019-07-18 23:34:40 +02:00
Pieter-Jan Briers ce1eab9181
Update submodule, removal of window AddToScreen. 2019-07-18 22:49:49 +02:00
Pieter-Jan Briers 73511d9d8f
Student cap icon for the tutorial. 2019-07-17 23:36:07 +02:00
Pieter-Jan Briers 4b9c4022b8
Adds character menu, crafting menu and tutorial to the top left. 2019-07-17 21:37:58 +02:00
Pieter-Jan Briers 69f9da944d
Fix mouse input being "broken".
I accidentally made a screen-covering control so mouse input got eaten.
2019-07-17 17:08:58 +02:00
Pieter-Jan Briers 391d4a6c67
Better top menu styling. 2019-07-17 16:38:08 +02:00
Pieter-Jan Briers cdcafbada6
Start working on those top left buttons in the UI draft. 2019-07-14 23:02:45 +02:00
Pieter-Jan Briers 837a906538
Make Status Effects UI better positioned. 2019-07-12 19:29:53 +02:00
Pieter-Jan Briers b7d5297e9f
Show health status on the HUD, shoddily. 2019-07-08 21:11:42 +02:00
Pieter-Jan Briers 4221fecff6
Update content repo for CLYDE 2.0. 2019-07-06 19:20:20 +02:00
moneyl e07c3c368f APC gui colored external power state (#244)
* Adds colored external power state to APC gui

* Move power state colors to StyleSheet
2019-05-29 18:07:05 +02:00
Pieter-Jan Briers 9c3587b00e Fix compiler warnings and remove dead code. 2019-05-28 00:30:34 +02:00
Pieter-Jan Briers b64643ecd6 Adds tutorial, remap some buttons to be more in line with SS13. 2019-05-16 16:25:06 +02:00
Pieter-Jan Briers 818ee83440 Remove IDisplayManager dependency from SS14Window, content changes. 2019-05-16 14:28:34 +02:00
Pieter-Jan Briers e68a5c8402 Move Escape Menu to Content. 2019-05-14 15:19:41 +02:00
Pieter-Jan Briers cbca48ebbb Add online player list to lobby UI. 2019-05-14 12:54:47 +02:00
Pieter-Jan Briers a78a07d0c4 UI styling improvements.
Especially for the lobby.

CSS really paying off here.
2019-05-14 09:57:51 +02:00
Pieter-Jan Briers ad3b3c9f4f Add explicit placeholders to the lobby. 2019-05-14 08:38:49 +02:00
Pieter-Jan Briers 96fbde3413 Adds a UI element to act as placeholder. 2019-05-14 01:19:25 +02:00
Pieter-Jan Briers 88c29abe5e Transition lobby from tscn to C#, localization support for lobby. 2019-05-14 00:23:58 +02:00
Pieter-Jan Briers 57bcb2a16d Make content UI scaling aware. 2019-05-11 16:05:41 +02:00
Pieter-Jan Briers c0edf2aeed Clean up NanoStyle:
1. Run code formatting.
2. Condense some rules down.
2019-05-08 23:19:17 +02:00
Pieter-Jan Briers 0ccefebc52 Entering text into lobby chat box does not release focus. 2019-05-08 16:49:59 +02:00
Silver a18692bc46 Rename toolbox references from ss14 to robust 2019-04-15 21:11:38 -06:00
Pieter-Jan Briers 52af7d27da
Re-implement chat in content. (#198)
* OOC is a word.

* Re-implement chat in content.
2019-04-13 09:45:09 +02:00
Pieter-Jan Briers c283634efb
Make examine use tooltips. (#189)
FANCY.
2019-04-09 17:33:53 +02:00
Pieter-Jan Briers 8c7e7e5510 Update submodule, implement style for Tree. 2019-04-08 18:58:16 +02:00
Víctor Aguilera Puerto 9f1dd9f876 ItemList style. (#183) 2019-04-06 17:07:43 +02:00
Pieter-Jan Briers b94e015314 Style UI tooltips. 2019-04-01 20:05:45 +02:00
Pieter-Jan Briers eef0db6001 Change main menu button font. 2019-04-01 15:53:50 +02:00
Pieter-Jan Briers c27be2bf95 Fix mousedown on handsgui. 2019-03-22 21:46:51 +01:00
Pieter-Jan Briers da3a7e47e3 Make HandsGui work on Clyde. 2019-03-15 19:07:29 +01:00
Pieter-Jan Briers 43c0b512bd CheckBox styling. 2019-03-11 11:55:29 +01:00
Pieter-Jan Briers 2234641e4a Update submodule and styling 2019-03-11 09:07:56 +01:00
Pieter-Jan Briers 0bcb6adf6a New styling for various new controls. 2019-03-05 09:39:20 +01:00
Pieter-Jan Briers 5436d6831e Change theming now that the font system isn't unstable. 2019-02-24 16:14:36 +01:00
Pieter-Jan Briers 1ee556091c Make default font Noto Sans 12. 2019-02-24 15:55:23 +01:00
Pieter-Jan Briers eee4b64c64 Make LineEdit not ugly as hell. 2019-02-23 16:35:51 +01:00
Pieter-Jan Briers 20846ef446 Fix various compiler warnings. 2019-02-21 22:01:13 +01:00
Pieter-Jan Briers fd9db21ad7 Update submodule. 2019-02-21 18:13:37 +01:00
Pieter-Jan Briers 3516392f06 NanoStyle v1 2019-02-18 09:16:06 +01:00
Pieter-Jan Briers 845d0f9182
We have a lobby! (#127)
It's shoddy as hell but it works for our purposes.
2018-11-25 19:04:49 +01:00
Pieter-Jan Briers b0f212bad5
Verbs (#124)
Right click verbs work.
2018-11-21 20:58:11 +01:00
Acruid fc7493e149
Namespace Compatibility changes. (#114) 2018-10-25 17:40:48 -07:00
Pieter-Jan Briers 74541e23a4
Equipment & inhands. (#110)
* Equipment WiP

* Equipment's starting to work.

* Equipment works properly 100% now.

* Inhands work.

Also more clothes.
2018-09-19 18:54:04 +02:00
Pieter-Jan Briers 2dd3f24fb2
Make Y+ up. (#109) 2018-09-17 10:46:38 +02:00
Pieter-Jan Briers 189a52c6d7
Use Sprite proxies for GUIs. (#93)
AKA "welders actually light up in the hands GUI".
2018-08-16 22:43:04 +02:00
Pieter-Jan Briers 85b4be3ff4
Updates for the netcode refactor. (#69)
* Updates for the netcode refactor.

* Change HandsGui to control.

Why? No idea but drawing of it works again.

* Fix hand change sync.

* Update submodule
2018-05-13 11:54:21 +02:00
Pieter-Jan Briers 61a1e769d7 Sprite refactor (#63)
* Sprite refactor compatibility.

* Sprite-level rotation.

* Dude it works.

Welder now has an unshaded flame toggle!

Door component no longer on client!

* Remove debug text.

* Update.
2018-05-08 01:20:15 -05:00
clusterfack ea05c593aa Storage Component (toolboxes, backpacks, etc) (#57)
* Fix
Finish and update submodule
Comments code, changes network messages
FIXES THE USE INTERACTION SO YOU CAN ACTUALLY ACTIVATE THINGS NOW
Need engine commits
We'll figure out what to do about this shit later eh mates? Maybe have a script in the build process that automatically moves them over to godot/scenes
Changes some prototypes and fixes stuff
Fixes some more bugs, makes storage values show up properly
Part 3
Part 2
Storage Take 1

* Doneso
2018-04-22 13:11:38 +02:00
Pieter-Jan Briers 9989d6db75
Updates submodule (#56)
* Adds audio to the content repo.

* Content repo updates

* I forgot this AGAIN.
2018-04-12 23:56:43 +02:00
Pieter-Jan Briers 6704245a41
The Wait Is Over. (#49)
* Move submodule to Godot

* Update submodule AGAIN.

* Update project files.

* Remove WearableAnimatedSprite from prototypes.

* Remove content repo resource copier.

* Update submodule.

* Fix resource handling.

* Content.Client compiles by commenting out hands GUI.

* Update submodule.

* Fix prototype textures and update submodule.

* Update Submodule.

* Update submodule SOME MORE!

* Random WiP shit I guess

* Make omnisharp not choke on buildchecker.

* Update submodule.

* Highly WiP broken HandsGui code.

* Ok maybe let's not insult omnisharp.

* Fix annoying Omnisharp warning.

* Update submodule.

* Update submodule.

* Hey I forgot to push this but it didn't conflict!

* Fix hands GUI on godot.

* Update submodule.

* Obligatory submodule update.

* Work on exports.

* Work on exports.

* Update submodule.

* Update submodule.

* Fix dumb case mismatch between content and engine

* work pls.

* This maybe.

* Now!

* Update submodule.

* update submodule.

* Some WiP work on exporting aaah.

* OK READY FOR THE BUILDS SERVER.

* Probably should've made those commits in a different order.

* DO THE THING

* update submodule.

* Updates for effects system.

* Update submodule.

* Make file/line numbers show up on Windows Godot.

* Set submodule to master.
2018-04-07 15:31:38 +02:00
DamianX 63b5d83728 Fixed crash when pressing BACK in lobby (#46)
* Fixed crash when pressing BACK in lobby

* that's true
2018-03-24 16:54:13 +01:00
clusterfack 5ee56a4cd3 Updates submodule (#22)
* Updates submodule

Fix connect not entering server (with correct toml config) and compile error, updates submodule
Server still has an issue with toml file pointing towards sandbox instead of content and roundstart object initializations

* Updates more stuff

Needs my most recent PR on ss14 to function

* Submodule updated for real this time
2018-01-18 20:00:35 +01:00
Pieter-Jan Briers 68f4fd995e Update submodule, fix HandsGui.
HandsGui now works with the new system. The port was sloppy though so
somebody might want to come and refactor this so that it doesn't force
its own position and size.
2017-11-13 19:48:21 +01:00
PJB3005 de4583d14b Fix compile from removal of SFML. 2017-10-20 20:55:59 +02:00
PJB3005 26e9c37be1 Functional GUI! 2017-09-30 16:56:19 +02:00