* Fix #6154 This is a web edit * This is not a web edit (It's still broken) * Fix more missing files from the patch
This commit is contained in:
@@ -7,6 +7,7 @@ using Content.Shared.GameTicking;
|
|||||||
using Content.Shared.Inventory;
|
using Content.Shared.Inventory;
|
||||||
using Content.Shared.Preferences;
|
using Content.Shared.Preferences;
|
||||||
using Content.Shared.Roles;
|
using Content.Shared.Roles;
|
||||||
|
using Content.Shared.Species;
|
||||||
using Robust.Client.GameObjects;
|
using Robust.Client.GameObjects;
|
||||||
using Robust.Client.UserInterface;
|
using Robust.Client.UserInterface;
|
||||||
using Robust.Client.UserInterface.Controls;
|
using Robust.Client.UserInterface.Controls;
|
||||||
@@ -24,17 +25,21 @@ namespace Content.Client.Lobby.UI
|
|||||||
{
|
{
|
||||||
private readonly IEntityManager _entMan;
|
private readonly IEntityManager _entMan;
|
||||||
private readonly IClientPreferencesManager _preferencesManager;
|
private readonly IClientPreferencesManager _preferencesManager;
|
||||||
private EntityUid _previewDummy;
|
private readonly IPrototypeManager _prototypeManager;
|
||||||
|
private EntityUid? _previewDummy;
|
||||||
|
private string? _previewDummySpecies;
|
||||||
private readonly Label _summaryLabel;
|
private readonly Label _summaryLabel;
|
||||||
private readonly BoxContainer _loaded;
|
private readonly BoxContainer _loaded;
|
||||||
|
private readonly BoxContainer _viewBox;
|
||||||
private readonly Label _unloaded;
|
private readonly Label _unloaded;
|
||||||
|
|
||||||
public LobbyCharacterPreviewPanel(IEntityManager entityManager,
|
public LobbyCharacterPreviewPanel(IEntityManager entityManager,
|
||||||
IClientPreferencesManager preferencesManager)
|
IClientPreferencesManager preferencesManager,
|
||||||
|
IPrototypeManager prototypeManager)
|
||||||
{
|
{
|
||||||
_entMan = entityManager;
|
_entMan = entityManager;
|
||||||
_preferencesManager = preferencesManager;
|
_preferencesManager = preferencesManager;
|
||||||
_previewDummy = entityManager.SpawnEntity("MobHumanDummy", MapCoordinates.Nullspace);
|
_prototypeManager = prototypeManager;
|
||||||
|
|
||||||
var header = new NanoHeading
|
var header = new NanoHeading
|
||||||
{
|
{
|
||||||
@@ -49,11 +54,6 @@ namespace Content.Client.Lobby.UI
|
|||||||
|
|
||||||
_summaryLabel = new Label();
|
_summaryLabel = new Label();
|
||||||
|
|
||||||
var viewSouth = MakeSpriteView(_previewDummy, Direction.South);
|
|
||||||
var viewNorth = MakeSpriteView(_previewDummy, Direction.North);
|
|
||||||
var viewWest = MakeSpriteView(_previewDummy, Direction.West);
|
|
||||||
var viewEast = MakeSpriteView(_previewDummy, Direction.East);
|
|
||||||
|
|
||||||
var vBox = new BoxContainer
|
var vBox = new BoxContainer
|
||||||
{
|
{
|
||||||
Orientation = LayoutOrientation.Vertical
|
Orientation = LayoutOrientation.Vertical
|
||||||
@@ -72,16 +72,12 @@ namespace Content.Client.Lobby.UI
|
|||||||
_loaded.AddChild(CharacterSetupButton);
|
_loaded.AddChild(CharacterSetupButton);
|
||||||
_loaded.AddChild(_summaryLabel);
|
_loaded.AddChild(_summaryLabel);
|
||||||
|
|
||||||
var hBox = new BoxContainer
|
_viewBox = new BoxContainer
|
||||||
{
|
{
|
||||||
Orientation = LayoutOrientation.Horizontal
|
Orientation = LayoutOrientation.Horizontal
|
||||||
};
|
};
|
||||||
hBox.AddChild(viewSouth);
|
|
||||||
hBox.AddChild(viewNorth);
|
|
||||||
hBox.AddChild(viewWest);
|
|
||||||
hBox.AddChild(viewEast);
|
|
||||||
|
|
||||||
_loaded.AddChild(hBox);
|
_loaded.AddChild(_viewBox);
|
||||||
|
|
||||||
vBox.AddChild(_loaded);
|
vBox.AddChild(_loaded);
|
||||||
vBox.AddChild(_unloaded);
|
vBox.AddChild(_unloaded);
|
||||||
@@ -100,7 +96,7 @@ namespace Content.Client.Lobby.UI
|
|||||||
_preferencesManager.OnServerDataLoaded -= UpdateUI;
|
_preferencesManager.OnServerDataLoaded -= UpdateUI;
|
||||||
|
|
||||||
if (!disposing) return;
|
if (!disposing) return;
|
||||||
_entMan.DeleteEntity(_previewDummy);
|
if (_previewDummy != null) _entMan.DeleteEntity(_previewDummy.Value);
|
||||||
_previewDummy = default;
|
_previewDummy = default;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -131,9 +127,19 @@ namespace Content.Client.Lobby.UI
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
_previewDummy = _entMan.SpawnEntity(_prototypeManager.Index<SpeciesPrototype>(selectedCharacter.Species).DollPrototype, MapCoordinates.Nullspace);
|
||||||
|
var viewSouth = MakeSpriteView(_previewDummy.Value, Direction.South);
|
||||||
|
var viewNorth = MakeSpriteView(_previewDummy.Value, Direction.North);
|
||||||
|
var viewWest = MakeSpriteView(_previewDummy.Value, Direction.West);
|
||||||
|
var viewEast = MakeSpriteView(_previewDummy.Value, Direction.East);
|
||||||
|
_viewBox.DisposeAllChildren();
|
||||||
|
_viewBox.AddChild(viewSouth);
|
||||||
|
_viewBox.AddChild(viewNorth);
|
||||||
|
_viewBox.AddChild(viewWest);
|
||||||
|
_viewBox.AddChild(viewEast);
|
||||||
_summaryLabel.Text = selectedCharacter.Summary;
|
_summaryLabel.Text = selectedCharacter.Summary;
|
||||||
EntitySystem.Get<SharedHumanoidAppearanceSystem>().UpdateFromProfile(_previewDummy, selectedCharacter);
|
EntitySystem.Get<SharedHumanoidAppearanceSystem>().UpdateFromProfile(_previewDummy.Value, selectedCharacter);
|
||||||
GiveDummyJobClothes(_previewDummy, selectedCharacter);
|
GiveDummyJobClothes(_previewDummy.Value, selectedCharacter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
using Content.Client.Chat.UI;
|
using Content.Client.Chat.UI;
|
||||||
using Content.Client.Info;
|
using Content.Client.Info;
|
||||||
using Content.Client.Preferences;
|
using Content.Client.Preferences;
|
||||||
using Robust.Client.AutoGenerated;
|
using Robust.Client.AutoGenerated;
|
||||||
@@ -7,7 +7,9 @@ using Robust.Client.UserInterface;
|
|||||||
using Robust.Client.UserInterface.Controls;
|
using Robust.Client.UserInterface.Controls;
|
||||||
using Robust.Client.UserInterface.XAML;
|
using Robust.Client.UserInterface.XAML;
|
||||||
using Robust.Shared.GameObjects;
|
using Robust.Shared.GameObjects;
|
||||||
|
using Robust.Shared.IoC;
|
||||||
using Robust.Shared.Maths;
|
using Robust.Shared.Maths;
|
||||||
|
using Robust.Shared.Prototypes;
|
||||||
using static Robust.Client.UserInterface.Controls.BoxContainer;
|
using static Robust.Client.UserInterface.Controls.BoxContainer;
|
||||||
|
|
||||||
namespace Content.Client.Lobby.UI
|
namespace Content.Client.Lobby.UI
|
||||||
@@ -27,7 +29,8 @@ namespace Content.Client.Lobby.UI
|
|||||||
|
|
||||||
CharacterPreview = new LobbyCharacterPreviewPanel(
|
CharacterPreview = new LobbyCharacterPreviewPanel(
|
||||||
entityManager,
|
entityManager,
|
||||||
preferencesManager)
|
preferencesManager,
|
||||||
|
IoCManager.Resolve<IPrototypeManager>())
|
||||||
{
|
{
|
||||||
HorizontalAlignment = HAlignment.Left
|
HorizontalAlignment = HAlignment.Left
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user