Commit Graph
100 Commits
Author SHA1 Message Date
20kdc 545e36912a Hybrid ACZ build option & add (off-by-default) 32-bit platform RIDs (#5453) 2021-11-23 14:26:26 +01:00
20kdc 1e061094ca Direct pressure and asphyxiation damage do not interrupt DoAfters anymore (#5459) 2021-11-22 17:34:56 -07:00
20kdc 1ba58456c4 Announcements play the general announcement sound unless specifically inhibited (#5460) 2021-11-22 15:34:48 -07:00
20kdc 669eb8fadd Do not allow starting pulling while cuffed (#5457) 2021-11-22 12:31:12 -07:00
20kdc c1c3875f5a Make the docking direction of the docking airlocks clearer (#5433) 2021-11-22 00:26:19 +11:00
20kdc 3d940cc1d6 PackedStation: More markers (#5364)
* PackedStation: Add lots of rubbish markers, add some traitor deathmatch PDA redemption machine markers, name northern solars warp point

* Some additional changes @TimrodDX asked for: Nudge a light back into place and un-drain some tanks
2021-11-19 22:26:57 -07:00
20kdc 73ca553ad4 Have medical scanners and cloning pods be 'climbed upon' on exit. (#5408) 2021-11-19 18:03:09 -07:00
20kdc 4122794efa Knightship: Floor fix (#5407) 2021-11-19 17:54:25 +01:00
20kdc 3d023bdfd7 "Knightship" map - ultra-lowpop intended for ~5 people (#5378) 2021-11-19 11:45:18 +01:00
20kdc 856e570c7b Stop BatterySystem from iterating over every battery just to recharge micro-reactors (#5393) 2021-11-18 20:02:17 +01:00
20kdc 8c98038692 fixrotations fixes rotations properly again (#5292) 2021-11-17 12:00:58 +11:00
20kdc adefa610e0 Fix pneumatic cannon audio location (#5370) 2021-11-16 14:05:19 -07:00
20kdc cc41896836 TraitorDM: Fix round end description line (#5363) 2021-11-15 17:52:10 -07:00
20kdc 4cce40bd9f Ghost roles create new minds, better tracking of roles at round end screen (#5175)
* Ghost roles now get new Minds

* Some round start/end button stuff

* Mind tracking for better round end reports

* Make traitor kill objectives use mind CharacterName rather than actual occupied entity ("kill brain" prevention)

* Transition over to EntityUid for mind stuff because that's the only way to do it

* BrainSystem fix for PR rebase
2021-11-15 11:14:34 -07:00
20kdc 5833096551 Changelog fix to get rid of blank line and properly assign credit (#5355) 2021-11-15 15:26:11 +01:00
20kdc 44eb4e8fc9 MIDI volume slider in settings (#5327)
The Fluid soundfont is too quiet, the Windows one might be too loud...
2021-11-14 10:44:36 +01:00
20kdc af29034218 No pulling yourself via your chair (#5324) 2021-11-13 22:43:37 +01:00
20kdc 22da6e40c4 Flipping fixes (ensuring unanchored, rotation preservation) (#5296) 2021-11-13 12:54:03 +11:00
20kdc 79f917cf35 Properly reset the solars system each round, solar panels perf fix (#5295) 2021-11-12 20:00:39 +01:00
20kdc baf4904060 Ghost roles: rule stuff (#5252)
* Ghost roles: Make the rules harder to miss

* Fix markup handling in ghost rule rules

* Apply suggestions
2021-11-11 21:23:06 -07:00
20kdc 1194ce737b Add "Syndicate Puddle-Jumper" blueprint for admins to spawn in (#5273)
* Add "Syndicate Puddle-Jumper" blueprint for admins to spawn in

Serves as a way to let admins cause nukies.

* Unit test to make sure that maps remain loadable
2021-11-11 19:42:27 -07:00
20kdc 0c0a60e432 Stop Item EntityStorages being able to eat people (#5268) 2021-11-11 23:56:38 +11:00
20kdc dae33d14df Alert the user if nobody's around to hear a bwoink (#5147) 2021-11-11 10:47:45 +01:00
20kdc 2d680fe3bb Fix escaping from storages by movement attempt (#5256) 2021-11-11 00:07:05 +01:00
20kdc 206f054cdf Pulling rotation adjustment, newton's third law, entitycoordinates for moveto (#5141)
* Pulling: Piano door stuck prevention (pulling angle-snap) and getting rid of a condition causing oddities with pull-to-location

* Pulling: Implement Newton's Third Law in regards to puller/pullee physics

Weightless condition was determined not to be necessary

* Fix pull-to-position on actively rotating/moving grids + fixes for rebase
2021-11-06 19:16:49 -07:00
20kdc d9cc7ef7d4 Stop pAIs from being able to wipe each other/do other odd things, pAIs name themselves after their owners (#5160)
* Stop pAIs from being able to wipe each other/do other odd things they shouldn't

* pAI: device changes name to indicate owner

* Make PAIComponent networked (just in case)

It'll be needed in future anyway
2021-11-04 15:29:16 -07:00
20kdc 78ac5b8ec0 Saltern: Add 4 pAIs (2 in dorms, 2 in R&D), toy spawners on dorms tables, remove reinforced glass from solars (#5158)
* Add 4 pAIs (2 in dorms, 2 in R&D) and toy spawners on dorms tables

* While I'm modifying things, remove reinforced glass floors from solars
2021-11-04 15:11:07 +01:00
20kdc 42891ea3a7 Chem master / chem dispenser minor fixes (#5152)
* Fix ChemMaster buffer view when there's no beaker in the ChemMaster

* Fix reagent dispenser 100 button
2021-11-03 20:22:48 -07:00
20kdc 9eb6e5a109 Add indicator showing amount of ghost roles available (#5150)
* Add indicator showing amount of ghost roles available

* Make the indicator turn red if ghost roles are available
2021-11-03 16:48:12 -07:00
20kdc 956afbf1f1 Pinpointers: Remove pinpointers from active list on shutdown of compo… (#5153) 2021-11-04 00:42:22 +01:00
20kdc 7ced7b67c7 Fix barstool rotation (#5134) 2021-11-02 19:38:47 +01:00
20kdc 7220132be3 ChemMaster/Chemistry Dispenser constructability, fixed edition (#5125) 2021-11-02 10:04:07 +01:00
20kdc 7a03f00cfd Placeholder pAIs, ghost role rules window (#4972) 2021-11-02 11:42:04 +11:00
20kdc 02df91b39c Fix cable blocking not working properly due to inconsistent field naming (#5109) 2021-10-31 01:08:48 +02:00
20kdc 44f5f15790 Power-reading multitool (#5046)
* AMEPartComponent: Switch to ToolSystem.HasQuality because this bugs me.

* Multitool can read power when you examine a cable with the multitool held.

* Multitool power reading: Condense storage information

* power-sensing multitool: Fix ToolSystem ref.

* Power-reading multitools: Fix misuse of GetComponent
2021-10-29 14:42:18 +02:00
20kdc efc200cbd8 More informative warning for if FluidSynth is not installed (#4971) 2021-10-29 12:20:49 +02:00
20kdc bddce95e37 Switch from drainallbatteries to a drain/fill-specific-battery command for saner eventing (#5077)
* drain all batteries / drain battery command for saner eventing

* Reverts the part of the previous commit where drainallbatteries skips items, despite my better judgement

* setbatterypercent now takes the place of battery drainage commands

A more forall-oriented approach
2021-10-29 11:49:52 +02:00
20kdc 7cdb9dcf86 Disposals fixed under station rotation (#5067)
* Some sanity checks on disposals movement, fix the interpolator

* Technically fix disposal routing, but I'm not done here yet

* Remove disposals reliance on implicit direction sensing entirely.
2021-10-29 19:07:32 +11:00
20kdc bf48a42b6f Give the Engi-Vend insulated gloves (only one machine in engineering) (#5049)
This is because engineers end up not having enough insulated gloves to go around.
Kinda bad.
2021-10-27 17:44:31 +02:00
20kdcandmetalgearsloth 687427d324 Lower Saltern generator power to balance things out (#4749)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-10-27 10:32:06 +02:00
20kdc 60b3ff59cf Fix morgue rotation by using more EntityCoordinates (#5041) 2021-10-27 12:23:44 +11:00
20kdc 632a4bcd95 Apc and light construction partial fix (#5030)
* Fix APC placement type

* Fix wall tags.

* Change wall light placement to match how it actually is now

* Change spawn-entity wall light snap mode

Separate commit so it can be nixed out for JREV

* Default switch placement mode to SnapgridCenter
2021-10-26 16:15:02 +02:00
20kdc c29b23eb64 Fix ChemMaster bottles not having contents (#5026) 2021-10-25 16:58:16 +02:00
20kdc 7f4c9327e2 Fix construction to some extent on rotated grids (#5024)
* Fix things to some extent on rotated grids

* Use Box2Rotated overload of IEntityLookup in GetEntitiesInTile
2021-10-25 16:14:21 +02:00
20kdc 63dd23ad8c Fix RCDs on space somewhat - space-wizards/space-station-14#4742 compatibility edition (#4878) 2021-10-25 14:33:49 +11:00
20kdc 67c690e27f Saltern: Add SMESes/SMES terminals, nudge random trash spawner (#4966) 2021-10-21 14:25:20 -07:00
20kdc 6fb968d47f Set default Pow3r ramp rate/tolerance values (#4748) 2021-10-20 20:31:53 +02:00
20kdc 7ccf9668d4 Varied and semi-sprited atmos markers (#4944) 2021-10-19 21:07:47 +02:00
20kdc 607ec67522 Movable containment field generators (#4910) 2021-10-19 00:24:07 -07:00
20kdc 09d713e1f8 Make freezers rotatable (#4940)
* Make freezers rotatable

* Fix freezer sprite oddities via the noRot use

Has to be done this way for what is essentially consistency reasons
2021-10-19 00:22:41 -07:00
20kdc 6c6bde8743 FoodComponent solution un-hardcoding, rehydratable solution name fixes, monkey cubes edible again, slicable food preserves poisons (#4942) 2021-10-19 00:13:43 -07:00
20kdc 1a4316c4cc Fix pipe rotation. (#4939) 2021-10-18 13:42:30 +02:00
20kdc c5e7457206 Hydroponics tray machine board (#4889)
* Frame/soil anchored fix

* Ability to build and deconstruct hydroponics trays

* Undo pointless adding of anchoring to soil
2021-10-17 23:12:50 -07:00
20kdc c95c5e02c2 fixgridatmos blockers (#4911)
* FixGridAtmos blocker

* FixGridAtmos blockers in Saltern
2021-10-17 14:32:17 +02:00
20kdc 806168eca1 Saltern: Security substation made more secure, solars, tweaks (#4904) 2021-10-16 20:02:40 +00:00
20kdc 10dc8d78cf Makes the solar control computer accessible by adding the board to the lathe (#4869)
* Makes the solar control computer accessible by adding the board to the lathe

* Adjust solar panel collision to not be insanely big
2021-10-14 17:05:04 -07:00
20kdc 41256cc84e Radiation pulse damage reduction (#4872) 2021-10-14 18:02:07 +00:00
20kdc dfe500a8bb Re-add monkey cubes to Cargo (#4858)
Without these, the Chef kinda just has to deal with fruit eventually.
2021-10-13 10:14:33 -07:00
20kdc 6d7b037dd6 More injectable food, condiment fixes, migrate Salt to TableSalt (#4846) 2021-10-13 10:03:12 +02:00
20kdc 88bee5b878 Allow injecting into foods again (#4845) 2021-10-12 17:01:06 +02:00
20kdc e144bb53f5 Fold Produce's "produce" solution into the "food" solution to fix empty food (#4837)
One of these was going to have to be folded into the other for it to work.
I am starting to really hate this refactor.
Note that this might still leave smokable tampering broken if it was already broken, but it shouldn't break it if it wasn't.

TESTED: Grown apples, carrots, something I forgot, bananas, *client crash due to slipping*
2021-10-12 10:01:23 +02:00
20kdc 59277d8f86 Ensure pulling maximum length is at least 1 to avoid errors (#4808) 2021-10-09 15:49:08 +02:00
20kdc 4f5cbb63de Paper Visualizer (#4811) 2021-10-09 15:48:53 +02:00
20kdc 341b4458fa Expand Saltern's north-eastern maint a bit (#4810)
Just to give more room for the lockers.
2021-10-09 13:06:34 +02:00
20kdc b3f43509d1 Basic AHelp Panel, Ported & Fixed (#4776)
* Graft from https://github.com/space-wizards/space-station-14/pull/3049

* 'openahelp' command

* Add AHelp into escape menu

* Add a way to ahelp a player from the kick window

* bwoink: XAMLify, bugfix, etc.

* Rename the kick/bwoink window the Player Actions Panel

* Add the bwoink sound y'all know and love

adminhelp.ogg taken from https://github.com/tgstation/tgstation/blob/d775e1ac804eb9d0259573f5f29a18d320c97ef3/sound/effects/adminhelp.ogg
 (available in master, therefore see master license: "All assets including icons and sound are under a Creative Commons 3.0 BY-SA license unless otherwise indicated.")
 "Changed the adminhelpsound to some creative commons sound I pinched. Until somebody can get a better one. I'm sick of MAAAAAAAAOOOOOOW."
 Actual source is https://freesound.org/people/martian/sounds/19261/ (CC0)
 The sound had been reversed and the volume altered.

* Actually play the bwoink sound on receiving an ahelp that you didn't send
2021-10-06 17:25:27 +02:00
20kdc 021f281dfc Fix pulling HandleComponentState (#4773) 2021-10-05 14:51:34 -07:00
20kdc 2a8486a384 Pullability partial ECS refactor, monkey-gibbing error fix (#4695)
* Migrate lots of pulling logic out of the components and clean it up

* It's buggy, but move more code out of the pullable component

* Pulling system now throws less errors than it did before the refactor

* Finally finish the big parts of refactoring pullability

* Pulling: Handle disconnect properly if the pull joint has been removed by physics shutdown

* Port 2b68449328 to this branch

* Changes as per PR reviews

* Port e801ffac45 (SharedJointSystem) and fix issues encountered during testing

SharedJointSystem.

Also, MinLength and Stiffness appear to have suddenly gained enough meaning that pulling is broken unless they're set.
2021-10-04 17:10:54 +02:00
20kdcandmetalgearsloth ecbf8621a7 Make radiation storms occur at least somewhat near the station (Revision 3: LocalBounds) (#4745)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-10-03 18:26:45 -07:00
20kdc 2b67a22485 Stop casting AME energy into int because it underflows. (#4762) 2021-10-03 17:58:54 -07:00
20kdc b114f4a523 Update UI when the AME node group is changed, fix AME connection issues (#4750)
* Update UI when the AME node group is changed (fixes core count indicator being wrong)

* Fix connection issues between AME controller and cores

* Fix #4365 by properly propagating and clearing AME core injection state

* Fixes #4364
2021-10-03 13:33:28 +02:00
20kdc bae033d6c3 Ghosts are now spawned specifically via map coordinates (#4747)
Ought to fix #3987 and ghost blackscreen
2021-10-03 15:51:23 +11:00
20kdc dbc92afa09 Fix singularity test map (#4744)
./Content.Server --cvar game.map=Maps/Test/singularity.yml
2021-10-02 16:44:15 -07:00
20kdc eb82dd3dae Fix #4070, Visualizer Edition (#4730)
* Transform the Cloning Pod visualizer into a generic enum visualizer for simple cases like it

...I find it helpful at times like these to remind myself that our true enemy is
code. Code is what makes our programs run and generally is required for all of
these machinations to function in any way at all...

* Give the kitchen/meat spike a visualizer

* GenericEnumVisualizer: Byteify enums, switch to TryGetComponent for sprite
2021-10-02 16:43:47 -07:00
20kdc 201b1bec89 Fix time management bugs in RadiationPulseSystem (#4743) 2021-10-02 10:53:09 -07:00
20kdc 77c5e7a5ed Migrate cuffing to an uncuff attempt event and allow self-uncuff again (#4725)
* Migrate cuffing to an uncuff attempt event and allow self-uncuff again

* Uncuff attempt event: Use more SubscribeLocalEvent and Dependency attributes
2021-10-02 00:17:36 +02:00
20kdc 9600c8e983 Fix various solution capability issues (syringes, drinks) (#4687)
* Fix syringe message stating you're attempting to draw from yourself when you aren't

* Fix various missing capabilities (syringes, beakers, drinks)

* And fix mug inject/dispense/etc, too!

* Injectors can now refill things, and switch over drinks and cups thereof to be refillable rather than injectable
2021-10-01 12:06:50 +02:00
20kdc 5ead162b09 Fix chair rotations (#4688)
Wooden chairs are rotatable, metal chairs have anchored set properly, all chairs and stools don't rotate weirdly visually
2021-09-23 15:44:59 -07:00
20kdc ba619929ad Un-rotate gravity generator (#4675) 2021-09-22 12:55:00 +02:00
20kdc 646cb5861d Some Saltern wiring fixes: remove some overlapping wires & two bridged APCs (#4568) 2021-09-08 23:37:19 -07:00
20kdc cdb0727d78 Fix PA construction crash, make it clear that PA construction needs LV cables (#4506) 2021-08-22 17:50:43 +02:00
20kdc a2f5c953dc Refactoring of solar control console (#4072)
* Refactor/fix client-side of solar control computer (introduce ComputerBoundUserInterface & fix bugs)

* Refactor server side of solar control computer (introduce BaseComputerUserInterfaceComponent)

* If you can't interact, then messages to computers are blocked.

* Add 'not powered' messages, migrate activation logic partially to an EntitySystem

* Move solar control console to a XAML UI

* Remove useless comment on UserInterfaceKey

* BaseComputerUserInterfaceComponent: Remove EnsureComponent<PowerReceiver>, it's not necessary

* Fix solar panel occlusion check direction

* Solar Control Console refactors/etc. : Handle namespace renames
2021-06-17 00:49:02 +10:00
20kdc 561a5bc0f2 Cloning error messages and prediction based timing (#4013)
* Cloning error messages and prediction based timing

* Cloning error messages & prediction based timing: Fix problems mentioned in reviews
2021-06-06 03:32:59 +10:00
20kdc 2f821f2bc3 You can now return to a brain. Also, clean up terrible console misuse. (#4092)
* You can now return to a brain. Also, clean up terrible console misuse.

* Get rid of Obsolete attribute on Ghost.Execute
2021-06-03 01:03:19 -07:00
20kdc 6a78c401bf Singularity Fixes, Part 3 (#4105)
* Hopefully make singularity shader warping resolution-invariant

This may or may not fix intensity issues

* Fix singularity 'zero velocity' check

It got stuck in a corner. Twice. I really thought I'd fixed that.

* Make it easier to move around various power stuff by shrinking their AABBs a little and making singulo generator a circle

* Changes to some machine prototypes to reduce duplication of collision changes (#1)

* Changes to some machine prototypes to reduce duplication of collision changes

* BaseMachine.BaseMachineUnpowered -> BaseMachine.BaseMachinePowered
2021-06-03 00:55:50 -07:00
20kdc a3d9562532 Makes the singularity engine actually work stably. (#4068)
* Add GNU Octave script for tuning singularity engine. startsingularityengine is now properly tuned & sets up radiation collectors. FTLize RadiationCollectorComponent.

* Fix bugs with radiation collectors producing infinite power.

* Ensure singularities don't instantly annihilate other singularities (causing new singularities to instantly dissolve)

Technically found by a "bug" where a singularity generator would make multiple singularities, but this renders that bug harmless.

* Tune singularity shield emitters to hopefully randomly fail less, and add an Octave script for looking into that

* Fix singularity shader

* Map in an unfinished PA into Saltern

* Correct PA particles being counted twice by singularity calculations, add singulo food component

* Hopefully stop "level 1 singulo stuck in a corner" issues by freezing it when it goes to level 1 from any other level

* Apply suggestions on 'jazz' PR
2021-05-28 11:44:13 +02:00
20kdc c7f104cd93 More rotatability (#4067)
* Make barstools, PA components, and radiation collectors rotatable.

Making barstools rotatable is so that people can spin on the barstool. (RP moment.)

The other two are more "functional" changes for assembling a PA.

* Allow rotating a rotate-while-anchored object if you're buckled to it.

Barstool spinny

* Fix bug with rotation of an object that someone is buckled to

* BuckleSystem: Efficiency improvements with directed events

* Don't need to unsubscribe anymore from events, so in BuckleSystem, just don't
2021-05-27 12:51:14 +02:00
20kdc cf6fdd40e0 Tune pull-to-location constants just a bit more so it gets stuck less often (#4077) 2021-05-27 12:48:37 +02:00
20kdc ddcfc774a6 Gives spears some damage to let them actually be useful (#4083) 2021-05-27 12:47:49 +02:00
20kdc cb9bef0b94 Thrown items become not-thrown if you start pulling them. (#4082) 2021-05-27 12:47:39 +02:00
20kdc 136928ecb8 Fix exception in IconSmoothSystem where it tries to get a grid that doesn't exist (#4064)
This finally ought to actually kill the bug for real this time. Hopefully.
2021-05-24 16:39:57 +02:00
20kdcandShadowCommander e88c092c3c Bring singularity back from the brink of "particles don't even hit" (#3963)
* Bring singularity back from the brink of "particles don't even hit anything"

* Remove force-disable-hard from singularity code so it doesn't just ignore containment

Shouldn't this be the prototype's job if they want that so much?
This might have some sorta downside, but this brings singulo back into being containable

* Apply ShadowCommander's suggested layers/masks for particles

Tested, singulo properly spawns and develops with this mask

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2021-05-23 21:14:15 -07:00
20kdc 7598684e88 Make IconSmoothComponent more failure-tolerant of the grid not being available (Fixes power stuff disappearing) (#4063)
This (hopefully) fixes power stuff disappearing by making IconSmoothComponent more failure-tolerant of grids not being available.
It might still leave issues in, though.
2021-05-23 20:18:36 +02:00
20kdc efc5fac7ec Fix dropping an item on a translated grid (#4027) 2021-05-19 19:26:01 +02:00
20kdc f6a2daffa9 Objectives all use a consistent definition of "dead" defined in Mind now. DieCondition is no longer inverted. (#4006)
More brain fixes, mainly
2021-05-15 17:46:55 +02:00
20kdc 438b60310d Various Paper adjustments (#3993)
* Various Paper adjustments

+ can now have prefilled text
+ cleaned up paper sprite layering a bit,
+ adds an AME manual as a test but doesn't put it anywhere
+ Paper cannot write arbitrary Examine markup

* Paper component doesn't show text on examine anymore
2021-05-15 17:43:19 +02:00
20kdc 23bc33a7aa drainallbatteries - a command for testing low-power conditions (#3983) 2021-05-13 01:12:36 +02:00
20kdc 3476d1de5b Fixes KillPersonCondition considering brains "alive" (#3985) 2021-05-13 01:11:26 +02:00
20kdc e0f7ca7740 Little component to make batteries examinable. (#3982) 2021-05-13 01:10:57 +02:00
20kdc 743a12750c Pull controller manages velocity better than it did before. (#3945) 2021-05-11 18:32:11 +10:00
20kdc cc8458f23c Add "fixrotations" command to fix rotations of walls/windows/low walls (#3069)
* Add "fixrotations" command to fix rotations of walls/windows/low walls

* fixrotations: Migrate command to new command structure
2021-02-12 21:13:32 +11:00