Commit Graph

1086 Commits

Author SHA1 Message Date
Pieter-Jan Briers
00774e90ed Merge remote-tracking branch 'upstream/master' into 20-10-30-admins 2020-11-10 16:59:17 +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
6e3cc9e78a PDA Pen Holder (#2519)
* -Adds pens to pdas
-Adds eject pen verb

* Reviews:
-Changed Container into ContainerSlot
-Starting prototypes are now nullable
-Removed double GetComp call

* EjectPen Button
2020-11-08 23:43:13 +11:00
Remie Richards
c580423f41 Fixes. Can no longer open while cooking. Can no longer cook while open. (#2521) 2020-11-08 01:10:55 +01:00
Víctor Aguilera Puerto
50f03a5b17 Fix firelock occlusion. 2020-11-07 23:58:33 +01:00
DrSmugleaf
b5d00a2cf6 Buckle improvements (#2508)
* Buckle improvements

* Update doc

* Remove redundant argument name

* Remove import
2020-11-07 01:15:02 +11:00
DrSmugleaf
9926ef298c Move rotate event subscription from NodeContainerComponent to NodeContainerSystem (#2506) 2020-11-06 12:52:01 +01:00
Víctor Aguilera Puerto
bb3aee90b2 FloorTileItem station extension/new grid creation (#2500)
* FloorTileItemComponent can now extend the station, or create new grids.

* Fixes wrong interaction system EntityCoordinates check.
Needed for all this to work.
2020-11-06 22:38:41 +11:00
Víctor Aguilera Puerto
6a469508ca Fix every BuckleComponent subscribing to EventBus when buckled (#2504) 2020-11-06 12:38:24 +01:00
metalgearsloth
864fa0a57c Minor device network changes (#2499)
* Device network changes

* Update too

* Update Content.Server/GameObjects/EntitySystems/DeviceNetworkSystem.cs

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-11-05 18:04:21 +01:00
metalgearsloth
51d8d5dd9d Disable climbing when buckled (#2488)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-11-06 01:08:24 +11:00
Víctor Aguilera Puerto
5cac4c5917 RotatableComponent QOL improvements.
- Rotatable verbs only show if the entity can be rotated.
- Adds parameter to rotate anchored entities.
- Office chairs can now be rotated regardless of anchoring.
2020-11-04 11:21:01 +01:00
zionnBE
2faff4963a Fix block game causing server crash (#2477)
* Fix block game crashing server

* fffff i just noticed

* THIS is the correct property

* Ignore unpause if game has not started

* Init _currentPiece by BlockGame constructor
2020-11-04 18:08:47 +11:00
zionnBE
9f03fc8880 Add access restrictions to vending machines (#2471)
* Add vending machine access restrictions

* oops

* Handle null

* Flick deny upon access denied

Co-authored-by: zionnBE <zionn@tfwno.gf>
2020-11-02 22:33:12 +11:00
DrSmugleaf
6b4a39006e Make mechanism behaviors properly update, fix eating and drinking (#2472)
* Make mechanisms properly update and fix eating and drinking

* Remove outdated component ignores

* Fix nullable error

* Fix mechanism behavior events

* Remove unnecessary code
2020-11-02 11:37:37 +01:00
Markek1
b5d48e4db0 Fixed crematorium creating ash out of nothing and being allowed to cremate while open (#2473) 2020-11-02 11:31:27 +01:00
Pieter-Jan Briers
c9236d88ac Merge remote-tracking branch 'upstream/master' into 20-10-30-admins 2020-11-02 00:24:15 +01: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
Paul Ritter
172b964de4 zumo too quick (#2463)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2020-10-30 19:58:17 +01:00
Paul Ritter
f36cba8e21 Refactors machine linking to use generics (#2462)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2020-10-30 19:46:19 +01:00
Pieter-Jan Briers
711166f43a Merge remote-tracking branch 'upstream/master' into 20-10-30-admins 2020-10-30 16:23:21 +01:00
Pieter-Jan Briers
ad58a056d7 ConGroups are gone. Long live admin flags in content. 2020-10-30 16:06:48 +01:00
Paul Ritter
d8f5bffaa0 Arcade polish (#2333)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-10-30 11:25:26 +01:00
Víctor Aguilera Puerto
e9df8794da Instrument State now syncs more instrument values.
For adminbus purposes, mostly.
2020-10-30 10:34:22 +01:00
DrSmugleaf
37e97ca89f Change components to use timer component (#2426)
* Change components to use timer component

* Fix old usages of tokens
2020-10-30 15:02:49 +11:00
DrSmugleaf
57729063b7 Add a test for the weightless status (#2437)
* Add wip test for weightless status

* Expand and fix weightless test
2020-10-30 02:38:21 +01:00
Julian Giebel
45b610f933 Disposal mailing (#2194)
* Implement device networking

* Implement device configuration menu

* Fix device network

* Implement disposal mailing unit

* Implement base network connection
Implement wired and wireless network connection
Implement device network metadata

* Fix dereference null error

* Fix wired network null checks

* Change BaseNetworks enum to NetworkUtils class
Add PingResponse function to NetworkUtils
Change device network file structure

* Add doc comments

* Apply suggestions from code review

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

* Add tag validation to disposal mailing unit

* Add tag validation to the mailing unit component

* Address reviews
Change WiredNetwork can connect check
Change device networking string literals to constants

* Address reviews
Revert changes to PowerProvider and PowerReceiver
Add new NodeGroup
WELP

* Fix recursive access to Owner property

* Integrate suggested changes

* Fix TryGetWireNet acting on NullPowerProvider
Fix network connections not checking if their owner has been deleted

* Close device network connection when the owning entity got deleted
Fix mailing unit not closing the device network connection on remove

* Remove GetWireNet from NullPowerProvider

Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-10-30 01:16:26 +01:00
DrSmugleaf
ac3e9bc566 Fix weightlessness status effect appearing only after something checks if an entity is weightless (#2434)
* Revert "Add weightlessness status effect. (#2384)"

This reverts commit 9b751fc079.

* Bring back the icon and status

* Make weightless status track gravity and parent
2020-10-30 01:07:51 +01:00
ShadowCommander
23ae73d429 Fix throwing knockback when weightless (#2369)
* Fix throwing an item not moving the player when weightless

* Remove unnecessary code from ThrownItemComponent

* Fix velocity not stopping when hitting a wall after slipping when weightless

* Fix CanMove check being reversed
2020-10-30 01:06:51 +01:00
Git-Nivrak
e4261f4e57 Make dead bodies disposable (#2375)
* Make dead bodies disposable

* Formatting Fixes

* Fixed Returning False in any case

* Revert "Fixed Returning False in any case"

This reverts commit fb1e40ca44f208078816e119976779280922b4c8.

* Fixed Returning False in any case

* Update Submodule
2020-10-30 01:06:20 +01:00
DrSmugleaf
a2de32d4c4 Make CloningSystem properly reset and not use static (#2448) 2020-10-30 01:05:18 +01:00
Peter Wedder
bd4f2b41df Prettier window breaking (#2368)
* Put the damage in the windows

* add crack overlays

* Window cracking

* glass related sounds

* let's use a valid state

* run optipng on these for posterity

* Examine damage descriptions

* add "Constructible" to dictionary

* Downmix stereo effects to mono

* breaking and knocking

* Add shard etc. sprites

* shard inhands

* more sprite wrangling

* Expand destructiblecomponent drop system + implement it for windows

* Shard descriptions

* Random sprite component

* no nullbabby

* Random destroysounds

* random offset on destructible drops

* fix fucked yaml

* sound collections

* random pitch for knocking

* Localization

* hascomponent

* better spawnondestroy

* missed one
2020-10-29 20:42:11 +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
20kdc
20d60ed5d0 Add meat spike accepting humans, names meat after the source (#2390)
* Add Butcherable component to humans.

...What?

* Meat from a meat spike is now named after the source

Note: This doesn't propagate to burgers (add a component maybe)
2020-10-29 13:42:25 +01:00
DrSmugleaf
ec25dbe4a7 Fix mobs playing a falling sound when dying from crit (#2425)
* Fix falling sound playing twice when dying

* But actually
2020-10-29 20:26:23 +11:00
DrSmugleaf
f6fbe41e7c Fix conveyors changing speed depending on the tick rate (#2424) 2020-10-29 19:53:31 +11:00
Remie Richards
cc6acae145 Mortician's Menagerie (#2391)
* Body bags!

* Morgue Trays and the Crematorium!
Reorganised body bags to be under Morgue, not Medical

* Fix. Things outside of EntityStorageComponents now use the Try*Storage() not just *Storage() methods - Allows mobs to be trapped in a morgue/crematorium whose tray can't open.

* Fix tests. Modernise component dependency and nullability.

* Update Content.Server/GameObjects/Components/Morgue/MorgueTrayComponent.cs

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-10-28 23:51:43 +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
RemberBL
03d85cea1d Resolve bug that made players unable to buckle after forced to unbuckle (#2418) 2020-10-28 13:04:20 +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
Peter Wedder
e62f66e692 Access lock lockers and add some more access types (#2389)
* access lock lockers and add some more access

* Forgot something
2020-10-26 23:32:55 +01:00
Víctor Aguilera Puerto
484eb0bba4 Botany (#2357)
* plants and seeds go brrrr

* update plants

* P L A N T

* brrrr

* Hydroponics actually work! How about that?

* Reuse resource path in visualizer

* They lied to us.

* Several stuffs

* more werk

* Add a bunch of plants

* Logs go brr.

* Brrr moment.

* Remove unused method

* Important comment.

* Seed inventory, yo!

* tomato moment

* Balance consumption

* Makes hydroponics pourable

* Adds plant metabolism effect for sugar, the same as glucose.

* Eggplant moment

* Apple moment

* Corn moment

* Chanterelle mushroom moment

* prototype tweaks

* Seed extractor moment

* typo

* IPlantMetabolizable doc improvement

* I should trust my gut instinct more often.

* egg-plant.....

* localization

* Make WaterLevel and NutritionLevel setters private

* Less code repetition! Wooo!
2020-10-26 23:19:46 +01:00
Peter Wedder
7c57d10531 Implement PDA ID lights (#2397)
* add PDA id light (yaml changes pending)

* the rest of the owl

* Do it better
2020-10-26 19:35:20 +01:00
Git-Nivrak
47c88c294b Disable Pulling When Buckling an entity (#2374)
* Disable Pulling When Buckling an entity

* Update Content.Server/GameObjects/Components/Buckle/BuckleComponent.cs

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-10-26 12:00:28 +01:00
metalgearsloth
71eea91f1b Bonk power allocations (#2392)
linq bad.

Last one on my hit list is PVS but that needs a full rewrite.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-26 10:31:41 +01:00
DrSmugleaf
d460d2b64d Add a command and verb to attach a body part to yourself (#2372)
* Add attachbodypart command

* Make the slot name depend on the verb instead of the command
2020-10-25 23:16:57 +01:00
DrSmugleaf
4c46c7afce Make ExplosionHelper methods extensions (#2373) 2020-10-25 12:11:23 +01:00
metalgearsloth
ab537a0f56 Content-side grid-parenting (#2371)
Shouldn't be setting WorldPosition with these IMO.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-25 12:09:56 +01:00
F77F
c21920df6c Add examine tooltip to ghosts. (#2382)
* Add examine tooltip to ghosts.

* remove ghost name in examine tmsg. reformat time since death

Co-authored-by: scuffedjays <yetanotherscuffed@gmail.com>
2020-10-25 12:08:22 +01:00