Commit Graph

491 Commits

Author SHA1 Message Date
Pieter-Jan Briers
f6579918d9 Fix crash when moving after deleting the grid you were previously on. 2020-04-20 10:09:58 +02:00
Pieter-Jan Briers
93c8007f5e Merge branch 'master' into prediction 2020-04-18 14:07:02 +02:00
Pieter-Jan Briers
028ca7a732 Remove hardcoded ghosting from MoverSystem. 2020-04-18 12:10:50 +02:00
Pieter-Jan Briers
dc9f8d551b Merge pull request #805 from Zumorica/2020-04-09-comms-console-roundend
Adds working communications console that ends the round
2020-04-10 17:02:49 +02:00
zumorica
c19035fccc Use TimeSpan instead of an int for the countdown time 2020-04-10 13:37:13 +02:00
Víctor Aguilera Puerto
47c3258861 Update Content.Server/GameObjects/EntitySystems/RoundEndSystem.cs
Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-04-10 13:28:28 +02:00
Pieter-Jan Briers
aff9f18bc8 Merge pull request #803 from Injazz/bartending
Bartending tricks and some revamping on chemistry components
2020-04-10 11:54:40 +02:00
zumorica
c55a4ffbf4 Countdown is now 4 minutes 2020-04-09 20:31:28 +02:00
zumorica
3c795ad283 Use TimeSpan instead of DateTime in RoundEnd and Comms Console. 2020-04-09 20:28:22 +02:00
zumorica
83e9688133 You can now cancel the timer (recall) 2020-04-09 01:43:28 +02:00
zumorica
64eafde0c3 Adds working communications console that ends the round 2020-04-09 00:28:56 +02:00
Injazz
d400f77129 Chemistry revamp and bartending features
-Ability to mix drinks to create cocktails with shiny icons
-New Chemistry System which can relay chemistry events to corresponding components
-moved some solution logic from Shared to Server
-fixed some weird stuff with DrinkComponent
2020-04-08 15:53:15 +05:00
zumorica
aba3b0217e Moving when dead ghosts you 2020-03-30 01:15:23 +02:00
zumorica
16353a89e6 Default interface implementation for IActionBlocker (defaults to true) 2020-03-30 01:15:03 +02:00
Pieter-Jan Briers
65d1681cb3 Fix error about game.diagonalmovement being registered multiple times. 2020-03-25 22:21:29 +01:00
Pieter-Jan Briers
f790eeb34d RaisePredictiveEvent works.
Needs sequence numbers fixed.
2020-03-25 17:53:50 +01:00
Pieter-Jan Briers
705aeceba6 Need to merge this 2020-03-25 11:16:57 +01:00
Víctor Aguilera Puerto
e17ffbd76f Adds verb categories (#766)
* Adds verb categories

* Update Content.Shared/GameObjects/Verbs/Verb.cs

Co-Authored-By: Pieter-Jan Briers <pieterjan.briers@gmail.com>

* Make GetCategory virtual

Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2020-03-06 20:11:24 +01:00
Víctor Aguilera Puerto
d1ff84e95d Add CanAttack to IActionBlocker, prevent using guns when dead (#769) 2020-03-03 15:10:09 +01:00
Víctor Aguilera Puerto
60d6b4af7d You can now pickup items inside obstructions (#759) 2020-02-28 17:52:18 +01:00
Víctor Aguilera Puerto
2df0f884ba Fix bug where InRangeUnobstructed wouldn't check for hard collid… (#748)
* Check for hard collidables too.

* ...and that's why you don't code at 7 AM!

* fugg
2020-02-28 16:29:45 +01:00
Acruid
3011c06460 You can now pick up items that are not on a grid.
API changes for IMapManager.TryGetGridAt().
2020-02-27 02:12:57 -08:00
Injazz
15fa417a4f Explosion now throws affected entities, fixes probability/severi… (#732)
* throwforce and probability fixes for explosions

Applies force to all affected by explosion entities with ItemComponent
Fixes probability issues with explosion related callbacks

* dependency fix, throw helper

* delete TODO

Co-authored-by: gituhabu <48828502+gituhabu@users.noreply.github.com>
2020-02-24 03:52:15 +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
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
Acruid
ee6eec9c40 SubscribeEvent() has been split into SubscribeNetworkEvent() and SubscribeLocalEvent() methods on EntitySystem.
Most methods on EntityEventBus now require callers to specify the source (Local or Network) of the events.
2020-02-19 17:08:59 -08:00
Acruid
e719745b10 Removed the Sender object from events. If you needed this field, add it to the event class. 2020-02-19 14:39:00 -08:00
Acruid
c51533686b Updates the Content EntitySystems with the changes to the event API.
Visual Studio wants to update the version of the solution, and change some GUIDs around.
2020-02-18 19:43:54 -08:00
moneyl
5f030cdf93 Improve addai error handling and help message (#708)
* Improve addai error handling and help message

Fix client crash from giving addai an invalid processorId argument and improved it's help message to describe each parameter.

* Only IoC resolve when addai is run

Makes the code simpler. No need to cache it since it's going to be run so infrequently.
2020-02-17 00:21:15 +01:00
Víctor Aguilera Puerto
70c41f63b0 Adds InRangeUnobstructed method to InteractionSystem (#698)
* You cannot pickup items across walls, or pickup items when dead/in crit.

* Adds InRangeUnobstructed method to InteractionSystem.
Changes HandsSystem and ItemComponent to use it.
2020-02-16 23:04:06 +01:00
Profane McBane
9e368b336f Let stacks specify if they get thrown as one item, or individual… (#679) 2020-02-13 23:43:02 +01:00
Qustinnus
de094ddacc Fixes the direction humans turn to when throwing something (#686)
* Fixes the direction humans turn to when throwing something

* shorter
2020-02-13 16:21:29 +01:00
Víctor Aguilera Puerto
f8a64bcd5c Prevent items from being dropped across impassable entities (#670) 2020-02-12 00:01:44 +01:00
Markus W. Halvorsen
595ffb3237 Clamp out of range item drops (#631) 2020-02-08 15:32:21 +01:00
Tad Hardesty
89a4265dda Change player's facing when they click on something (#598) 2020-02-07 17:54:56 +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
Acruid
a692899f5b GridCoordinates API changes. 2020-01-25 01:39:14 -08:00
Acruid
a86363a6d2 API changes, renamed SpawnEntityAt to SpawnEntity. 2020-01-24 16:10:48 -08:00
Pieter-Jan Briers
11d47cc67a Remove an unused field. 2020-01-24 00:57:08 +01:00
moneyl
1996893a26 Fix UseDelayComponent (#546)
Currently if this component is present the delay timer is started but it doesn't actually prevent use interactions.

To test this bug, do the following:
1. Set the delay for [bike_horn](https://github.com/space-wizards/space-station-14/blob/master/Resources/Prototypes/Entities/items/bike_horn.yml#L25) to something large like 5.0 that'll make the effect obvious
2. Use the bike horn with the z key. The delay anim will play properly but you'll still be able to spam the honk.
2020-01-23 01:37:07 +01:00
Víctor Aguilera Puerto
83b2e59910 Fix bug where placing items in PlaceableSurfaces didn't cause a… (#544)
* Change variable name in some interactions

I definitely didn't copy-paste some stuff back then, absolutely not.

* Fix bug where dropping items in tables didn't cause the drop interaction
2020-01-22 23:09:36 +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
ShadowCommander
e0aaab56e3 Implement StorageButton on HandsGUI and click empty hand to swap… (#517)
Also moved duplicate sprite view code to ItemSlotManager
2020-01-18 03:41:47 +01:00
Acruid
32103979ed CollidableComponent and ICollideableComponent namespace was changed in the engine.
Minor code cleanup.
2020-01-11 14:12:20 -08: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
Pieter-Jan Briers
7f188b0f44 Disable sprinting.
Now you always sprint.
2019-12-07 17:16:56 +01:00
L.E.D
fac91af34d new layers (#483) 2019-12-01 15:20:50 +01:00
Acruid
d549c44f95 Shared IMap/Map class removal (#467)
* Fully removed the Map and IMap class.

* Submodule update to sibling engine commit.
2019-11-26 23:16:36 +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
Remie Richards
0cf34d2d26 Server-side GlobalVerbs now work when used (#455) 2019-11-23 20:11:50 +01:00