Commit Graph

1174 Commits

Author SHA1 Message Date
FL-OZ
aa26bdfcae Rework Drink/Food/FoodContainer entirely (#1009)
Co-authored-by: FL-OZ <anotherscuffed@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-05-29 22:50:23 +02:00
FL-OZ
4c20a504a5 Add basic PDA/Syndicate Uplink. (#942)
Co-authored-by: FL-OZ <anotherscuffed@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-05-28 13:22:47 +02:00
FL-OZ
5316d599b6 Add Banjo instrument, ya'll 2020-05-24 23:56:04 -05:00
Swept
8860ca6e2c Crowbar, Wrench, Welder inhand (#990) 2020-05-24 21:44:22 +02:00
Swept
67143b1371 Toolboxes Update (#985) 2020-05-24 18:56:19 +02:00
Pieter-Jan Briers
81f778b2a9 Adds observer spawn points. 2020-05-24 16:58:32 +02:00
Pieter-Jan Briers
313cccb24f Drill and jaws inhands. 2020-05-24 15:00:12 +02:00
Víctor Aguilera Puerto
1c00bf2855 Merge pull request #865 from Zumorica/2020-04-28-tool-component
Tool refactor, multi tools
2020-05-24 13:42:02 +02:00
Pieter-Jan Briers
4b7937b4a1 TG marker sprites. 2020-05-24 01:46:33 +02:00
zumorica
3029e31e4a Merge branch 'master' into 2020-04-28-tool-component
# Conflicts:
#	Content.Server/GameObjects/Components/AnchorableComponent.cs
#	Content.Server/GameObjects/Components/Gravity/GravityGeneratorComponent.cs
#	Content.Server/GameObjects/Components/Interactable/Tools/CrowbarComponent.cs
#	Content.Server/GameObjects/Components/Power/PowerTransferComponent.cs
#	Content.Server/GameObjects/Components/WiresComponent.cs
#	Content.Server/GameObjects/EntitySystems/Click/InteractionSystem.cs
#	Resources/Prototypes/Entities/Items/tools.yml
2020-05-23 12:02:34 +02:00
Pieter-Jan Briers
1cb1bd5a8f Randomize wirecutter and screwdriver colors. 2020-05-23 02:14:11 +02:00
zumorica
d2d6c2cecd Merge branch 'master' into 2020-04-28-tool-component
# Conflicts:
#	SpaceStation14.sln.DotSettings
2020-05-22 11:31:18 +02:00
Víctor Aguilera Puerto
b270c69512 Merge pull request #911 from Zumorica/2020-05-13-stuns
Adds StunnableComponent, Stunbaton...
2020-05-21 19:48:19 +02:00
Víctor Aguilera Puerto
312e8f17a5 Merge branch 'master' into 2020-04-28-tool-component 2020-05-19 14:19:45 +02:00
zumorica
8668c78f43 Stun baton sprites 2020-05-14 15:38:17 +02:00
GlassEclipse
27d27f2b59 Body System Part 1 POGGERS!!! (#855) 2020-05-13 21:48:49 +02:00
Swept
a0e839a6ad Fluff 2020-05-12 02:08:39 -07:00
zumorica
6ae5e36a18 Merge branch 'master' into 2020-04-28-tool-component 2020-05-11 12:24:43 +02:00
Pieter-Jan Briers
fe23fdb620 Merge branch 'master' into kitchen 2020-05-05 11:35:20 +02:00
FL-OZ
46ef79af60 Delete microwave.dmi, unneeded. Revert accidently changes to Shared EntryPoint.cs 2020-05-04 00:16:05 -05:00
Pieter-Jan Briers
cdf4127a86 Fix lathe recipe texture references.
Closes #860
2020-05-02 16:09:46 +02:00
FL-OZ
b2aca9a686 Add microwave visualizer. Clean up microwave code. 2020-05-01 03:37:21 -05:00
zumorica
ff5549a0d1 Finish refactoring tools. Add multitools. (as in multiple tools in one) 2020-04-29 13:48:32 +02:00
FL-OZ
d0f18b2f66 Add Eris microwave RSI.
Cleaned up  the Microwave component code.
2020-04-28 19:15:43 -05:00
Pieter-Jan Briers
a5de12e4cf Inhands for multitool and screwdriver
Also makes power debug tool its own thing.
2020-04-25 13:55:16 +02:00
Pieter-Jan Briers
9753c80958 Mop sprites and wet floor sign. 2020-04-24 23:43:52 +02:00
Pieter-Jan Briers
290b3595bc Handcuff props. 2020-04-24 14:59:03 +02:00
Pieter-Jan Briers
c07c0c0032 Taser prop. 2020-04-23 23:51:01 +02:00
Pieter-Jan Briers
6cad18bff4 Potted plants from TG. 2020-04-23 13:56:16 +02:00
Pieter-Jan Briers
74a4cc63cc Utensils. 2020-04-23 01:40:18 +02:00
Injazz
8f580ecc1b Visually updates contents of the beaker
also adds new syringe sprite from eris
also adds colors to ALL reagents
2020-04-09 16:43:56 +05:00
Swept
3e9b93faee Adds Skub (#740)
* Added Skub

* Added Skub crafting recipe
2020-02-28 14:58:25 +01:00
moneyl
1b7860aeda Add injectors + injected reagent metabolism via BloodstreamCompo… (#730)
* Add BloodstreamComponent and BloodstreamSystem

New component for metabolizing reagents that other organs like the stomach pass their input reagents to.

* Change StomachComponent to put ingested reagents in bloodstream after delay

Now StomachComponent does not metabolize any reagents. Instead, it tracks how long each reagent has been inside it, and once they pass "digestionDelay" they'll be put inside the bloodstream, where the bloodstream will handle metabolism of the reagent.

* Add reagent injectors

Injects reagents straight into the bloodstream when used on mobs with bloodstreams. Also allows draw/inject from beakers. Does not support drawing blood/reagents from the bloodstream yet.

* Address code review

Make use of `Loc` static class instead of using `ILocalizationManager`. Localize InjectorToggleMode enum properly.
2020-02-24 01:47:33 +01:00
metalgearsloth
847acd6401 Fix gun sprites and names (#734)
Addresses #606

Sprites fixed so no short versions used (for now) and some of the extra states were removed (clarissa).

When I originally PR'd pascal case wasn't the decided name so I also updated the IDs.
2020-02-23 14:44:15 +01:00
py01
b2b8021d9b Adds rsi sprites for bureaucracy items, fixes pen and paper spri… (#711) 2020-02-17 00:16:06 +01:00
adrian
9544099c99 Paper and pen (#582)
* A very basic paper and pen implementation

* Removes SharedWriteComponent

* Update ContentNetIDs.cs
2020-02-12 00:01:05 +01:00
Víctor Aguilera Puerto
fedc0ad71c Adds playable instruments, IDropped, IHandSelected and IHandDese… (#368)
* Instrument test.

* Midi stuff

* Some more work

* This actually works now!

* update

* Midi Audio works!

* Lots of stuff, and cool interfaces for items

* Update

* Fix a few things

* It just works

* Move textures to another folder, remove placeholder description from instruments

* Fix warning

* Use renderer enum

* Instruments now use DisposeRenderer method, and send MidiEvents as they receive them. Deletes InstrumentSystem whoo.

* Fix incorrect sprite paths

* Instruments take midi file size check into account when enabling/disabling midi playback buttons

* Fix crash when pressing drop on empty hand.

* Use new renderer return values for midi/input

* Xylophones are no longer handheld instruments, fix their sprites.

* Use new API

* Remove nfluidsynth from solution

* Timing information

* Use IGameTiming.CurTime for timestamps instead
2019-11-25 00:11:47 +01:00
Ephememory
d63c879404 Crowbar floor tiles and placement (#429)
* Adds tile removing behavior to CrowbarComponent.
Add FloorTileItemComponent.
Add genhit.ogg
Add tile.png for testing

* fixes

* Gives ContentTileDefinition a default value for tile item to drop.
Adds a few more tileitems.

* Changes per review request

* move stack.use and if statement
2019-11-23 22:10:05 +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
metalgearsloth
de148fc98f Add hunger and thirst (#363)
* Add hunger and thirst

Based on the SS13 systems.
Food (Nutriment) / Drink -> Stomach -> Hunger / Thirst

* Cleanup rebase

* Cleanup stuff that was prototyped

* Address feedback

Still need to add a statuseffects system in a separate branch

* More cleanup on nutrition

Fix Remie's feedback and also damage tick.

* Re-implement nutrition with master

* Updated to use the StatusEffectsUI update
* Removed all clientside components as they only receive the UI updates now
* Implemented PR feedback
* Had to make a slight adjustment to the chemistry SolutionComponent given it doesn't have an Owner, same with Solution

Still TODO:
* Metabolisation effects
* Change drink contents to alcohol / wine etc.
* Add items to the dispensers
* For transparent containers use RecalculateColor

Could probably genericise DrinkFoodContainer as well to be a temporary item dispenser

* Fix broken bottle parent
2019-11-11 22:20:03 +01:00
moneyl
e8679d9308 Add chemistry sprites. Move existing ones into RSIs (#401)
* Add chemistry sprites and move existing ones into RSIs

There are already a few chemistry sprites that are sitting loose in folders. More of them will be needed soon such as pill and other chem machine sprites. This adds RSIs with chemistry sprites from CEV-Eris and moves existing ones into the relevant RSIs.

* Separate machine screens into their own sprites.

Separates screens and machines into their own sprites.
2019-11-03 15:33:23 +01:00
Swept
8a6751711a Changed the color of buckshot and bullets (#409) 2019-10-24 22:04:35 +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
Swept
66c327805f Added a bunch more textures (#356) 2019-09-24 22:15:26 +02:00
metalgearsloth
b62fb4a318 Add ammo boxes (#325)
Same as magazines except they can't be loaded into a weapon.
You can transfer ammo to and from magazines / boxes freely where the caliber matches so you don't need to necessarily match the magazine type.
Used popups to reflect transfer amount.
Also fixed the mag sprite showing as 0 capacity on spawn and the 10mm smg flash magazine prototype
2019-09-03 22:35:19 +02:00
metalgearsloth
03ac153417 Fix 9mm guns (#311)
I r dumb.

Fix calibers and fix my script import of the top-mounted image.
2019-08-25 13:00:37 +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
DamianX
f0053f15bf Added pickaxe, asteroid rock and floors (#301) 2019-08-21 22:50:15 +02:00
Sauberstaub
4cd99fc624 his name chef 👨‍🍳 (#290)
* his name chef

* fixed inhand sprites!!!!!

* typo fix
2019-08-07 20:56:08 +02:00
Pieter-Jan Briers
de334904b4 Spears get inhands. 2019-08-02 22:45:41 +02:00