Commit graph

7480 commits

Author SHA1 Message Date
Víctor Aguilera Puerto
c904a7e9c4 Fix error when trying to change layer that doesn't exist in SpriteChange and SpriteStateChange. 2020-10-12 12:54:41 +02:00
DrSmugleaf
723f4555cf
Fix pulses spawning on invalid grids and make the first pulse not instant (#2238)
* Fix radiation pulses spawning on invalid grids

* ok move that down

* ok liberal

* by paul

* why have i done this
2020-10-12 00:48:43 +02:00
metalgearsloth
ecfe470298
Climbing changes (#2236)
Climbing now can't be done if you're already climbing. Rest of the changes are just formatting.

I also removed the buckle messages as they were being duplicated for click-drag.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-11 17:12:46 +02:00
metalgearsloth
d769661692
Fix some build warnings (#2226)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-11 16:42:53 +02:00
DrSmugleaf
b64cb24059
Rename usages of collidable to physics (#2230)
* Rename usages of collidable to physics

* high tier PANIQUE

* aaaaaaaaAAAAAa

* cursed commit dont research

* Fix urist and items being anchored

* Fix the rest
2020-10-11 16:36:58 +02:00
DrSmugleaf
753ca81865
Replace MapIndices with Vector2i (#2228)
* Replace MapIndices with Vector2i

* Update da submodule

* AA EE II OO U U

Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2020-10-11 15:21:21 +02:00
Víctor Aguilera Puerto
5127824716 Saltern now has computer boards serialized 2020-10-11 13:59:00 +02:00
DrSmugleaf
e3322fb5ac
Fix build (#2227) 2020-10-11 13:51:42 +02:00
Víctor Aguilera Puerto
6e33c15fd7 Computers now spawn with circuit boards, add arcade circuitboards. 2020-10-11 13:37:38 +02:00
metalgearsloth
ab2149abf0
Adds yeeting to disposal bins (#2218)
* Adds yeeting to disposal bins

Kobe

* Thanks zum

* ?

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-11 13:13:34 +02:00
metalgearsloth
40504c2555
Event-based emergency lights (#2217)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-11 13:11:18 +02:00
Víctor Aguilera Puerto
30956a0fc8 Fix not being able to uncuff people. 2020-10-11 12:00:44 +02:00
metalgearsloth
8ccb931536
Fix DoAfters staying (#2222)
return moment

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-10 22:43:07 +02:00
Víctor Aguilera Puerto
ffbc4f355e Fix firelocks not having disabled autoclose. 2020-10-10 19:53:18 +02:00
Víctor Aguilera Puerto
03b1a78238 Fixes edge firelock serialization 2020-10-10 19:43:50 +02:00
DrSmugleaf
dd385a0511
Change all of body system to use entities and components (#2074)
* Early commit

* Early commit 2

* merging master broke my git

* does anyone even read these

* life is fleeting

* it just works

* this time passing integration tests

* Remove hashset yaml serialization for now

* You got a license for those nullables?

* No examine, no context menu, part and mechanism parenting and visibility

* Fix wrong brain sprite state

* Removing layers was a mistake

* just tear body system a new one and see if it still breathes

* Remove redundant code

* Add that comment back

* Separate damage and body, component states, stomach rework

* Add containers for body parts

* Bring layers back pls

* Fix parts magically changing color

* Reimplement sprite layer visibility

* Fix tests

* Add leg test

* Active legs is gone

Crab rave

* Merge fixes, rename DamageState to CurrentState

* Remove IShowContextMenu and ICanExamine
2020-10-10 15:25:13 +02:00
metalgearsloth
aba9b0e3f9
Make DoAfter visible to all (#2183)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-10 13:59:17 +02:00
py01
5aa866548b
Gas Canisters and Ports (#2151)
* CanisterComponent start

* GasCanisterPort

* canister

* GasCanister yaml

* More Gas Canisters

* Canister & port fixes

* Placeholder canister and port sprites

* GasMixture serialization

* Component ignores

* Fix duplicate component ignore

Co-authored-by: py01 <pyronetics01@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-10-10 13:37:52 +02:00
metalgearsloth
f1da37804f
Welder can no longer start DoAfter on doors if unlit (#2203)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-10 13:35:52 +02:00
metalgearsloth
7bf28ff3d5
Make doors event-based rather than EntityQuery based (#2195)
* Event-based door updates

Slight perf increase

* Optimise CheckCrush too

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-10 13:33:56 +02:00
DrSmugleaf
fe39b5fb71
Make portals use ICollideBehavior and set collidable.Hard to false (#2186) 2020-10-10 13:32:42 +02:00
metalgearsloth
f9ab5f6a82
Don't spawn rad pulses on paused grids (#2121)
* Don't spawn rad pulses on paused grids

* Only radiate default grid

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-09 14:47:56 +02:00
metalgearsloth
2c39656c9e
Stop welder from being spammable on doors (#2196)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-09 13:10:21 +02:00
Víctor Aguilera Puerto
4e085d8847 Fix event crashing when ghosts are present. 2020-10-09 12:04:18 +02:00
AJCM-git
ea30709cde
Bolts down event and minor tweaks (#2053)
* initial commit

* I have to switch to master

* oops

* i need to merge master

* finishing touches

* updating submodule

* bye

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-10-08 17:59:20 +02:00
py01
970f3bc82f
Pipe prototypes (#2124)
* Pipe prototypes

* PipeDirection setter

* IRotatableNode

* NodeContainer passes rotation events to its nodes

* Removes duplicate pipe prototypes that are rotations of each other

* PipeDirectionHelpers

* PipeNode rotation

* icon removal

* Pipe icons

* Icon fix

* Fixes pipe sprites and icons

Co-authored-by: py01 <pyronetics01@gmail.com>
2020-10-08 17:53:56 +02:00
Víctor Aguilera Puerto
745401a41e
Data-oriented Construction System (#2152)
- Powerful
- Data-oriented
- Approved by PJB
- Powered by node graphs and AI pathfinding
- Coded by the same nerd who brought you atmos

Co-authored-by: Exp <theexp111@gmail.com>
2020-10-08 17:41:23 +02:00
metalgearsloth
b35fba18a1
Optimise explosive depressurisation (#2190)
Slight increase. My whole life is staring at a profiler now.

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-08 16:03:56 +02:00
metalgearsloth
7dfb9a413c
Fix recycler throwing (#2187)
Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-10-07 21:07:41 +02:00
Pieter-Jan Briers
bb35845a59
Do not allow selecting non existent character slots.
This fixes #2176
2020-10-07 18:04:15 +02:00
Pieter-Jan Briers
882ed619fd
Don't allow deletion of the selected character slot. 2020-10-07 18:04:15 +02:00
DrSmugleaf
a984076574
Headsets (#2023)
* add headset component

* add basic headset logic

* fix formatting in listening component, add dependency to headset

* test function for headset

* implement headset as listener

* ANNIHILATES ListeningComponent, refactor of radio/listener sys

* basic headset functionality

* rename RadioComponent to HandheldRadioComponent

* change channel to list of channels

* basic headset implementation complete

* message now always excludes ';'

* add radio color; state channel freq. and source name

* undocumented game breaking bug commit (DO NOT RESEARCH)
actually just changes frequency from 1457 (what signalers are set to by default) to 1459, the actual frequency for common

* Add more sprites

* Reorganizes

* Added job headsets

* Adds headset as an ignored component

* Jobs now spawn with headsets

* remove system.tracing

* Catchup commits

* Add headset property serialization

* Turn GetChannels into a property

* ListenRange property and serializatioon

* Adjust interfaces

* Address reviews

* Cleanup

* Address reviews

* Update rsi

* Fix licenses and copyright

* Fix missing textures

* Merge fixes

* Move headset textures from objects/devices to clothing/ears

* Fix rsi state names and add equipped states

* Fix headsets not working

* Add missing brackets to channel number in chat

* heck

* Fix broken rsi

* Fix radio id and names

* Put quotes around headset messages

* Fix method names

* Fix handheld radios

* Fix capitalization when using radio channels and trim

* Remove unnecessary dependency

* Indent that

* Separate this part

* Goodbye icons

* Implement IActivate in HandheldRadioComponent

* Add examine tooltip to radios and headsets

* Rename IListen methods

Co-authored-by: Bright <nsmoak10@yahoo.com>
Co-authored-by: Swept <jamesurquhartwebb@gmail.com>
Co-authored-by: Bright0 <55061890+Bright0@users.noreply.github.com>
2020-10-07 05:02:12 -07:00
Pieter-Jan Briers
390d064304
Re-organize in-memory character profile storage.
Now uses a dictionary of int -> profile instead of an array filled with nulls.
2020-10-06 15:13:16 +02:00
DrSmugleaf
f35625630b
Fix creating and deleting character slots crashing the client and server (#2172)
* Fix creating a character slot crashing the client

* a

* Fix deleting character profiles
2020-10-06 12:03:14 +02:00
Paul Ritter
cc886518b1
Fixes the storagecomponent amount not being implemented (#2177) 2020-10-05 21:28:06 +02:00
RemberBL
5d4ad5f150
Fixed flashlights staying enabled after taking the battery out of them (#2158)
* Fixed flashlights staying enabled after taking the battery out of them

* Refactored code for flashlights shutting off after the battery is removed

* Fixed casing in makeNoise
2020-10-04 18:10:33 +02:00
Exp
f0cb9f05ee
Fix server crashing when portal is deleted (#2157)
-Fix server crashing when using the teleporter
2020-10-01 13:48:42 +02:00
Pieter-Jan Briers
1b691264f3
Improve "give AA ID".
Renamed to "grant full access" (same as in SS13).

Now tries to upgrade an ID the user has equipped and automatically equips if necessary.
2020-09-29 16:05:29 +02:00
Pieter-Jan Briers
f287f46944
You can now swap IDs in PDAs. 2020-09-29 15:41:20 +02:00
Pieter-Jan Briers
66c8a68891
Holy crap auth works (#2099)
* Holy crap auth works

* Fix some usages of UserID instead of UserName

* Refactor preferences.

They be non-async now. Also faster.

* Rename DbContext.

* Guest username assignment.

* Fix saving of profiles.

* Don't store data for guests.

* Fix generating invalid random colors.

* Don't allow dumb garbage for char preferences.

* Bans.

* Lol forgot to fill out the command description.

* Connection log.

* Rename all the tables and columns to be snake_case.

* Re-do migrations.

* Fixing tests and warnings.

* Update submodule
2020-09-29 14:26:00 +02:00
Swept
ef25d27f5c
Initial (#2137) 2020-09-28 20:03:05 +02:00
RomanNovo
06d6bfe5e0
Fix issue (#2129)
Co-authored-by: RomanNovo <roman.novo.95@gmail.com>
2020-09-28 18:36:13 +02:00
20kdc
4b9d488c1e
The Grovelling-to-the-Chef Games (monkey cubes and meat spikes) (#2117)
* Rehydratable component -> monkey cubes now have some of their behaviour

* Placeholder kitchen spike entity

* KitchenSpike component: the kitchen spike now has basic functionality

still placeholder sprite though

* Kitchen Spike: Import meatspike assets from CEV-Eris

* Kitchen Spike: Actually use sprites somewhat

* Kitchen Spike: Forgot I removed the MeatParts property from Butcherable

* Monkey cubes: Use IReagentReaction even though it doesn't quite work yet. Butcherable: remove imports

* Monkey cubes/Rehydratable: Re-add ISolutionChange

* Update Resources/Prototypes/Entities/Constructible/Ground/kitchen.yml

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2020-09-26 15:28:55 +02:00
Paul Ritter
84ce845ea3
Nanotrasen Block Game is here (#2131)
* tetris!

* softdropping & left,right key holding

* started work on the ui

* playable state

* there you go exp

* multiuser rework

* ui update refactor

* blockgame™️

* highscores, keybindings, ui refactor

* speed adjusts
leveling

* highscorebackground tweak
speed tweak

* NULLABLE

* yes
2020-09-26 15:25:22 +02:00
Víctor Aguilera Puerto
4eb5891c4a Adds missing reactions to chemical stuff.
- Adds ingestion reaction for food, drinks, and pills.
- Adds injection reaction for syringes.
2020-09-26 14:48:24 +02:00
Pieter-Jan Briers
d4fefd4046
Define CVars in a central location.
Instead of a bunch of RegisterCVar<> calls, it's now similar to Key Functions.
2020-09-25 21:39:33 +02:00
Exp
f2977dd436
Fix StorageFill quitting early (#2130) 2020-09-25 13:49:59 +02:00
metalgearsloth
2299399226
Rate-limit AI updates (#2120)
* Rate-limit AI updates

Stop the public servers from getting hammered too hard.

* Add logger for the AI limit as well.

* Also support AI maxupdates <= 0

Juuusssttt in case

Co-authored-by: Metal Gear Sloth <metalgearsloth@gmail.com>
2020-09-24 16:04:01 +02:00
Víctor Aguilera Puerto
0657698485 You can't construct without hands or when you can't interact anymore. 2020-09-24 13:13:10 +02:00
Víctor Aguilera Puerto
547290e3c2 Rejuvenate extinguishes people who are on fire 2020-09-23 20:23:20 +02:00