Character eye customization, scroll bar in appearance tab character setup. Fixes #2946 (#3403)

* A lot of unfinished work, trying to figure stuff out but it ain't really working

* The eye colors finally work on the sprite!

* Big refactor for HumanoidProfileEditor, crashes upon making a lobby

* Fixed Lobby crashing

* Moves the eye selection box to a new tab, which fixes selection the box from going off-screen and not expanding the bars

* uncommented something I shouldn't have commented out

* Moved eye colors back to the appearance tab, still some ui glitches

* Made it possible to scroll in the appearance tab

* Added "Eye color:" label

* Migrating some deprecated functions into their replacements

* Merged two private sealed classes into one public class, removing duplication
This commit is contained in:
RemberBL
2021-03-07 20:48:24 +01:00
committed by GitHub
parent b207162b25
commit 343f183b32
6 changed files with 510 additions and 400 deletions

View File

@@ -1,4 +1,4 @@
#nullable enable
#nullable enable
using Content.Server.GameObjects.Components.Mobs;
using Content.Server.Utility;
using Content.Shared.GameObjects.Components;
@@ -83,6 +83,14 @@ namespace Content.Server.GameObjects.Components
looks.Appearance = looks.Appearance.WithHairColor(color);
}
break;
case EyeColorSelectedMessage msg:
var (eyeR, eyeG, eyeB) = msg.EyeColor;
var eyeColor = new Color(eyeR, eyeG, eyeB);
looks.Appearance = looks.Appearance.WithEyeColor(eyeColor);
break;
}
}
@@ -103,7 +111,7 @@ namespace Content.Server.GameObjects.Components
UserInterface?.Toggle(actor.playerSession);
var msg = new MagicMirrorInitialDataMessage(looks.Appearance.HairColor, looks.Appearance.FacialHairColor, looks.Appearance.HairStyleName,
looks.Appearance.FacialHairStyleName);
looks.Appearance.FacialHairStyleName, looks.Appearance.EyeColor);
UserInterface?.SendMessage(msg, actor.playerSession);
}