Commit Graph

1053 Commits

Author SHA1 Message Date
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
ShadowCommander c3df5c3882
Fix exiting med scanner (#2365)
* Reorganize fields and properties

* Add exit on move to MedicalScanner

* Fix crash when MedicalScanner contains an entity

Fixes #2331
2020-10-23 10:33:27 +02:00
Pieter-Jan Briers f61aeb19e5
Fix the last of the compiler warnings. 2020-10-22 10:26:24 +02:00
Víctor Aguilera Puerto e98abd923c Fix crash related to reagent reactions 2020-10-21 23:08:31 +02: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
metalgearsloth c70066aede
Fix airlock crush (#2348)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-21 10:22:38 +02:00
Víctor Aguilera Puerto b409901806 AtmosphereSystem subscribes to RotateEvent instead of AirtightComponent.
Fixes a crime against humanity
2020-10-20 12:21:13 +02:00
DrSmugleaf 7ad46ddabf
Add arguments to part and mechanism event methods (#2293) 2020-10-19 15:23:59 +02:00
Víctor Aguilera Puerto 19d32eb4ce
Removes AtmosCooldown from TileAtmosphere, fixes various atmos issues (#2297)
* Remove AtmosCooldown

* Fix former space tiles always having an immutable gas mixture

* _tile -> _tiles
2020-10-19 14:50:16 +02:00
Peter Wedder 699f4f912f
Add a toggle flashlight verb to the PDA (#2287)
* Add a toggle flashlight verb to the PDA

* capitalization

* Remove redundancy
2020-10-18 14:52:42 +02:00
Exp a7ca11611d
Adds a Visualizer for the Gravity Generator (#2277)
* Adds Visualizer to GravityGenerator

* nullable

* snake bad

* -Reads layers from yaml
-Reads sprite states from yaml

* Fix GravityGridTest
2020-10-18 13:08:41 +02:00
DrSmugleaf 32138958ce
Make body parts properly use containers for mechanisms (#2290) 2020-10-18 11:20:10 +02:00
DrSmugleaf 34e0330187
Remove drop argument in part removal methods and reorganize code (#2289)
* Remove IBodyPart.Drop and move attach/detach logic to body part code

* Fix stack overflow
2020-10-18 11:12:17 +02:00
Víctor Aguilera Puerto 7053352e18
Brain behavior (#2284)
* brain moment + zoom is 0.5 by default

* Address reviews
2020-10-17 18:12:16 +02:00
Víctor Aguilera Puerto ca923866ff Fix AirBlocked not being taken into account in airflow blocked calculations. 2020-10-17 18:02:56 +02:00
DrSmugleaf 3989e20c29
Fix gasping for real this time I promise (#2285)
* Fix gasping I promise for real this time

* Remove comments.

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-10-17 13:21:26 +02:00
DrSmugleaf 101fa9e466
Fix mechanism events not being called properly, add test (#2279)
* Add mechanism events when added/removed to/from body/parts

* Change old usages

* Add TODO

* Remove BodyExtensions and IHasBody

* Remove unnecessary extensions and fix wrong event call in mechanism behavior component

* Complete test and fix event calls
2020-10-17 12:26:39 +02:00
Víctor Aguilera Puerto dc6fb649ea No, taser shots shouldn't be anchored by default. 2020-10-17 01:02:43 +02:00
Víctor Aguilera Puerto 524229d4b4 Port ranged weapons to EntityCoordinates correctly. 2020-10-17 00:44:47 +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 b1fe4bad01
Add client pulling prediction (#2041)
* WIP changes

* Merge conflict fixes

* Bring pull controlelr to current year

* Sync and predict PullController on the client

* Clean imports

* Slow down pullers and make pulling tighter

* Stop pulls on pullable or puller component removals

* Make pulling not occur when moving towards the pulled entity
2020-10-16 20:35:09 +02:00
DrSmugleaf bd30a73026
Add mechanism events when being added/removed to/from body/parts (#2271)
* Add mechanism events when added/removed to/from body/parts

* Change old usages

* Add TODO
2020-10-16 14:42:33 +02:00
metalgearsloth be096f7ebf
Fix airlock collision (#2265)
* Allow hitscan to go through open doors

So the door itself sets physics.Hard as false although that doesn't seem to include hard which I guess makes sense.

* Do the firelock thing

* Fix saltern

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-15 13:37:55 +02:00
Víctor Aguilera Puerto 6be80c119b
Rename last usages of Collidable to Physics (#2258) 2020-10-14 22:44:31 +02:00
DrSmugleaf e9d9618c8f
Change ThrowHelper methods to be extensions (#2254) 2020-10-14 22:41:44 +02:00
DrSmugleaf 6bd29b4ed0
Nerf gasping and reenable metabolism (#2261) 2020-10-14 22:32:06 +02:00
DrSmugleaf 41cbcc85e0 Rename last usages of Collidable to Physics 2020-10-14 20:16:57 +02:00
DrSmugleaf cdedaeb12e
Refactor drag and drop to use a shared interface (#2012)
* WIP in progress hours

* Cleanup

* Fix bugle

* Fix nullable error

* Merge fixes

* Merge fixes

* Merge fixes
2020-10-14 15:24:07 +02:00
DrSmugleaf cd93711ba6 Fix missing localization for gasping
You can now gasp in multiple languages at once
2020-10-14 11:24:41 +02:00
DrSmugleaf e7fb849e22 Fix StrapComponent erroring when being removed with buckled entities 2020-10-14 00:19:30 +02:00
Paul Ritter 844e4f6e50
The power of componentdependencies (#2211)
* stuff

* bucklemeup

* powerreceiver

* things

* Update RobustToolbox

* Fix nullability errors

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-10-13 21:51:54 +02:00
Exp 47ba7fc690
Crayons (#2132)
* -Added Crayons + CrayonBox
-Can set any crayon state and color
-Added CrayonDecals

* Allows to cycle through decals (not the final thing)

* ItemStatus

* -UI (WIP)
-Selection thing works
-Changed some shitty state names

* -Icons
-Changed decal name

* Pure Texture Grid

* Charges

* -Reach check
-Toggle interface on use

* Can't draw on windows anymore

* UI now shows selected decal and color

* -UseSound
-Nullable

* Remove unused imports

* -Rotation
-Made decal abstract

* Remove some duplicate images

* Space Cleaner cleans

* Loc Title

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Review adressed

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-10-13 13:40:05 +02:00
Exp cb29db60d1
Closes UI when the panel closes (#2242) 2020-10-13 11:42:12 +02:00
metalgearsloth 4c72109cdf
Allow hitscan to go through open doors (#2240)
So the door itself sets physics.Hard as false although that doesn't seem to include hard which I guess makes sense.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-12 14:38:35 +02:00