Commit Graph

224 Commits

Author SHA1 Message Date
Swept
37c13099ad Fixes a problem with gloves (#754) 2020-02-28 14:57:25 +01:00
CC-4477
cbf3357c13 Added "mm" to boxes.yml into .45mm ammo containers (#739)
Co-authored-by: Check your git settings! <chris@chris-laptop>
2020-02-25 22:36:49 +01:00
Víctor Aguilera Puerto
090dd8cee8 ControlMob verb and command (#724)
* ControlMob verb and command, mobs have MindComponent by default

* Use IActorComponent instead of MindComponent for User entity.
Fixes using Control Mob while aghosting/visiting an entity.

* Use static Loc class
2020-02-24 03:49:40 +01:00
Pieter-Jan Briers
8a5e879633 Glass airlocks actually let light through. 2020-02-24 01:55:44 +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
Pieter-Jan Briers
d8291ed9c4 Shadow & FOV stuff (#735)
* Content fixes for shadow/occluder stuff.

* Observers don't have FOV.

* Update submodule
2020-02-23 17:30:45 +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
CC-4477
2c49aaa93f Added items to products.yml and corresponding crates to crate_ty… (#725)
* Added fire_extinguisher, light_bulb, pen, bike_horn, light_bulb, and cleaver to crate_types.yml and products.yml.

* Added fuel tank, medical scanner, glass stack, and cable stack to products.yml, and corresponding values to crate_types.yml.

Co-authored-by: Check your git settings! <chris@chris-laptop>
2020-02-23 00:42:51 +01:00
4dplanner
b0e3ab3393 MovementSpeedModifierComponent (#721)
* movement modifier system

* update default exposedata values

* changing base speed marks as dirty

* formatting

* movement speed modifier component

* Moves slowdown component to the prototype

AIController respects slowdown

* reset dirty flag
2020-02-23 00:37:56 +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
Pieter-Jan Briers
753600771f Give observers IgnorePause component. 2020-02-08 21:45:32 +01:00
AJCM-git
5e58ae8a0a Adds SnapgridCenter to Asteroid YAML (#646) 2020-02-08 17:21:14 +01:00
ike709
c6431e4c86 Exploding wires no longer creates full cable stacks (#624) 2020-02-07 15:18:51 -08:00
Víctor Aguilera Puerto
48af9f90c0 Disable instruments (#617) 2020-02-07 23:38:52 +01:00
ShadowCommander
9ccb9aeb5c Yaml fixes (#615)
* Change BaseMagazines to abstract

* Change walls and power buildings to use SnapGrid placement
2020-02-07 18:13:48 +01:00
ShadowCommander
cf78f8aa65 Drink fixes (#605)
* Fix max_volume in cup YAML

Fixes #563

Added parsing of max_volume from YAML. Before it would get max volume only from drink content total.

* Fix drink owner getting deleted early

_contents.SplitSolution causes _contents.SolutionChanged to call Finish early causing a crash when try to get SoundComponent from the deleted Entity.
2020-02-07 18:13:11 +01:00
Víctor Aguilera Puerto
dff24227ea Remove a bunch of base items from spawnlist (#599)
* Adds "abstract: true" to a bunch of base entities.

* Comment out test prototypes.

* whoops

* Uncomment WeaponArc, and make it abstract instead
2020-02-06 16:53:01 +01:00
Víctor Aguilera Puerto
6bd818c8ce Fix two crashes relating to food (#600)
* Fix crash when eating bread due to a missing prototype

* Fix crash when finishing a food.

It tried to get the transform component of a deleted entity.
2020-02-06 16:40:41 +01:00
Reno DuBois
cf5c20dee4 Use correct caliber name for .45mm boxes (#584) 2020-02-03 18:47:47 +01:00
Reno DuBois
e72a78fc87 Add mask and layer to powercell items (#577) 2020-02-02 22:37:48 +01:00
ike709
73a9b2af89 Basic equipment for all jobs (#573) 2020-01-29 19:14:35 +01:00
AJCM-git
b167107c8b /TG/ ID sprites (#570)
*  This adds /TG/ ID sprites

* Applying suggestions

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-01-29 19:13:53 +01:00
moneyl
972d601664 Add solution pouring / click-transfer (#574)
* Add click-based solution transfer

For example, clicking on a beaker with a soda can to transfer the soda to the beaker. Works on plain solution containers like beakers and also on open drink containers like soda cans as long as they have the `PourIn` and `PourOut` solution  capabilities. If no `SolutionComponent` is added to a drink entity, the `DrinkComponent` will give the entity one. This PR extends that behavior slightly by also giving these default `SolutionComponent`'s the proper capabilities for pouring in/out.

* Improve fix for poured drinks not immediately disappearing

Instead of making `DrinkComponent.Use` public this 
 splits out the code important to both users and made that function public, leaving `Use` private.

* Shorten solution transfer popup

* Make code review changes

- Move pouring code from SolutionComponent to new PourableComponent. Added PourableComponent to client ignore list and added to existing container prototypes.
- Added EmptyVolume property to shared SolutionComponent for convenience.
- Removed DrinkComponent fix from pouring AttackBy code. Instead DrinkComponent subscribes to the SolutionChanged action and updates its self when necessary.
- Fixed pouring being able to add more than a containers max volume and sometimes deleting reagents.
- Added message for when a container is full.

* More code review changes

- Remove IAttackBy ComponentReference attribute in PourableComponent
- Remove _transferAmount from shared SolutionComponent. Left over var from previous commit not being used anymore.
2020-01-29 02:07:02 +01:00
ike709
4315618782 Adds some existing equipment to Janitors and Sec Officers (#566) 2020-01-26 14:01:48 +01:00
Pieter-Jan Briers
fd759e4a9d Jackboots and clown shoes produce different footsteps again. 2020-01-24 02:35:01 +01:00
moneyl
86d1f808af Fix more unknown component errors (#545)
Fixed UseDelayComponent not being on the ignore list of Content.Client and removed seemingly erroneous `Timing` component used in bike_horn.yml
2020-01-23 01:09:56 +01:00
L.E.D
8f04ce894f Use Delay Component (#540)
* use delay timer

* remove accidental using

* and remove accidental newline because i don't proofread my code

* compatibility with HUD cooldown
suggested changes

* get out of here

* suggested changes

* change to seconds from milliseconds

* remove redundancy
2020-01-22 23:08:14 +01:00
Pieter-Jan Briers
09900a08e4 Wait uhhh don't punch a hole in that toolbox. 2020-01-21 18:12:04 +01:00
Pieter-Jan Briers
9beb7e48d4 Implement female uniform masking. 2020-01-21 18:11:15 +01:00
Pieter-Jan Briers
77fcc4a673 Use TG human sprites. 2020-01-20 15:13:03 +01:00
Pieter-Jan Briers
05ff4e0956 Implement human pockets and ID card slot correctly.
Pockets & ID need uniform equipped. Pockets accept any sufficiently small item.
2020-01-20 10:30:06 +01:00
Pieter-Jan Briers
ce794c4dac Move access levels to prototypes.
Also adds captain & ID computer access levels.
Fixes ID computer not saving access changes correctly.
2020-01-19 18:30:09 +01:00
DamianX
a4e369e629 added Character Setup (#511)
* added Character Setup

* whoops

* reverted unrelated changes

* Made everything work post-rebase

* Removed unused PreferencesChanged event

* nope, don't need this

* HumanoidProfileEditorPanel -> HumanoidProfileEditor

* Set initial data for hair pickers

* Fixed nullable warning

* Renamed LooksComponent -> HumanoidAppearanceComponent

* Renamed LooksComponentState -> HumanoidAppearanceComponentState

* Final renaming maybe

* Use a human-like dummy instead of a real human

* Change preferences structs back to classes
2020-01-18 01:54:13 +01:00
Pieter-Jan Briers
b5af7b1c3e Re-organize human layers more so that facial hair is below regular hair. 2020-01-15 14:12:35 +01:00
Pieter-Jan Briers
ca01e245cb Improve human sprite layering.
Matches TG, means hair goes over clothing now.
2020-01-12 02:02:38 +01:00
Pieter-Jan Briers
411c23c46e Item status! 2020-01-09 00:28:04 +01:00
Acruid
f73824adcb Prevents the MoverSystem from overwriting the MoverComponent on an entity.
Adds the new ShuttleControllerComponent, a custom IMoverComponent that moves the parent grid when controlled by a mind.
2020-01-08 15:17:00 -08:00
Acruid
8a49546add Added the NoDoor flag to storage components, so that the open/closed state is synced with the lock/unlock.
Added the glorious Pilot Seat.
2020-01-03 17:49:17 -08:00
Pieter-Jan Briers
301cebc254 Dim windows a bit, add rwindows. 2019-12-24 15:14:44 +01:00
Pieter-Jan Briers
26c8995dad Fix low wall layering.
This makes windows look great.
2019-12-24 13:40:13 +01:00
Acruid
72cff220cf Wires are now broken in explosions, and drop cables.
Using the wire cutters on a wire drops a cable.
Fix bug where bullets raise an exception when the hit object deletes itself.
2019-12-15 19:58:24 -08:00
Pieter-Jan Briers
023c76db59 Make human hitbox square again. 2019-12-06 02:21:59 +01:00
Pieter-Jan Briers
689d16ee65 Outlines moved to InteractionOutlineComponent, now change color when in interaction range. 2019-12-06 02:08:17 +01:00
Pieter-Jan Briers
aea14074cc Make soviet vending machine use cyrillic. 2019-12-04 01:00:15 +01:00
L.E.D
fac91af34d new layers (#483) 2019-12-01 15:20:50 +01:00
Pieter-Jan Briers
4265fac7b8 Welders now play sounds when toggled. 2019-11-29 16:46:25 +01:00
L.E.D
c213fa8cdf object break sounds (#477) 2019-11-28 14:37:03 +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