Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upstream260224 #413

Closed
wants to merge 347 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
347 commits
Select commit Hold shift + click to select a range
4a97a47
Thindow glass dupe fix (#25304)
MACMAN2003 Feb 16, 2024
0a64e08
Automatic changelog update
PJBot Feb 16, 2024
bced73f
Kill Seperated Mindshield Icons (#25303)
Golinth Feb 16, 2024
16c1bed
Automatic changelog update
PJBot Feb 16, 2024
b5aa1e4
MORE SUFFIXES (#25314)
IamVelcroboy Feb 16, 2024
53270be
Fix spawning glass shard for each glass sheet in stack (#25308)
Lukasz825700516 Feb 16, 2024
1019b3a
Automatic changelog update
PJBot Feb 16, 2024
2ee73d5
Adds atmospherics access to the fire fighting door remote. Feels like…
Plykiya Feb 16, 2024
7461091
Automatic changelog update
PJBot Feb 16, 2024
1a438e6
Re-organise main menu screen (#25173)
metalgearsloth Feb 16, 2024
d7eb3b1
Allow t-ray to penetrate carpets and puddles (#25276)
themias Feb 16, 2024
b2e8c2e
Automatic changelog update
PJBot Feb 16, 2024
1de3f24
Add sfx for writing on paper (#25257)
Krunklehorn Feb 16, 2024
25c658f
Automatic changelog update
PJBot Feb 16, 2024
561e808
New sprites for guidebooks (#25232)
PotentiallyTom Feb 16, 2024
19a7b05
Automatic changelog update
PJBot Feb 16, 2024
c787088
LockVisualizer (#25224)
MilenVolf Feb 16, 2024
33611b7
Solution precision fixes (#25199)
PJB3005 Feb 16, 2024
9e5261e
Automatic changelog update
PJBot Feb 16, 2024
773d02f
WebP lobby images (#25184)
PJB3005 Feb 16, 2024
90d02a5
New lobby art : Blueprint (#25179)
UbaserB Feb 17, 2024
699ee6e
Automatic changelog update
PJBot Feb 17, 2024
407d4ae
Diona Nymphs & Splitting (#24630)
LankLTE Feb 17, 2024
8dbf3f9
Automatic changelog update
PJBot Feb 17, 2024
95c9500
reform cooldown 10 minutes (#25328)
LankLTE Feb 17, 2024
dab2c48
Change plant clipping mechanics (#25326)
PolterTzi Feb 17, 2024
74b5b72
Automatic changelog update
PJBot Feb 17, 2024
9969bd2
Fix nymphs being deleted immediatly after spawning (#25344)
Arendian Feb 17, 2024
f27d78c
Automatic changelog update
PJBot Feb 17, 2024
7d94cc7
Fix: Grenades don't make trigger sound (#25321)
Plykiya Feb 17, 2024
5b485fe
fixed the specific if statement called when plant age is under 0 (#25…
PolterTzi Feb 17, 2024
cb999d2
Save round information into replay_final.yml (#23013)
VasilisThePikachu Feb 17, 2024
dbf2c64
Adds a massban flag to the admin flags (#25327)
Geekyhobo Feb 17, 2024
3beb01b
Automatic changelog update
PJBot Feb 17, 2024
71713fd
Fix missing line in nuke exploding sprite (#25351)
PJB3005 Feb 17, 2024
07b796d
Added Evidence Markers for the Detective! (#25255)
Moomoobeef Feb 17, 2024
22244b3
Add "tailed" hair (#25216)
UbaserB Feb 17, 2024
f72a1a0
Clean up scars.yml and add a new chest scar (#25215)
UbaserB Feb 17, 2024
cb32a84
Automatic changelog update
PJBot Feb 17, 2024
1ce2155
Add new "OptionsVisualizer" (#25128)
PJB3005 Feb 17, 2024
d4c68a9
Suffix spelling mistake on seed vendor (#25352)
Peptide90 Feb 17, 2024
e493007
Update engine to v210.1.1 (#25354)
PJB3005 Feb 17, 2024
e8eddf5
Stop wagging tails on crit (#25323)
ArchPigeon Feb 17, 2024
fa09f7a
Automatic changelog update
PJBot Feb 17, 2024
aadf749
EVA suit helmets now have (un)equip sounds (#25349)
Killerqu00 Feb 17, 2024
a361e6a
Automatic changelog update
PJBot Feb 17, 2024
110437c
Newton Cradle Fix + Addition to Bureaucracy Crate (#25357)
musicmanvr Feb 17, 2024
8ea30ca
Automatic changelog update
PJBot Feb 17, 2024
0c8e617
Shadow anomaly respects "reduced motion" (#25355)
PJB3005 Feb 18, 2024
8542c71
Fixed directional window durability (#25259)
VigersRay Feb 18, 2024
4b33845
Merge remote-tracking branch 'wizard/master' into upstream180224
PyotrIgn Feb 18, 2024
5e7abd7
robusta
PyotrIgn Feb 18, 2024
0dd381a
Very little cleanup (#25364)
lzk228 Feb 18, 2024
8bb07df
Origin Station Update 18.02.2024 (medbay update) (#25369)
brainfood1183 Feb 18, 2024
3545b02
Update Credits (#25360)
github-actions[bot] Feb 19, 2024
d8e99cc
Add bio reactions (#25366)
genderGeometries Feb 19, 2024
f137f18
Automatic changelog update
PJBot Feb 19, 2024
65d8228
Increase printing price for neck clothes (#25375)
hiucko Feb 19, 2024
fa164f8
Update Core (#25383)
UbaserB Feb 19, 2024
64cecdd
add icons for drinks in Solar's (#25301)
azurerosegarden Feb 19, 2024
429c683
Automatic changelog update
PJBot Feb 19, 2024
1d7167b
Small Nymph Changes (#25363)
LankLTE Feb 19, 2024
bec96f3
Automatic changelog update
PJBot Feb 19, 2024
16d18ab
Bump nixpkgs rev (#25361)
yathxyz Feb 19, 2024
7cf424a
Adds guidebooks to the 4 learner roles (#25388)
PotentiallyTom Feb 19, 2024
706b072
Automatic changelog update
PJBot Feb 19, 2024
e74f301
Add support for metamorphic fill levels (#25022)
Tayrtahn Feb 19, 2024
99aa72e
Vending UI facelift (#25377)
jamessimo Feb 19, 2024
49460f3
Automatic changelog update
PJBot Feb 19, 2024
c4c98a2
Make metamorphic glasses use last solution's empty sprite (#25322)
Tayrtahn Feb 19, 2024
023bad8
Moths can eat plushies (#25382)
marboww Feb 19, 2024
741b9b5
Automatic changelog update
PJBot Feb 19, 2024
f5cb9a0
Make pills colorful and labeled (#25284)
veprolet Feb 19, 2024
d72254d
Add Flammable Touch Reaction for liquid tritium (#25281)
ArchPigeon Feb 19, 2024
1e95c70
randomized sexless species now have epicene gender by default (#25282)
Dutch-VanDerLinde Feb 19, 2024
1390b0b
Automatic changelog update
PJBot Feb 19, 2024
db809a2
Mechanized treatment improvements (#25356)
Mangohydra Feb 19, 2024
2548b13
Hotfix: Set round end information for replays back to null on round s…
VasilisThePikachu Feb 20, 2024
bd4597c
Fix action state handling bug (#25395)
ElectroJr Feb 20, 2024
2907e84
Automatic changelog update
PJBot Feb 20, 2024
2e6eaa4
Fix admin notes and database time nonsense. (#25280)
PJB3005 Feb 20, 2024
74a31ac
PlayerListControl fixes. (#25248)
PJB3005 Feb 20, 2024
7271d3a
Automatic changelog update
PJBot Feb 20, 2024
5b0a938
Ore crab structural weakness (#25390)
Tonydatguy Feb 20, 2024
c966a22
Automatic changelog update
PJBot Feb 20, 2024
bd40c0c
Set nav map icon textures to use bilinear filtering (#25411)
PJB3005 Feb 20, 2024
84d455b
Fix PlayerListControl re-raising selection changed when repopulated. …
PJB3005 Feb 20, 2024
f64a329
Train station (#24927)
TheShuEd Feb 20, 2024
79dc4e4
Mindshield outline flashes, (#25409)
Golinth Feb 20, 2024
3117e60
Automatic changelog update
PJBot Feb 20, 2024
dfa59a4
Small Artifact Fixes (#25416)
Deeeeja Feb 20, 2024
5170593
Add roundid to replay_final.yml (#25398)
VasilisThePikachu Feb 20, 2024
114f2aa
Resprite & hand position correction of Nettle & Death Nettle (#25421)
MjrLandWhale Feb 20, 2024
15280fa
Automatic changelog update
PJBot Feb 20, 2024
89d0b47
balance Explosive Technology (#25397)
takemysoult Feb 21, 2024
811858a
Automatic changelog update
PJBot Feb 21, 2024
5a2c744
Tiny shove fix. (#25353)
Callmore Feb 21, 2024
7a2546c
Automatic changelog update
PJBot Feb 21, 2024
841de41
Ban loc fix (#25424)
metalgearsloth Feb 21, 2024
573f9a3
New HUD theme: Ashen (#25408)
UbaserB Feb 21, 2024
254d144
Automatic changelog update
PJBot Feb 21, 2024
2c92881
Remove sunglasses from ClothesMate. (#25221)
Holinka4ever Feb 21, 2024
1e0b62a
Automatic changelog update
PJBot Feb 21, 2024
16622f6
Additional Glass Doors + Secure Windoors (#25389)
musicmanvr Feb 21, 2024
7e9bca9
Food poisoning changes (#25418)
Errant-4 Feb 21, 2024
1de06bd
Automatic changelog update
PJBot Feb 21, 2024
cb85229
Updates The Deathnettle Nerf (#25286)
UltimateJester Feb 21, 2024
d1d4651
Automatic changelog update
PJBot Feb 21, 2024
29cdb9c
Add fill level sprites for all the drinks (#25319)
Tayrtahn Feb 21, 2024
2cf2994
allow happy honk to hold medium sized items (#25245)
potato1234x Feb 21, 2024
37a4f2d
Hud Standardization (#25208)
Hanzdegloker Feb 21, 2024
8c6a8c3
Remove drones, fix InnateToolSystem (#25372)
DebugOk Feb 21, 2024
390ca2a
Automatic changelog update
PJBot Feb 21, 2024
4372e29
Dept. Head Dresser + Locker Fixup (#25206)
Hanzdegloker Feb 21, 2024
44d7c4c
Automatic changelog update
PJBot Feb 21, 2024
688c9ab
Add new stairs (#25212)
Ko4ergaPunk Feb 21, 2024
435efd7
Upgrade trash bag max item size to Normal (#25241)
jessicamaybe Feb 21, 2024
d5e7637
Uplink hardsuit bundles rework (#25189)
AlexUm418 Feb 21, 2024
1eb6958
add troll conducting gloves to uplink (#25227)
deltanedas Feb 21, 2024
80fa454
Automatic changelog update
PJBot Feb 21, 2024
9068f86
train update (#25428)
Emisse Feb 21, 2024
8f0b469
Add guidebook page for the RTG (#25040)
veliebm Feb 21, 2024
b98450a
No More DMCA over pirate_start (#25153)
PoorMansDreams Feb 21, 2024
012e6e6
Remove contests (#25425)
metalgearsloth Feb 21, 2024
bc9c31a
Automatic changelog update
PJBot Feb 21, 2024
92e115f
add syndicate hud to nukeops uplink (#25087)
takemysoult Feb 21, 2024
1961456
Adds a mask slot and moves adminPDA to new ID slot for aghost (#25402)
SphiraI Feb 21, 2024
43f9009
Automatic changelog update
PJBot Feb 21, 2024
9674b79
Nerfs normal nettles to be weaker than their deathnettle counterparts…
UltimateJester Feb 21, 2024
4126797
Automatic changelog update
PJBot Feb 21, 2024
33153aa
Spaceman's Trumpet and Lily (#25090)
potato1234x Feb 21, 2024
c4fc032
Kill blumpkin donut (#25431)
Emisse Feb 21, 2024
bceae01
Automatic changelog update
PJBot Feb 21, 2024
77e8930
Remove Acidifier from Syndie Uplink and Increase Price to 4tc (#25039)
FungiFellow Feb 21, 2024
a3c93b0
Add option for admins to disable bwoink (#25008)
dffdff2423 Feb 21, 2024
cd63708
Automatic changelog update
PJBot Feb 21, 2024
f29575f
Voice trigger fixes, death acidifier typos (#24941)
Krunklehorn Feb 21, 2024
fb9ddab
Updates to Packed (#24907)
Krunklehorn Feb 21, 2024
a18e2c0
packed update (#25437)
Emisse Feb 21, 2024
ef849a0
fix: #25102 cryo pod now uses health-analyzer system to update body s…
Fildrance Feb 21, 2024
72acdd5
Automatic changelog update
PJBot Feb 21, 2024
128f5e8
Adds random pill canister (#25316)
IamVelcroboy Feb 21, 2024
046c874
Moves muted to shared (#25374)
keronshb Feb 21, 2024
79c6385
Fix bwoink sounds (#25441)
metalgearsloth Feb 21, 2024
499aa71
Dispenser jug fix (#25450)
MjrLandWhale Feb 21, 2024
abedce4
Automatic changelog update
PJBot Feb 21, 2024
ae11068
Fix EVA helmets quickequip (#25448)
Killerqu00 Feb 21, 2024
2cc484c
Automatic changelog update
PJBot Feb 21, 2024
1360d57
Crop harvest int cast fix (#25453)
genderGeometries Feb 22, 2024
fda1242
Automatic changelog update
PJBot Feb 22, 2024
326b890
Little rework of existing yaml flatpacks (#24814)
lzk228 Feb 22, 2024
26417b7
Fix xeno and dragon blood levels (#25442)
QuietlyWhisper Feb 22, 2024
7734b09
Automatic changelog update
PJBot Feb 22, 2024
48213eb
Changed radio jammer wattage from 6 -> 2 (#25432)
beck-thompson Feb 22, 2024
423b75f
Automatic changelog update
PJBot Feb 22, 2024
7c7bca1
Remove obs kit (#24768)
metalgearsloth Feb 22, 2024
d0df5ed
Revert "Remove handheld crew monitor (#24761)" (#25439)
metalgearsloth Feb 22, 2024
c27d0c1
Automatic changelog update
PJBot Feb 22, 2024
b26e9a9
Fix #22933 - Job-specific Uplink items leaking to non-job minds (#23179)
DrMelon Feb 22, 2024
3c25e63
Automatic changelog update
PJBot Feb 22, 2024
85ae40e
Red flashlight color for assault borg (#25465)
liltenhead Feb 22, 2024
22c76bb
Automatic changelog update
PJBot Feb 22, 2024
487dd11
Add RequiresGrid component (#23394)
HoofedEar Feb 22, 2024
35723ad
Make even more items good looking in inventory + size changing (#25461)
lzk228 Feb 22, 2024
7ac3a2a
Automatic changelog update
PJBot Feb 22, 2024
83cd108
Add Large Wood Floors (#25462)
ps3moira Feb 22, 2024
2b34970
Automatic changelog update
PJBot Feb 22, 2024
f38a961
fix reagent slime role description being friendly (#25466)
QuietlyWhisper Feb 22, 2024
e6605a7
Automatic changelog update
PJBot Feb 22, 2024
b774759
Give "DO NOT MAP" suffix to handheld crew monitor (#25473)
notquitehadouken Feb 22, 2024
ce0a51f
Predict doors and airlocks (#25419)
EmoGarbage404 Feb 22, 2024
146c7b2
Fix examine text bug for Openable Drinkables (#25478)
Tayrtahn Feb 23, 2024
6568737
Make galoshes obtainable and slowing you (#25484)
lzk228 Feb 23, 2024
84d9f7a
Automatic changelog update
PJBot Feb 23, 2024
381bb90
Add prediction to Openable (#25477)
Tayrtahn Feb 23, 2024
2458c87
Add Ratvar (#24958)
MACMAN2003 Feb 23, 2024
b1de6dd
Switch project files to C# 12. (#25487)
PJB3005 Feb 23, 2024
715794d
Make department / job list sorting consistent. (#25486)
PJB3005 Feb 23, 2024
945c8db
Automatic changelog update
PJBot Feb 23, 2024
4ea1d21
Buff emergency welder (#25483)
liltenhead Feb 23, 2024
b75ff77
Automatic changelog update
PJBot Feb 23, 2024
033f232
Update submodule to 211.0.0 (#25489)
metalgearsloth Feb 23, 2024
d8e5f5c
Optimise DecalOverlay (#25266)
metalgearsloth Feb 23, 2024
af7e802
Fix attribution (#25495)
TheShuEd Feb 23, 2024
237d89c
Fix centcom and other jobs with setPreference set to false showing up…
VasilisThePikachu Feb 23, 2024
2ad3243
Automatic changelog update
PJBot Feb 23, 2024
7a37d4a
Make cargo order unanchored thruster and gyroscope (#25497)
lzk228 Feb 23, 2024
2a5eb86
Minor cookie fortune fix (#25503)
lapatison Feb 23, 2024
39a2ff5
Fix a single grammar error (#25512)
Erisfiregamer1 Feb 24, 2024
786ecd9
Automatic changelog update
PJBot Feb 24, 2024
431f0bd
Update Credits (#25532)
github-actions[bot] Feb 25, 2024
84fff93
Fixed Fire Extinguisher safety range (#25534)
beck-thompson Feb 25, 2024
51caf3b
Automatic changelog update
PJBot Feb 25, 2024
5806401
Remove the ability for command or any antag-safe role from being init…
ArchPigeon Feb 25, 2024
c52820a
Automatic changelog update
PJBot Feb 25, 2024
e1cce9d
Prevent clients from setting their species to whatever they want (#25…
DebugOk Feb 25, 2024
34a6f12
Update submodule to 211.0.2 (#25536)
metalgearsloth Feb 25, 2024
531d722
Increase contrast with hand select for Ashen UI theme (#25517)
UbaserB Feb 25, 2024
9a4c10c
pAI map button sprite change (#25384)
UbaserB Feb 25, 2024
aa4e7c0
Made ordering multiple crates at cargo order multiple crates (#25518)
PolterTzi Feb 25, 2024
e52ebe0
Automatic changelog update
PJBot Feb 25, 2024
ec5edc3
Selectively revert gun penetration (#25551)
metalgearsloth Feb 25, 2024
bcbe2ec
Cleanup ExecutionSystem (#24382)
nikthechampiongr Feb 25, 2024
bb0776c
Revert "Cleanup ExecutionSystem (#24382)" (#25555)
metalgearsloth Feb 25, 2024
51acebd
Automatic changelog update
PJBot Feb 25, 2024
902198d
Fix candy bowls (#25514)
Krunklehorn Feb 25, 2024
6f3893a
Automatic changelog update
PJBot Feb 25, 2024
a440ccf
Fix cuffs popup prediction (#25553)
metalgearsloth Feb 25, 2024
1a5f7c3
Toggleable items shape change on toggle state (#25392)
MilenVolf Feb 25, 2024
1de102d
Juice that makes you Weh! (but real!) (#25132)
QuietlyWhisper Feb 25, 2024
87def40
Added ContainerSpawnPoint check for integration test (#25446)
778b Feb 25, 2024
4613c9d
Automatic changelog update
PJBot Feb 25, 2024
ad29dbe
Fix ItemSlots prediction (#25552)
metalgearsloth Feb 25, 2024
7ba6765
fix solar computer sprite (#25548)
potato1234x Feb 25, 2024
b30cda8
Added Survival to the secret rotation (#25568)
wafehling Feb 25, 2024
4e16034
Automatic changelog update
PJBot Feb 25, 2024
de36ebe
Don't double-dip survival intensity scaling (#25570)
mirrorcult Feb 25, 2024
3ef4e83
Add server name into the replay final (#25564)
VasilisThePikachu Feb 25, 2024
b26acc9
Panic bunker fix (#25538)
metalgearsloth Feb 25, 2024
100ece2
Add a container display to dispenser UI (#25391)
Tayrtahn Feb 25, 2024
02be78b
Automatic changelog update
PJBot Feb 25, 2024
7d6e4b1
Fix grid inventory pick/drop rotation (#25510)
Krunklehorn Feb 25, 2024
f463cdf
Satchel empty space is now fully transparent (#25147)
UbaserB Feb 25, 2024
48604b0
Automatic changelog update
PJBot Feb 25, 2024
97d41cf
add "missing spacepen" poster (#25502)
hiucko Feb 25, 2024
656679c
Flora anomaly nerf (#25499)
TheShuEd Feb 25, 2024
90279b3
Automatic changelog update
PJBot Feb 25, 2024
f8bcbb9
апдейт робусты
PyotrIgn Feb 26, 2024
8fe364a
массбан фикс
PyotrIgn Feb 26, 2024
17e7089
вокс тайпинг индикейтор - фикс 1
PyotrIgn Feb 26, 2024
343ede5
тайпинг индикейтор вокс - фикс 2
PyotrIgn Feb 26, 2024
55e15fb
Merge remote-tracking branch 'wizard/master' into upstream180224
PyotrIgn Feb 26, 2024
f04df39
Merge branch 'master' into upstream180224
PyotrIgn Feb 26, 2024
c53c0d0
фикс профиля
PyotrIgn Feb 26, 2024
2d60792
Merge branch 'upstream180224' of https://github.com/xtray85/space_sta…
PyotrIgn Feb 26, 2024
349c0d6
фикс мьюта
PyotrIgn Feb 26, 2024
c03d4c1
фикс меню аплинка
PyotrIgn Feb 26, 2024
7c8fbdd
фикс мартинеза
Feb 26, 2024
823d03a
фикс бура попытка 1
Feb 26, 2024
bb54a45
выключение дронов
PyotrIgn Feb 26, 2024
a8d5ecb
фикс джобс рси
PyotrIgn Feb 27, 2024
8b1c44e
Merge branch 'master' into upstream180224
PyotrIgn Feb 27, 2024
0d0f709
фикс джобиконов
PyotrIgn Feb 27, 2024
f8e7a59
Merge branch 'upstream180224' of https://github.com/xtray85/space_sta…
PyotrIgn Feb 27, 2024
3d25324
фикс радости доктора
PyotrIgn Feb 27, 2024
419f47a
Merge branch 'master' into upstream180224
PyotrIgn Feb 27, 2024
485ad46
фикс постер рси
PyotrIgn Feb 27, 2024
f56f409
Merge branch 'upstream180224' of https://github.com/xtray85/space_sta…
PyotrIgn Feb 27, 2024
7b831f7
обновление робусты
PyotrIgn Feb 29, 2024
bc92e88
Merge branch 'master' into upstream180224
PyotrIgn Mar 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .envrc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
if ! has nix_direnv_version || ! nix_direnv_version 2.3.0; then
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/2.3.0/direnvrc" "sha256-Dmd+j63L84wuzgyjITIfSxSD57Tx7v51DMxVZOsiUD8="
if ! has nix_direnv_version || ! nix_direnv_version 3.0.4; then
source_url "https://raw.githubusercontent.com/nix-community/nix-direnv/3.0.4/direnvrc" "sha256-DzlYZ33mWF/Gs8DDeyjr8mnVmQGx7ASYqA5WlxwvBG4="
fi
use flake
8 changes: 4 additions & 4 deletions Content.Benchmarks/ColorInterpolateBenchmark.cs
Original file line number Diff line number Diff line change
Expand Up @@ -131,8 +131,8 @@ public static Color InterpolateSysVector4(Color a, Color b,
public static Color InterpolateSysVector4In(in Color endPoint1, in Color endPoint2,
float lambda)
{
ref var sva = ref Unsafe.As<Color, SysVector4>(ref Unsafe.AsRef(endPoint1));
ref var svb = ref Unsafe.As<Color, SysVector4>(ref Unsafe.AsRef(endPoint2));
ref var sva = ref Unsafe.As<Color, SysVector4>(ref Unsafe.AsRef(in endPoint1));
ref var svb = ref Unsafe.As<Color, SysVector4>(ref Unsafe.AsRef(in endPoint2));

var res = SysVector4.Lerp(svb, sva, lambda);

Expand All @@ -156,8 +156,8 @@ public static Color InterpolateSimd(Color a, Color b,
public static Color InterpolateSimdIn(in Color a, in Color b,
float lambda)
{
var vecA = Unsafe.As<Color, Vector128<float>>(ref Unsafe.AsRef(a));
var vecB = Unsafe.As<Color, Vector128<float>>(ref Unsafe.AsRef(b));
var vecA = Unsafe.As<Color, Vector128<float>>(ref Unsafe.AsRef(in a));
var vecB = Unsafe.As<Color, Vector128<float>>(ref Unsafe.AsRef(in b));

vecB = Fma.MultiplyAdd(Sse.Subtract(vecB, vecA), Vector128.Create(lambda), vecA);

Expand Down
5 changes: 0 additions & 5 deletions Content.Benchmarks/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,6 @@ internal static class Program

public static void Main(string[] args)
{
MainAsync(args).GetAwaiter().GetResult();
}

public static async Task MainAsync(string[] args)
{
#if DEBUG
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("\nWARNING: YOU ARE RUNNING A DEBUG BUILD, USE A RELEASE BUILD FOR AN ACCURATE BENCHMARK");
Expand Down
23 changes: 12 additions & 11 deletions Content.Client/Actions/ActionsSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,12 @@ private void OnWorldTargetHandleState(EntityUid uid, WorldTargetActionComponent

private void BaseHandleState<T>(EntityUid uid, BaseActionComponent component, BaseActionComponentState state) where T : BaseActionComponent
{
// TODO ACTIONS use auto comp states
component.Icon = state.Icon;
component.IconOn = state.IconOn;
component.IconColor = state.IconColor;
component.Keywords = new HashSet<string>(state.Keywords);
component.Keywords.Clear();
component.Keywords.UnionWith(state.Keywords);
component.Enabled = state.Enabled;
component.Toggled = state.Toggled;
component.Cooldown = state.Cooldown;
Expand All @@ -101,8 +103,7 @@ private void BaseHandleState<T>(EntityUid uid, BaseActionComponent component, Ba
component.ItemIconStyle = state.ItemIconStyle;
component.Sound = state.Sound;

if (_playerManager.LocalPlayer?.ControlledEntity == component.AttachedEntity)
ActionsUpdated?.Invoke();
UpdateAction(uid, component);
}

protected override void UpdateAction(EntityUid? actionId, BaseActionComponent? action = null)
Expand All @@ -111,7 +112,7 @@ protected override void UpdateAction(EntityUid? actionId, BaseActionComponent? a
return;

base.UpdateAction(actionId, action);
if (_playerManager.LocalPlayer?.ControlledEntity != action.AttachedEntity)
if (_playerManager.LocalEntity != action.AttachedEntity)
return;

ActionsUpdated?.Invoke();
Expand Down Expand Up @@ -144,7 +145,7 @@ private void HandleComponentState(EntityUid uid, ActionsComponent component, ref
_added.Add((actionId, action));
}

if (_playerManager.LocalPlayer?.ControlledEntity != uid)
if (_playerManager.LocalEntity != uid)
return;

foreach (var action in _removed)
Expand Down Expand Up @@ -177,23 +178,23 @@ public static int ActionComparer((EntityUid, BaseActionComponent?) a, (EntityUid
protected override void ActionAdded(EntityUid performer, EntityUid actionId, ActionsComponent comp,
BaseActionComponent action)
{
if (_playerManager.LocalPlayer?.ControlledEntity != performer)
if (_playerManager.LocalEntity != performer)
return;

OnActionAdded?.Invoke(actionId);
}

protected override void ActionRemoved(EntityUid performer, EntityUid actionId, ActionsComponent comp, BaseActionComponent action)
{
if (_playerManager.LocalPlayer?.ControlledEntity != performer)
if (_playerManager.LocalEntity != performer)
return;

OnActionRemoved?.Invoke(actionId);
}

public IEnumerable<(EntityUid Id, BaseActionComponent Comp)> GetClientActions()
{
if (_playerManager.LocalPlayer?.ControlledEntity is not { } user)
if (_playerManager.LocalEntity is not { } user)
return Enumerable.Empty<(EntityUid, BaseActionComponent)>();

return GetActions(user);
Expand All @@ -216,7 +217,7 @@ public void UnlinkAllActions()

public void LinkAllActions(ActionsComponent? actions = null)
{
if (_playerManager.LocalPlayer?.ControlledEntity is not { } user ||
if (_playerManager.LocalEntity is not { } user ||
!Resolve(user, ref actions, false))
{
return;
Expand All @@ -233,7 +234,7 @@ public override void Shutdown()

public void TriggerAction(EntityUid actionId, BaseActionComponent action)
{
if (_playerManager.LocalPlayer?.ControlledEntity is not { } user ||
if (_playerManager.LocalEntity is not { } user ||
!TryComp(user, out ActionsComponent? actions))
{
return;
Expand Down Expand Up @@ -261,7 +262,7 @@ public void TriggerAction(EntityUid actionId, BaseActionComponent action)
/// </summary>
public void LoadActionAssignments(string path, bool userData)
{
if (_playerManager.LocalPlayer?.ControlledEntity is not { } user)
if (_playerManager.LocalEntity is not { } user)
return;

var file = new ResPath(path).ToRootedPath();
Expand Down
17 changes: 9 additions & 8 deletions Content.Client/Administration/Managers/ClientAdminManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,13 @@ public sealed class ClientAdminManager : IClientAdminManager, IClientConGroupImp
[Dependency] private readonly IClientNetManager _netMgr = default!;
[Dependency] private readonly IClientConGroupController _conGroup = default!;
[Dependency] private readonly IResourceManager _res = default!;
[Dependency] private readonly ILogManager _logManager = default!;

private AdminData? _adminData;
private readonly HashSet<string> _availableCommands = new();

private readonly AdminCommandPermissions _localCommandPermissions = new();
private ISawmill _sawmill = default!;

public event Action? AdminStatusUpdated;

Expand Down Expand Up @@ -92,17 +94,17 @@ private void UpdateMessageRx(MsgUpdateAdminStatus message)
}

_availableCommands.UnionWith(message.AvailableCommands);
Logger.DebugS("admin", $"Have {message.AvailableCommands.Length} commands available");
_sawmill.Debug($"Have {message.AvailableCommands.Length} commands available");

_adminData = message.Admin;
if (_adminData != null)
{
var flagsText = string.Join("|", AdminFlagsHelper.FlagsToNames(_adminData.Flags));
Logger.InfoS("admin", $"Updated admin status: {_adminData.Active}/{_adminData.Title}/{flagsText}");
_sawmill.Info($"Updated admin status: {_adminData.Active}/{_adminData.Title}/{flagsText}");
}
else
{
Logger.InfoS("admin", "Updated admin status: Not admin");
_sawmill.Info("Updated admin status: Not admin");
}

AdminStatusUpdated?.Invoke();
Expand All @@ -114,26 +116,25 @@ private void UpdateMessageRx(MsgUpdateAdminStatus message)
void IPostInjectInit.PostInject()
{
_conGroup.Implementation = this;
_sawmill = _logManager.GetSawmill("admin");
}

public AdminData? GetAdminData(EntityUid uid, bool includeDeAdmin = false)
{
return uid == _player.LocalPlayer?.ControlledEntity
? _adminData
: null;
return uid == _player.LocalEntity ? _adminData : null;
}

public AdminData? GetAdminData(ICommonSession session, bool includeDeAdmin = false)
{
if (_player.LocalPlayer?.UserId == session.UserId)
if (_player.LocalUser == session.UserId)
return _adminData;

return null;
}

public AdminData? GetAdminData(bool includeDeAdmin = false)
{
if (_player.LocalPlayer is { Session: { } session })
if (_player.LocalSession is { } session)
return GetAdminData(session, includeDeAdmin);

return null;
Expand Down
4 changes: 2 additions & 2 deletions Content.Client/Administration/Systems/BwoinkSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ protected override void OnBwoinkTextMessage(BwoinkTextMessage message, EntitySes
OnBwoinkTextMessageRecieved?.Invoke(this, message);
}

public void Send(NetUserId channelId, string text)
public void Send(NetUserId channelId, string text, bool playSound)
{
// Reuse the channel ID as the 'true sender'.
// Server will ignore this and if someone makes it not ignore this (which is bad, allows impersonation!!!), that will help.
RaiseNetworkEvent(new BwoinkTextMessage(channelId, channelId, text));
RaiseNetworkEvent(new BwoinkTextMessage(channelId, channelId, text, playSound: playSound));
SendInputTextUpdated(channelId, false);
}

Expand Down
2 changes: 2 additions & 0 deletions Content.Client/Administration/UI/Bwoink/BwoinkControl.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
<BoxContainer Orientation="Vertical" HorizontalExpand="True" SizeFlagsStretchRatio="2">
<BoxContainer Access="Public" Name="BwoinkArea" VerticalExpand="True" />
<BoxContainer Orientation="Horizontal" HorizontalExpand="True">
<CheckBox Visible="True" Name="PlaySound" Access="Public" Text="{Loc 'admin-bwoink-play-sound'}" Pressed="True" />
<Control HorizontalExpand="True" MinWidth="5" />
<Button Visible="True" Name="PopOut" Access="Public" Text="{Loc 'admin-logs-pop-out'}" StyleClasses="OpenBoth" HorizontalAlignment="Left" />
<Control HorizontalExpand="True" />
<Button Visible="False" Name="Bans" Text="{Loc 'admin-player-actions-bans'}" StyleClasses="OpenRight" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ public sealed partial class PlayerListControl : BoxContainer
private IEntityManager _entManager;
private IUserInterfaceManager _uiManager;

private PlayerInfo? _selectedPlayer;

public PlayerListControl()
{
_entManager = IoCManager.Resolve<IEntityManager>();
Expand All @@ -50,10 +52,14 @@ private void PlayerListItemPressed(BaseButton.ButtonEventArgs? args, ListData? d
if (args == null || data is not PlayerListData {Info: var selectedPlayer})
return;

if (selectedPlayer == _selectedPlayer)
return;

if (args.Event.Function != EngineKeyFunctions.UIClick)
return;

OnSelectionChanged?.Invoke(selectedPlayer);
_selectedPlayer = selectedPlayer;

// update label text. Only required if there is some override (e.g. unread bwoink count).
if (OverrideText != null && args.Button.Children.FirstOrDefault()?.Children?.FirstOrDefault() is Label label)
Expand Down Expand Up @@ -95,13 +101,18 @@ private void FilterList()
_sortedPlayerList.Sort((a, b) => Comparison(a, b));

PlayerListContainer.PopulateList(_sortedPlayerList.Select(info => new PlayerListData(info)).ToList());
if (_selectedPlayer != null)
PlayerListContainer.Select(new PlayerListData(_selectedPlayer));
}

public void PopulateList(IReadOnlyList<PlayerInfo>? players = null)
{
players ??= _adminSystem.PlayerList;

_playerList = players.ToList();
if (_selectedPlayer != null && !_playerList.Contains(_selectedPlayer))
_selectedPlayer = null;

FilterList();
}

Expand Down
6 changes: 3 additions & 3 deletions Content.Client/Administration/UI/Notes/AdminNotesLine.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ private void Refresh()
SeverityRect.Texture = _sprites.Frame0(new SpriteSpecifier.Texture(new ResPath(iconPath)));
}

TimeLabel.Text = Note.CreatedAt.ToString("yyyy-MM-dd HH:mm:ss");
TimeLabel.Text = Note.CreatedAt.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss");
ServerLabel.Text = Note.ServerName ?? "Unknown";
RoundLabel.Text = Note.Round == null ? "Unknown round" : "Round " + Note.Round;
AdminLabel.Text = Note.CreatedByName;
Expand All @@ -91,7 +91,7 @@ private void Refresh()
if (Note.ExpiryTime.Value > DateTime.UtcNow)
{
ExpiresLabel.Text = Loc.GetString("admin-note-editor-expiry-label-params",
("date", Note.ExpiryTime.Value.ToString("yyyy-MM-dd HH:mm:ss")),
("date", Note.ExpiryTime.Value.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss")),
("expiresIn", (Note.ExpiryTime.Value - DateTime.UtcNow).ToString("d'd 'hh':'mm")));
ExpiresLabel.Modulate = Color.FromHex("#86DC3D");
}
Expand All @@ -104,7 +104,7 @@ private void Refresh()

if (Note.LastEditedAt > Note.CreatedAt)
{
EditedLabel.Text = Loc.GetString("admin-notes-edited", ("author", Note.EditedByName), ("date", Note.LastEditedAt));
EditedLabel.Text = Loc.GetString("admin-notes-edited", ("author", Note.EditedByName), ("date", Note.LastEditedAt.Value.ToLocalTime()));
EditedLabel.Visible = true;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,12 @@ public AdminNotesLinePopup(SharedAdminNote note, string playerName, bool showDel
? Loc.GetString("admin-notes-round-id-unknown")
: Loc.GetString("admin-notes-round-id", ("id", note.Round));
CreatedByLabel.Text = Loc.GetString("admin-notes-created-by", ("author", note.CreatedByName));
CreatedAtLabel.Text = Loc.GetString("admin-notes-created-at", ("date", note.CreatedAt.ToString("yyyy-MM-dd HH:mm:ss")));
CreatedAtLabel.Text = Loc.GetString("admin-notes-created-at", ("date", note.CreatedAt.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss")));
EditedByLabel.Text = Loc.GetString("admin-notes-last-edited-by", ("author", note.EditedByName));
EditedAtLabel.Text = Loc.GetString("admin-notes-last-edited-at", ("date", note.LastEditedAt?.ToString("yyyy-MM-dd HH:mm:ss") ?? Loc.GetString("admin-notes-edited-never")));
EditedAtLabel.Text = Loc.GetString("admin-notes-last-edited-at", ("date", note.LastEditedAt?.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss") ?? Loc.GetString("admin-notes-edited-never")));
ExpiryTimeLabel.Text = note.ExpiryTime == null
? Loc.GetString("admin-notes-expires-never")
: Loc.GetString("admin-notes-expires", ("expires", note.ExpiryTime.Value.ToString("yyyy-MM-dd HH:mm:ss")));
: Loc.GetString("admin-notes-expires", ("expires", note.ExpiryTime.Value.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss")));
NoteTextEdit.InsertAtCursor(note.Message);

if (note.NoteType is NoteType.ServerBan or NoteType.RoleBan)
Expand Down
6 changes: 3 additions & 3 deletions Content.Client/Administration/UI/Notes/NoteEdit.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ public NoteEdit(SharedAdminNote? note, string playerName, bool canCreate, bool c
{
PermanentCheckBox.Pressed = false;
UpdatePermanentCheckboxFields();
ExpiryLineEdit.Text = ExpiryTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
ExpiryLineEdit.Text = ExpiryTime.Value.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss");
}
}

Expand Down Expand Up @@ -173,7 +173,7 @@ private void UpdatePermanentCheckboxFields()
ExpiryLabel.Visible = !PermanentCheckBox.Pressed;
ExpiryLineEdit.Visible = !PermanentCheckBox.Pressed;

ExpiryLineEdit.Text = !PermanentCheckBox.Pressed ? DateTime.UtcNow.ToString("yyyy-MM-dd HH:mm:ss") : string.Empty;
ExpiryLineEdit.Text = !PermanentCheckBox.Pressed ? DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") : string.Empty;
}

private void OnSecretPressed(BaseButton.ButtonEventArgs _)
Expand Down Expand Up @@ -269,7 +269,7 @@ private bool ParseExpiryTime()
return false;
}

ExpiryTime = result;
ExpiryTime = result.ToUniversalTime();
ExpiryLineEdit.ModulateSelfOverride = null;
return true;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ private void SetLocation()
{
UpdateMapOptions();

if (!_entMan.TryGetComponent(_playerManager.LocalPlayer?.ControlledEntity, out TransformComponent? transform))
if (!_entMan.TryGetComponent(_playerManager.LocalEntity, out TransformComponent? transform))
return;

_pausePreview = true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ private void Reset()
var entManager = IoCManager.Resolve<IEntityManager>();
var xformSystem = entManager.System<SharedTransformSystem>();
var playerManager = IoCManager.Resolve<IPlayerManager>();
var player = playerManager.LocalPlayer?.ControlledEntity;
var player = playerManager.LocalEntity;

var currentMap = MapId.Nullspace;
var position = Vector2.Zero;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ protected override void EnteredTree()
{
_data.Clear();

var player = _players.LocalPlayer?.ControlledEntity;
var player = _players.LocalEntity;
var playerGrid = _entities.GetComponentOrNull<TransformComponent>(player)?.GridUid;
var query = IoCManager.Resolve<IEntityManager>().AllEntityQueryEnumerator<MapGridComponent>();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ protected override void EnteredTree()
while (gridQuery.MoveNext(out var uid, out _))
{
_gridData.Add(entManager.GetNetEntity(uid));
var player = playerManager.LocalPlayer?.ControlledEntity;
var player = playerManager.LocalEntity;
var playerGrid = entManager.GetComponentOrNull<TransformComponent>(player)?.GridUid;
GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ protected override void EnteredTree()

while (gridQuery.MoveNext(out var uid, out _))
{
var player = playerManager.LocalPlayer?.ControlledEntity;
var player = playerManager.LocalEntity;
var playerGrid = entManager.GetComponentOrNull<TransformComponent>(player)?.GridUid;
GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
_gridData.Add(entManager.GetNetEntity(uid));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ protected override void EnteredTree()

while (gridQuery.MoveNext(out var uid, out _))
{
var player = playerManager.LocalPlayer?.ControlledEntity;
var player = playerManager.LocalEntity;
var playerGrid = entManager.GetComponentOrNull<TransformComponent>(player)?.GridUid;
GridOptions.AddItem($"{uid} {(playerGrid == uid ? " (Current)" : "")}");
_data.Add(entManager.GetNetEntity(uid));
Expand Down
Loading
Loading