Commit Graph

138 Commits

Author SHA1 Message Date
Pieter-Jan Briers 981c36dbdb
Give reagent dispenser reagents window a vertical minimum size. 2019-10-20 01:40:13 +02:00
Pieter-Jan Briers 6630e454c6
Clean up reagent dispenser and make it slightly better. 2019-10-20 01:30:38 +02:00
Pieter-Jan Briers 7de97eeb2c
Fix icon smoothing not applying after entities are deleted. 2019-10-14 17:09:45 +02:00
Pieter-Jan Briers 9a38577a18
Improve autolathe & protolathe visuals.
Used correct Eris autolathe sprite.
Gave them an unlit layer.
2019-10-14 09:57:57 +02:00
Pieter-Jan Briers f3f05b0396
Correctly implement opening animation for airlocks with open maintenance panel. 2019-10-14 00:20:01 +02:00
Pieter-Jan Briers be9dc90738
Disable unlit layers on unpowered airlocks.
Fixes #389
2019-10-13 16:39: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 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
Acruid cbea6bf41f The SubFloorHideComponent can now be properly started/stopped. Previously this did nothing. 2019-09-19 11:43:46 -07:00
Pieter-Jan Briers 6c97b63e59
Property animations test component. (#340) 2019-09-18 22:14:21 +02:00
Acruid dd06c71735 Updates the content components to be compatible with the changes in 55a50ff7ba.
Updates engine submodule.
2019-09-18 11:36:58 -07:00
DamianX 364279e0f7 Added medical scanner (#338)
* Added medical scanner

* RegisterIgnore
2019-09-18 20:24:55 +02:00
Acruid fc5d7835c0 Updates various systems to the new InputCommandHandler delegate signature, implementing the new handled return value.
Modifies the construction system to use the newer InputHandler system, instead of the older ClickComponent system.
Updates the engine submodule.
2019-09-17 16:10:59 -07:00
Víctor Aguilera Puerto 3f4c9a8326 Use improved ItemLists (#335)
* Use improved ItemList

* Address reviews

* Update submodule
2019-09-13 15:35:06 +02:00
Pieter-Jan Briers 97e18b9ed4
Fix camera recoil restore overshooting at low framerates. 2019-09-11 20:08:43 +02:00
DamianX 63bb4c4d0a Create BoundUserInterfaces with DynamicTypeFactory (content) (#332)
* Create BoundUserInterfaces with DynamicTypeFactory (content)

* maybe this time I did it right
2019-09-08 16:05:34 +02:00
DamianX 36078382e4 Airlock hacking (#329)
* Airlock hacking

* Added status text

* Whoops don't need this

* Update Content.Server/GameObjects/Components/Doors/AirlockComponent.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* ComponentReference ServerDoorComponent

* Suggested name
2019-09-06 10:05:02 +02:00
Víctor Aguilera Puerto 34f4731c9b Fix bug where research console GUI didn't close correctly (#331) 2019-09-06 08:13:17 +02:00
DamianX 6e2799f048 ID card console (#324)
* ID card console

* Container -> ContainerSlot
2019-09-06 08:12:44 +02:00
Víctor Aguilera Puerto ba8b495ec0 Adds Research, unlockable technologies, Protolathes... (#264)
* Work on Research so far
More work on UI...
Fix ResearchClient and Protolathe UI stuff.
Fix infinite select -> request state -> select -> ... loop
Add UI to ResearchClient, etc.
Technology Database states, and a bit of work on the research console ui
A bit of work on Research Console UI
Protolathe sync
Stuff that actually does things
Protolathe databases yay
Alright got my motivation back
Yeah, no. It's almost 3 AM already
Fix serialization bug again
More work on stuff
Stuff
Adds files for most new components/systems.

* Protolathes actually work now

* Research. Just Research.

* Adds icons from Eris.

* Address reviews

* Change LatheMenu resize behaviour

* Update Content.Client/GameObjects/Components/Research/ResearchConsoleBoundUserInterface.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Update Content.Client/Research/ResearchConsoleMenu.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Move IoC Resolve out of for loop

* Address review

* Localize stuff
2019-09-03 22:51:19 +02:00
DamianX f3b460c8b4 IDs and access (#319)
* something about access

* Fixed deny animation
2019-09-01 22:57:22 +02:00
ShadowCommander 0329150109 Fix OpenStorage button in HumanInventoryWindow (#322) 2019-09-01 22:50:13 +02:00
DamianX 264a63b7f6 Wires! (#315)
* Wires!

* Use state instead of messages

* cleanup

* Update submodule

* actually fix conflict

* Maybe fix conflicts?

* Localized strings, removed hardcoded sprite path

* cleanup

* More localization and sounds
2019-09-01 22:15:34 +02:00
Pieter-Jan Briers 55f9411493
Verbs don't open an invisible popup if there's no entities. 2019-08-25 22:53:36 +02:00
Pieter-Jan Briers 7306bcc35a
Fix VerbSystem crash.
Fixes #317
2019-08-25 12:54:55 +02:00
metalgearsloth 9431011ba5 Add more dakka (#307)
* Add more dakka

Some slight codebase changes to facilitate more robust behaviour.

* Update Content.Server/GameObjects/Components/Projectiles/ProjectileComponent.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Remix last stereo to mono

hpistol + ltrifle
2019-08-22 11:08:32 +02:00
ShadowCommander 66c5affa65 Merge branch 'master' of https://github.com/space-wizards/space-station-14 2019-08-20 18:27:12 -07:00
DamianX 4dcbf28714 IoC'd random (#302)
* Implemented RobustRandom

* update submodule

* update submodule

* Fix benchmark
2019-08-17 12:09:09 -07:00
ShadowCommander 1c81f6097f Merge branch 'master' of https://github.com/space-wizards/space-station-14 2019-08-16 15:46:06 -07:00
DamianX 534af65f7c Fixed inventory button not updating when window was closed (#304)
* Fixed inventory button not updating when window was closed

* Only add the event handler once

* uhhhh

* UHHHHHH
2019-08-16 21:52:00 +02:00
Pieter-Jan Briers 9cb37a6376
UI system refactor; submodule update. 2019-08-14 22:04:35 +02:00
Pieter-Jan Briers 6be135a137
Fix human inventory window ID slot using mask texture. 2019-08-14 21:10:56 +02:00
DamianX 88920696f3 Vending Machines (#296)
* Vending Machines

* addressed review
2019-08-14 10:49:28 +02:00
Pieter-Jan Briers d4384aef73
Eris computer sprites, visualizer. 2019-08-12 18:43:24 +02:00
ShadowCommander b38e780f01 Updates Submodule and updates Inventory Button variables 2019-08-09 15:47:59 -07: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 ceb8cc8421
Use automatic component registration. 2019-07-31 15:07:54 +02:00
Pieter-Jan Briers 41b72d5aa2
Remove visibility set from StorageWindow. 2019-07-31 13:48:50 +02:00
Pieter-Jan Briers d906bcda03
Eris low walls & windows.
Still needs work blocked by better entity parenting, but oh well.
2019-07-26 13:53:18 +02:00
Pieter-Jan Briers 248e3f686b
Fix APC window. 2019-07-24 12:36:18 +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 c0717ed6a3
Do not show character interface for observers. 2019-07-19 11:15:33 +02:00
Pieter-Jan Briers 1a92d08399
Improves examine code
Examining now has larger range. Ghosts have no range limit.
Fixed some messy code and some bad netcode.
2019-07-19 10:45:55 +02:00
metalgearsloth 1f320eccd7 Add basic teleportation and portals (#269)
* Add basic teleportation and portals

* Address PJB's feedback and minor cleanup
2019-07-19 10:09:33 +02:00