Commit Graph

56 Commits

Author SHA1 Message Date
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
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
Paul Ritter
5c50b1f6ed Serialization v3 content PR (#3491)
* serv3 in shared pt 1

* beginning of deepclone api

* progress in implementing ideepclone & serv3 in content

* adds target

* its cant hurt you it cant hurt you

* more changes to content.server

* adds dataclasses

* almost there

* renamed & edited entry

* finishes refactoring content to use serv3

* gasmixture runtimes, next: reagentunit

* fucin hell that was an annoying one

* adds flags

* fixes some yaml errors

* removes comment

* fixes generic components for now

* removes todo
actually clones values my god paul
fixes bug involving resolving custom data classes from other proj
renames dataclass
fixes spritecomp
adds WithFormat.Constants support

* adds deepclone to ResistanceSet

* adds a bunch of deepclone implementations
adds a deepclone analyzer (TODO)
adds a deep clone fallback for classes & structs

* fixes a bunch of runtimes

* adds deepclone to entityuid

* adds generator to sln

* gets rid of warnings

* fixes

* argh

* componentdata refactors

* more deepclone impl

* heck me i reworked all of content deepclone

* renames custom dataclasstarget

* misc

* reworks prototypes

* deepclone nuke

* renamed customdataclass attribute

* fixes everything

* misc fixed

* the killcommit

* getting there

* changed yamlfieldattribute namespace

* adds back iselfserialize

* renames everything to data(field/definition)

* ouch

* Fix most errors on content

* Fix more errors in content

* Fix some components

* work on tests

* fixes some customdataclasses

* fuggin shit

* yes

* yeas

* Remove data classes

* Data field naming fixes

* arg

* Git resetti RobustToolbox

* Merge fixes

* General fixes

* Fix startup serialization errors

* Fix DamageContainerPrototype when supported classes or types are null

* Implement construction graph step type serializer

* Fix up construction serialization

* Fix up construction serialization part 2

* Fix null list in technology database component

* Fix body serialization

* Fix entity storage serialization

* Fix actions serialization

* Fix AI serialization

* Fix reaction serialization

* Fix body serialization

* Fix grid atmosphere serialization

* Rename IServ3Manager to ISerializationManager

* Convert every non generic serializer to the new format, general fixes

* Serialization and body system fix

* pushinheritance fix

* Update all prototypes to have a parent and have consistent id/parent properties

* Merge fixes

* smh my head

* cuddling slaps

* Content commit for engine PR

* stuff

* more fixes

* argh

* yes even you are fixed

* changelog fixes

* fixes seeds

* argh

* Test fixes

* Add writing for alert order prototype

* Fix alert order writing

* FIX

* its been alot ok

* Fix the rest of the visualizers

* Fix server alerts component tests

* Fix alert prototype tests not using the read value

* Fix alert prototype tests initializing serialization multiple times

* THIS IS AN AMERICAN CODEBASE GOD BLESS THE USA

* Add ImplicitDataDefinitionForInheritors to IMechanismBehavior
Fixes the behaviors not being found

* Fix NRE in strap component
Good night to the 1 buckle optimization

* Fix clothing component slot flags serialization tag

* Fix body component in all components test

* Merge fixes

* ffs

* Make construction graph prototype use serialization hooks

* human yaml linted

* a

* Do the thing for construction

* stuff

* a

* monke see yaml linter

* LINT HARDER

* Remove redundant todo

* yes

* Add skip hook argument to readers and copiers

* we gamin

* test/datafield fixes

* adds more verbose validation

* moves linter to action

* Improve construction graph step type serializer error message

* Fix ammo box component NRE

* gamin

* some updates to the linter

* yes

* removes that test

* misc fixes

* array fix
priority fix
misc fixes

* adds proper info the validation

* adds alwaysrelevant usa

* Make yaml linter take half as long to run (~50% less)

* Make yaml linter 5 times faster (~80% less execution time)

* based vera being based

* fixes mapsaving

* warning cleanup & moves surpressor

* removes old msbuild targets

* Revert "Make yaml linter 5 times faster (~80% less execution time)"

This reverts commit 3e6091359a26252c3e98828199553de668031c63.

* Add -nowarn to yaml linter run configuration

* Improve yaml linter message feedback

* Make dependencies an argument instead of a property on the serialization manager

* yamllinting slaps

* Clean up type serializers

* Move yaml linter code to its own method

* Fix yaml errors

* Change yaml linter action name and remove -nowarn

* yaml linter please shut

* Git resetti robust toolbox

Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-03-05 01:08:38 +01:00
Alex Evgrashin
0fa219365e Ghosts do booo (spooky) (#3363)
* Light now use visualizer

* Added ghost actions

* Add hotkey input for ghosts

* no message

* Testing blinking animation

* Better animation

* Better customization

* No abuse

* Reversed sln

* No fun for ghosts

* No fun for ghosts x2

* Cooldown for lights

* Moved to component deps

* This tollist is unnecessary

* Enums to byte

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

* Some lights can ignore ghosts now

Co-authored-by: Alex Evgrashin <evgrashin.adl@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-02-26 12:31:06 +11:00
Swept
e9af0d58e7 Cleans up lathe rsis (#3392) 2021-02-25 12:48:35 +01:00
Swept
1e13c3b265 Fixes lathe stuff (#3383) 2021-02-23 18:53:14 +11:00
Swept
5b75c14ad7 Initial (#3366) 2021-02-22 09:58:46 +01:00
Swept
4a67fc1d22 Fleshes out smoking content (#3295)
* RSIs sorted out

* Bookmark

* Updated packet RSIs for Stacks

* Cigs Packs done

* Cigarette Cartons

* fucking MANUALLY fixed the cigarette inhands, fuck you tgstation

* Pipes work

* Cigars/Cases

* Updates vending machine inventory

* tweaks count

* Adds a cigarette crate

* Fixes RSIs, working on rolling paper

* Adds Tobacco and Cannabis plants

* Cigarettes and Rollies are now craftable

* There

* Fixed crafting recipes

* Reset RobustToolbox

* Netsync'd

* Ready

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-02-22 15:08:17 +11:00
Pieter-Jan Briers
b898443f28 WPF layout (#3346) 2021-02-21 12:38:56 +01: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
Vera Aguilera Puerto
9b1142973e Renames phoron to plasma everywhere in the codebase and replaces sprites. (#3110) 2021-02-09 19:05:19 +01:00
DrSmugleaf
2dc05b2275 Add UsedImplicitly to visualizers and entity systems (#2592) 2020-12-08 11:56:10 +01:00
ColdAutumnRain
266d2909d7 Added enum types (#2701) 2020-12-04 11:57:33 +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
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
metalgearsloth
2e65b1e5fa Optimise flashlights (#2468)
Flashlights were calling dirty EVERY TICK so this just means they only call it when absoluetely necessary which saves a lot.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-31 21:56:46 +01:00
Peter Wedder
fca556a1c1 Adds sized (S, M, L) power cells and a generic component for battery powered items (#2352)
* Refactor battery/powercell assets and add new ones.

* committing before I fuck things up

* slot component doned I think

* dictionary update

* Fixes

* Moving flashlight to powerslotcomponent

* har har i am using the message tubes

* Better documentation comment

* Reverting this overengineered garbage.

* Off with ye I said

* Examine texts.

* Some minor fixes to IDE complaints

* slot size from yaml

* Ignored component + removing a useless typo entry

* Making stunbatons use this

* Handle the message and remove some unnecessary dirtiness

* actionblocker checks

* remove unused file

* remove updatevisual

* make these nullable

* make these nullable too

* Unrename sprite folder

* check itemcomponent on insertion

* Use SendMessage over Owner.SendMessage

* Add support for auto-recharging batteries, an auto-recharging cell, and make flashlight status update correctly if one is inserted in it.

* get rid of public fields which are Bad

* add a description for the stun baton while i'm in here

* one more public field

* Add the blinky animation to the atomic cell

* Fix the charge indicator being STUPID

* better comments

* this is a better function

* add pause for flashlight, remove unnecessary imports from battery

* potato battery copyright link

* WHO DID THAT

* mr clean has come

* Random pitch

* pausing

* round to nearest levels
2020-10-29 19:17:03 +01: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
ancientpower
566ed6b770 Adds the antimatter engine (#1905)
* adds antimatter engine

* fixes some nullables

* fixes ALL OF THE NULLABLES

* adds explosions

* adds fancy lighting

* requested changes + license info

Co-authored-by: ancientpower <ancientpowerer@gmail.com>
2020-08-29 13:05:44 +02:00
Visne
0b448b500d Merge MathHelper and FloatMath
Requires  space-wizards/RobustToolbox#1234
2020-08-16 14:54:52 +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
ShadowCommander
cf45beb7dc Fix OpenCentered by setting size before position (#1604) 2020-08-06 18:06:24 -07:00
DrSmugleaf
c9057d01ae Remove 2D suffix from visualizers (#1453) 2020-07-23 00:56:53 +02:00
py01
23cc6b1d4e Power Rework (#863)
Co-authored-by: py01 <pyronetics01@gmail.com>
2020-06-28 17:23:26 +02:00
Swept
bad7f9dc6b Lots of new inhands, adds phoron (#1220)
* Beaker Inhands

* Flashlight Inhands

* Tile Refactor

* Adds metal/glass sheet inhands

* Removes plasma

* Adds Phoron

* We boolin'

* Phoron inhands

* First Pass inhand food

* First food inhand pass

* Soda inhand sprites

* Actually adds them
2020-06-25 13:51:58 +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
433198a123 Fix a bunch of compiler warnigns. 2020-06-08 14:44:11 +02:00
20kdc
a09131e817 Solar panels occlusion and tracking (#961) 2020-06-02 13:32:18 +02:00
Swept
67143b1371 Toolboxes Update (#985) 2020-05-24 18:56:19 +02:00
Jackson Lewis
6a22f2629b Update content repo and RobustToolbox 2020-04-20 10:36:02 +01:00
Pieter-Jan Briers
5edfa2db34 Re-organize style sheets and add StyleSpace. 2020-04-04 15:10:51 +02:00
Decappi
a1357a1ff3 #391 Done Lathe animations (#774)
* Draft PR, do not merge

* Lathe now uses animations. Timing is still wrong, code is very wet, repetitions and unused layers are there.

* Removed (unneeded?) PowerDeviceVisualizer from the lathe
Refactored & Renamed code and variables
Renamed animation names

* WIP protolathe animation

* Working protolathe animation.
I still don't like the solution though.
2020-03-15 17:55:20 +01:00
Pieter-Jan Briers
26da24c3c5 UI Layout v2. (#489)
* UI Layout v2.

* Lobby fixed.
2019-12-05 16:00:03 +01:00
metalgearsloth
58709d2d26 Add power cell and weapon chargers (#430)
* Add power cell and weapon chargers

Functionality's similar to SS13. The cell charger won't show the discrete charging levels because effort to not make it spam appearance updates over the network.
There's some stuff I wasn't sure on:
1. Updating power? Particularly around fixing rounding
2. Duplicating the full and empty sprites as I couldn't figure out a way to not have AppearanceVisualizer throw if the state isn't found
3. I made a BaseCharger abstract class under the assumption that when a mech / borg charger is added it would also inherit from it.
4. GetText currently isn't localized

* Address PJB's feedback

Updated the BaseCharger
* Change nullref exception to invalidoperation
* If the user doesn't have hands it will just return instead
2019-11-21 23:48:56 +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
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
9cb37a6376 UI system refactor; submodule update. 2019-08-14 22:04:35 +02:00
Pieter-Jan Briers
ceb8cc8421 Use automatic component registration. 2019-07-31 15:07:54 +02:00
Pieter-Jan Briers
248e3f686b Fix APC window. 2019-07-24 12:36:18 +02:00
Pieter-Jan Briers
ce1eab9181 Update submodule, removal of window AddToScreen. 2019-07-18 22:49:49 +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
moneyl
740c62330e Adds charge percentage label to APC (#243) 2019-05-28 20:50:12 +02:00
Pieter-Jan Briers
9c3587b00e Fix compiler warnings and remove dead code. 2019-05-28 00:30:34 +02:00
moneyl
241aa353e9 Apc variable charge bar color (#240)
* Make Apc chargebar color dependent on charge amount

* Adjust orange color and increase brightness
2019-05-28 00:15:13 +02:00
moneyl
ce9c8785d6 Add window title and breaker label to ApcBoundUserInterface 2019-05-24 18:24:07 -04:00
moneyl
e40b775f7c Added properties for several ui controls to ApcWindow
By PJBs suggestion. Cleaner to do this instead of repeatedly calling GetChild. Also changed ApcBoundUserInterface._window from an SS14Window to an ApcWindow to avoid extra type casting.
2019-05-16 13:24:55 -04:00
moneyl
2b0ca2dd8b Moved APC controls creation into the ApcWindow constructor 2019-05-15 12:31:54 -04:00
moneyl
2917a87ce7 Removed APC gui dependence on tscn file 2019-05-14 23:49:53 -04:00
Silver
a18692bc46 Rename toolbox references from ss14 to robust 2019-04-15 21:11:38 -06:00
Acruid
9d7345892f Fixes Breaking Change with UI windows. (#192)
* Custom UI window constructors were changed.

* Update Submodule.
2019-04-12 21:37:09 -07:00