Commit Graph

469 Commits

Author SHA1 Message Date
py01
196950fb7e Gun Code Modularization + Magazine Fed Shotgun (#751)
* Adds shotgun YAML files

* Adds shotgu ammo and magazine enum value, modularizes some projectile weapon methods

* Fixes guns consuming two bullets on fire

* Finishes shotgun behavior in Projectile Weapon Components

* Gun and ammo modularization

* Updates BallisticMagazineWeapons to be compatible with new AmmoWeapon

* Fixes shotgun spread angles, Fixes shogun YAML

* Gun documentation and ViewVariable specifications

* Removes todo messsage in gun code

* Default gun evenspread fix

* AmmoComponent Name fix

* Fixes Component name

* Projectile refactor code review fixes
2020-02-29 18:09:41 +01:00
ShadowCommander
bd773aef3b Fix CargoProducts (#750) 2020-02-28 14:58:43 +01:00
Swept
3e9b93faee Adds Skub (#740)
* Added Skub

* Added Skub crafting recipe
2020-02-28 14:58:25 +01:00
Swept
37c13099ad Fixes a problem with gloves (#754) 2020-02-28 14:57:25 +01:00
GlassEclipse
abc02fa504 Fixes 1 runtime error message (#742) 2020-02-26 06:30:56 +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
Pieter-Jan Briers
58ab7631c2 Give every job their fancy ID types. 2020-02-24 16:58:25 +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
moneyl
5ccdc0751a Register more console commands for admins and mods (#683)
* Register more console commands for admins and mods

* Add host role with roles we don't want admins to have

Excluded shutdown since I dunno if the watchdog will restart the server if we do that, and really restart and restartround should work for our purposes. Exluded rmgrid since it still crashes no matter how you use it.

* Add group command to admin role

Doesn't actually work anywhere except the server console but admins should have it once it does to list their current group.

* Give admin group addai
2020-02-23 00:47:11 +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
py01
ad4dd335b8 Sound for burning your hand on a powered light (#733) 2020-02-23 00:39:00 +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
Rohesie
ffe55648b6 BaseTurfs (#699)
* tweaks

* Baseturfs

* dotnet messages

* indentation

* comment

* Change requests

* Smaller diff

* Diff
2020-02-23 00:30:36 +01:00
Pieter-Jan Briers
cd8025b87e Merge branches '20-02-17-upd' and 'triangle' 2020-02-17 11:19:15 +01:00
ShadowCommander
aa16cd42bf Change inverted_triangle.svg to px 2020-02-16 23:42:43 -08:00
py01
b2b8021d9b Adds rsi sprites for bureaucracy items, fixes pen and paper spri… (#711) 2020-02-17 00:16:06 +01:00
Soundwavesghost
aa37c0121a Fill vending machines (#648) 2020-02-13 17:58:19 +01:00
ShadowCommander
7c1b6ff5d1 Add inverted_triangle.svg for OptionButton 2020-02-13 00:46:18 -08: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
Swept
b554d8cc8c Fixed the ce gloves sprite (#654) 2020-02-09 10:42:59 +01:00
AJCM-git
7d4dc85a6a Adds animation time to OuterClothing (#652)
* Adds animation time to OuterClothing

* Fixed golem
2020-02-09 10:41:32 +01:00
Pieter-Jan Briers
753600771f Give observers IgnorePause component. 2020-02-08 21:45:32 +01:00
Pieter-Jan Briers
eb7c80ba7a You can no longer place unless you are in admin or sandbox. 2020-02-08 20:45:02 +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
moneyl
33cf29978a Sandbox window improvements (#578)
* Several sandbox manager improvements

- Bound sandbox manager to B key as it lists on the UI
- Bound entity spawner to F5
- Bound tile spawner to F6
- Made entity spawner and tile spawner toggle instead of repeated spawning new windows from the sandbox panel

* Move relevant keyfunctions from engine to content

Turns out it was unnecessary to have the key functions in the engine as all code using the ones added here are in content.
2020-02-02 22:38:51 +01:00
Reno DuBois
e72a78fc87 Add mask and layer to powercell items (#577) 2020-02-02 22:37:48 +01:00
Pieter-Jan Briers
c9073abc03 Make hiding GUI require shift F4 instead of regular F4. 2020-01-30 13:47:28 +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
2ec493e2af Combat mode improvements.
You now need to hold the mouse for 0.15 seconds in combat mode to actually do an attack.

Otherwise it's regular item interaction (for now).
2020-01-26 03:38:51 +01:00
Pieter-Jan Briers
1412cd5277 Combat mode is now on R. 2020-01-25 21:33:59 +01:00
Pieter-Jan Briers
f95c5b7921 Adds job icons to the job list. 2020-01-24 16:31:18 +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
moneyl
aa77b017e8 Add keybind for line edit delete key usage (#533)
Separate commit on the engine repo has the code for this behavior.
2020-01-21 18:12:36 +01:00
Pieter-Jan Briers
09900a08e4 Wait uhhh don't punch a hole in that toolbox. 2020-01-21 18:12:04 +01:00