Commit Graph

1043 Commits

Author SHA1 Message Date
Acruid
6c081d9d8d Shared Containers (#3331)
* Namespace changes for containers.
Moved ContainerSlot from content to engine.

* Merged client/server ContainerManagerComponents into a single shared version.

* Mapfile and nullability fixes.

* Upgrades map.

* Update engine.
2021-03-01 15:24:46 -08:00
Pieter-Jan Briers
245f276f35 Restart vote improvements, voting localization.
Restart votes now need 80% majority to succeed.
Restart votes now have a 3 minute cooldown on the caller.
Voting stuff has been localized.
2021-02-28 22:11:53 +01:00
Pieter-Jan Briers
1eb0fbd8d0 Revert "Physics (#3452)"
This reverts commit 3e64fd56a1.
2021-02-28 18:49:48 +01:00
Pieter-Jan Briers
eddec5fcce Revert "Fixes a crash when an entity goes off-grid. (hehe)"
This reverts commit 3967ecf098.
2021-02-28 18:49:46 +01:00
Vera Aguilera Puerto
3967ecf098 Fixes a crash when an entity goes off-grid. (hehe)
Now, it performs a TryGetGrid instead of GetGrid.
2021-02-28 17:42:11 +01:00
metalgearsloth
3e64fd56a1 Physics (#3452)
* Content side new physics structure

* BroadPhase outline done

* But we need to fix WorldAABB

* Fix static pvs AABB

* Fix import

* Rando fixes

* B is for balloon

* Change human mob hitbox to circle

* Decent movement

* Start adding friction to player controller

I think it's the best way to go about it to keep other objects somewhat consistent for physics.

* This baby can fit so many physics bugs in it.

* Slight mob mover optimisations.

* Player mover kinda works okay.

* Beginnings of testbed

* More testbed

* Circlestack bed

* Namespaces

* BB fixes

* Pull WorldAABB

* Joint pulling

* Semi-decent movement I guess.

* Pulling better

* Bullet controller + old movement

* im too dumb for this shit

* Use kinematic mob controller again

It's probably for the best TBH

* Stashed shitcode

* Remove SlipController

* In which movement code is entirely refactored

* Singularity fix

* Fix ApplyLinearImpulse

* MoveRelay fix

* Fix door collisions

* Disable subfloor collisions

Saves on broadphase a fair bit

* Re-implement ClimbController

* Zumzum's pressure

* Laggy item throwing

* Minor atmos change

* Some caching

* Optimise controllers

* Optimise CollideWith to hell and back

* Re-do throwing and tile friction

* Landing too

* Optimise controllers

* Move CCVars and other stuff swept is beautiful

* Cleanup a bunch of controllers

* Fix shooting and high pressure movement controller

* Flashing improvements

* Stuff and things

* Combat collisions

* Combat mode collisions

* Pulling distance joint again

* Cleanup physics interfaces

* More like scuffedularity

* Shit's fucked

* Haha tests go green

* Bigmoneycrab

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-03-01 03:11:29 +11:00
collinlunn
2326cb5f3c Piping angle fixes (#3442)
* Moves piping prototypes to own folder

* Fixes pipe direction angles
2021-02-28 22:00:53 +11:00
ike709
7b3e25b3ef Basic liver mechanism (#3424)
* Basic liver mechanism

* makes the stupid thing work
2021-02-28 02:58:08 +01:00
Visne
986b481e9a Fix verb error texture (#3439) 2021-02-27 20:27:54 +01:00
Visne
9b94d5c195 Added nullable to most Content.Shared files (#3238)
* Add nullable to some Content.Shared files.

* Use [NotNullWhen(true)]

* Undo adding now redundant !'s

* Forgot one

* Add a ton more nullable

* You can guess

* Fix some issues

* It actually compiles now

* Auto stash before merge of "null2" and "origin/master"

* I lied

* enable annotations -> enable

* Revert ActionBlockerSystem.cs to original

* Fix ActionBlockerSystem.cs

* More nullable

* Undo some added exclamation marks

* Fix issues

* Update Content.Shared/Maps/ContentTileDefinition.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Resolve some issues

* Remove unused method

* Fix more issues

* Fix more issues

* Fix more issues

* Fix more issues

* Fix issue, rollback SharedGhostComponent.cs

* Update submodule

* Fix issue, invert some if-statements to reduce nesting

* Revert RobustToolbox

* FIx things broken by merge

* Some fixes

- Replaced with string.Empty
- Remove some exclamation marks
- Revert file

* Some fixes

* Trivial #nullable enable

* Fix null ables

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-02-27 14:12:09 +11:00
Swept
f23e35dc40 Adds tons of new materials + cleans up existing ones (#3413)
* RSIs are now banging

* Sheets

* Hotfix

* Last before PR

* Ready

* Quick

* E

* Updates everything to new stack PR

* Finished off ore, set max stack size to 30 from 50.

* Most materials done

* Donezo

* Adds hides and custom sprited a corgi hide

* Should be good

* suffix

* Bugs

* Giff woodplank

* Profit?
2021-02-26 18:59:24 +11:00
Metal Gear Sloth
0165a525a4 Better stack log warning 2021-02-26 18:20:19 +11:00
Daniel Castro Razo
f30a4d8a52 ContextMenu (#3286)
* ContextMenu

* Updating to WPF.

* Updating to WPF.

* Margins
2021-02-26 12:42:16 +11:00
Alex Evgrashin
0fa219365e Ghosts do booo (spooky) (#3363)
* Light now use visualizer

* Added ghost actions

* Add hotkey input for ghosts

* no message

* Testing blinking animation

* Better animation

* Better customization

* No abuse

* Reversed sln

* No fun for ghosts

* No fun for ghosts x2

* Cooldown for lights

* Moved to component deps

* This tollist is unnecessary

* Enums to byte

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Some lights can ignore ghosts now

Co-authored-by: Alex Evgrashin <evgrashin.adl@gmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-02-26 12:31:06 +11:00
Pieter-Jan Briers
356716ee5c Update NuGet packages. 2021-02-25 12:05:53 +01:00
DrSmugleaf
fdcbece63d Refactor stacks to use prototypes (#3387)
* Refactor stacks to use prototypes

* Fix not assigned warning

* Add names to stacks

* Make machine baords and material constructions use the name as well

* Remove defaulting stacks to prototype id

* Fix tests

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-02-25 16:18:29 +11:00
Vera Aguilera Puerto
436d406585 Adds tag support to construction (#3386) 2021-02-24 16:26:56 +01:00
Pieter-Jan Briers
5a7658a13b Update submodule, fix a bunch of warnings. 2021-02-23 22:26:59 +01:00
Pieter-Jan Briers
4294499b48 Content localization improvements.
TOSTRING() and PRESSURE() functions.
2021-02-23 22:10:07 +01:00
Swept
1e13c3b265 Fixes lathe stuff (#3383) 2021-02-23 18:53:14 +11:00
Tarlan2
3ee4c5f791 Auto lathe branch (#3284)
* My first contribution in a while.Change AddAccent command to be case insensitive (#3112)

* got rid of the bottle of nothingness. thought it was an empty bottle.

* new correction

* Delete SpaceStation14.sln

I honestly don't know what happened here. I didn't code those lines.

* Revert "Delete SpaceStation14.sln"

This reverts commit 68876841dce9c6e2ce9d21996e4caef3512b1385.

* new attempt at fixing

* Revert "new attempt at fixing"

This reverts commit 780f66fda3d66b6d4d086871d0b2ea2f6d4ee004.

* Revert "My first contribution in a while.Change AddAccent command to be case insensitive (#3112)"

This reverts commit 08041a30365331b82309aedaf2136d7631459887.

* Revert "Revert "My first contribution in a while.Change AddAccent command to be case insensitive (#3112)""

This reverts commit b2dc76a6683e8df88188d37a836f9ab9a54287b5.

* Revert "Revert "Revert "My first contribution in a while.Change AddAccent command to be case insensitive (#3112)"""

This reverts commit 478d2bfe5daf6098d2f5665249ce0f161704dd73.

* Revert "Revert "Revert "Revert "My first contribution in a while.Change AddAccent command to be case insensitive (#3112)""""

This reverts commit 23c195143e1e3d05cb5f344329c01754432684a9.

* Revert "Revert "Revert "Revert "My first contribution in a while.Change AddAccent command to be case insensitive (#3112)""""

This reverts commit 23c195143e1e3d05cb5f344329c01754432684a9.

* still having figured what happened with the sln file

* please work

* -Added wood as a material.
-Made a few changes in the material requirements for some of the recipes.

* ok. added a small correction for wood at material_stacks.yml

* ok added another correction for misc.yml because for some reason a : just disappeared.

* -added plastic as a material, complete with a png (credits: tgstation)
-replaced glass with plastic for material requirements for some of the latherecipes

* for some reason the shovel was duplicate, being in both botany.yml and in tools.yml. deleted it from tools

* ok. one last try. noticed that the sprite path for shovel was weird even though it already has its own sprite at Objects/Tools/shovel.rsi . so I decided to fix the path then move the shovel back to tools.yml while deleting it from botany.yml. maybe that was the problem?

* corrected the extra space on the type: material for plastic discovered by Peptide90.

* noticed that wood also had a bad icon path.

* another attempt

* weird. I don't remember messing with the flashlight requirements.

* added plastic in the SharedStakedComponent and the meta.json from materials.rsi is back to how it was

* hopefully this icon is valid.

* small corrections concerning double space.

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-02-23 13:30:50 +11:00
collinlunn
112f7d8346 Pipe visualizers (#3042)
* modifies pipe sprites to look not connected

* pipe connector sprites

* PipeConnectorVisualizer

* Remove pipe visualizer

* Revert "Remove pipe visualizer"

This reverts commit dc8da93f99f20aa55247c6a94d26c7a75a3d1782.

* PipeDirection can be set with the sprite updating correctly

* fixes meta files

* removes unused vent/scrubber directions

* OnConnectedDirectionsNeedsUpdating

* comments + OnConnectedDirectionsNeedsUpdating gets called

* fix connecteddirections bug

* Combines ConnectedDirections sent to visualizer

* fixes unconnected pipe sprites

* Adds PipeConnectorVisualizer to other piping entities

* code cleanup

* Fixed bug with ConnectedDirections not being set correctly

* diff fix

* rotation simplification

* Improves rsi serialization

* enable nullable

* wip

* visualizer cleanup

* nullable cleanup

Co-authored-by: py01 <pyronetics01@gmail.com>
2021-02-23 13:18:30 +11:00
Swept
4a67fc1d22 Fleshes out smoking content (#3295)
* RSIs sorted out

* Bookmark

* Updated packet RSIs for Stacks

* Cigs Packs done

* Cigarette Cartons

* fucking MANUALLY fixed the cigarette inhands, fuck you tgstation

* Pipes work

* Cigars/Cases

* Updates vending machine inventory

* tweaks count

* Adds a cigarette crate

* Fixes RSIs, working on rolling paper

* Adds Tobacco and Cannabis plants

* Cigarettes and Rollies are now craftable

* There

* Fixed crafting recipes

* Reset RobustToolbox

* Netsync'd

* Ready

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2021-02-22 15:08:17 +11:00
Remie Richards
85916b87b4 Fluent Localisation Fixes (#3344)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-02-22 01:07:46 +01:00
Pieter-Jan Briers
63947a6d35 Fixes all the rotation bugs. (#3365) 2021-02-22 00:46:27 +01:00
tmtmtl30
b314c3f040 Adds a very basic perpetual background ambient hum. (#3150) 2021-02-21 14:02:23 +01:00
Clyybber
c5ab6f191b Spill into containers lying around (#3345)
* Spill into containers lying around

* Make spillability definable in yaml

* Address reviews
2021-02-21 02:14:41 +01:00
DrSmugleaf
3e702723fd Content PR for YAML hot reloading (#3319)
* Content PR for YAML hot reloading

* Add CanAdminReloadPrototypes (host permission)

* IndexedPrototype fixes
2021-02-20 00:05:24 +01:00
DrSmugleaf
0ae4a6792f Add health overlay and a command to toggle it (#3278)
* Add health overlay bar and a command to toggle it

* Remove empty line
2021-02-19 19:31:25 +01:00
DrSmugleaf
5667cffe95 Separate ghost warp message into two (#3310)
* Separate ghost warp message into two

* Remove redundant arguments

* Address reviews

* Move properties up
2021-02-19 19:29:34 +01:00
Clyybber
c996021b5d Spill hand contents when dropping them in a fall (#3304)
* Spill hand contents when dropping them due to falling down

* Better approach

* cleanup

* grammar

* stupid
2021-02-18 21:43:46 +01:00
DrSmugleaf
1477cd4d0a Make component states dependant on the player getting them (#3280)
* Make component states dependant on the player getting them

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>

* Updated submodule to v0.3.7.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
Co-authored-by: Acruid <shatter66@gmail.com>
2021-02-18 00:09:07 -08:00
komunre
77c8fc5b42 Spikes fix reopened (#3203)
* DoAfter, dead and stun check, DragDropOn

* Not ignored anymore

* Copied comment deleted

* Herbert's an ass

* Woops

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2021-02-18 18:49:50 +11:00
Ygg01
55d65889ae Stacked sprite visualizer (#3096)
* Add Stack Visualizer

* Add cigarette pack resources

Adds transparent layers for visualizing cigarettes

* Add Bag Open/Close Visualizer

So storage opened in inventory can have different icons when opened
or closed.

* Create a component that only enumerates single item

Used for creating stuff like matchbox, or cigarettes. As a bonus.
It will only update stack visualizer for that particullar item.

* Refactoring stuff

* Fix other usage of stack in Resources

* Add docs

* Apply suggestions from code review

Apply metalgearsloth suggestions

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Applied suggestions from metalgearsloth

* Changed SingleItemStorageComponent to StorageCounterComponent

Difference. New component doesn't spawn items, merely counts them.

* Refactored StackVisualizer

* Fix breakage with master

* Update Resources/Prototypes/Entities/Objects/Consumable/fancy.yml

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update with MGS suggestions

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-02-18 00:02:36 +11:00
DrSmugleaf
c435b5150d Change character names to use datasets prototypes (#3259)
* Remove old name lists in .txts

* Fix tests

* LATEST MASTER TECHNOLOGY
2021-02-17 20:46:44 +11:00
tmtmtl30
2e99ee4fc4 oops (#3268) 2021-02-17 17:39:23 +11:00
DrSmugleaf
ecb9993d80 Add cvar to disable ooc chat (#3258) 2021-02-16 20:14:32 +01:00
DrSmugleaf
b30bccc03b Add IRobustRandom extension to get a random value from a data set (#3260)
* Add extension to pick a random element from a dataset

* Add tests
2021-02-16 20:14:12 +01:00
Pieter-Jan Briers
cea87d6985 Voting (#3185)
* Basic voting

* Rewrite lobby in XAML.
Working lobby voting.

* Escape menu is now XAML.

* Vote menu works, custom votes, gamemode votes.

* Vote timeouts & administration.

Basically done now.

* I will now pretend I was never planning to code voting hotkeys.

* Make vote call UI a bit... funny.

* Fix exception on round restart.

* Fix some vote command definitions.
2021-02-17 01:07:17 +11:00
DrSmugleaf
78afc2db0f Add make ghost role verb (#3204) 2021-02-16 09:51:27 +01:00
DrSmugleaf
04aa195c91 Add cooldown to shuttle calling (#3225) 2021-02-16 09:31:57 +01:00
DrSmugleaf
cf7ac025b4 Fix the admin panel only listing your character name (#3229) 2021-02-16 09:11:15 +01:00
DrSmugleaf
237e40e60f Fix the puller not being sent to the client in pullable component (#3228) 2021-02-16 12:52:25 +11:00
DrSmugleaf
9f408945de Make pulled and cuffed players unable to move (#3227) 2021-02-16 12:51:52 +11:00
Leo
a3d0e3f6a7 OOC sent by an admin will have a different color (#3117)
* Admin OOC is sent with a different color than regular OOC

- Also adds the OOC color to the database

* Command to set the color

* Ooc -> OOC

* Change default color to Red (`#ff0000`)

* Outdated namespace
2021-02-14 15:59:56 +01:00
DrSmugleaf
a296a5b9b9 Add SpawnIfUnobstructed IEntityManager extension method (#3165)
* Add SpawnIfUnobstructed IEntityManager extension method

* Clarify test comments

* Use GetCollidingEntities

* Enable nullable in test
2021-02-13 17:52:06 +01:00
tmtmtl30
258fdc10ea Airlock / firelock code refactor, pseudo-prediction implementation (#3037)
* splits off airlocks, firelocks

* adds airlock prediction. anims broken though

* fixes animation weirdness

* removes opacity prediction because it looked odd

* Now firelocks don't visually start open. Argh.

* Fixes firelock weirdness, saneifies _state var.

* Documentation changes, code shuffle.

* Lets firelocks crush people.

* Stops open-hand opening/closing firelocks.

* updates serializable, netserializable attributes

* Addresses reviews... hopefully.

* updates submodule?

* nullability

* fuck fuck fuck fuck

* fucking finally
2021-02-12 16:02:14 +01:00
DrSmugleaf
6eb0dd4f50 Remove redundant TryGetComponent call in buckle initialize (#3164) 2021-02-12 13:04:19 +01:00
Vera Aguilera Puerto
9ee0ec4106 Holiday System (#3122) 2021-02-12 10:45:22 +01:00
Vera Aguilera Puerto
4c419f85ce Ghost Roles (#3106)
* Add files for Ghost Roles.

* Work on Ghost Roles

* Improvements

* GHOST ROLES IS DONE

* mmm yes

* auto-update when setting rolename/roledescription

* well

* command graceful error

* Makes UI have a scrollbar when it has too many entries

* fix command fuckup

* Apply suggestions from code review

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-02-12 14:35:56 +11:00