Skip to content

Commit 7145a57

Browse files
committed
Redo layout of character selection window #2532
Also rework button sounds so that they have consistent sounds throughout the engine
1 parent f521d6f commit 7145a57

16 files changed

+351
-249
lines changed

Intersect.Client.Core/Core/Input.cs

+7-3
Original file line numberDiff line numberDiff line change
@@ -232,10 +232,14 @@ public static void OnKeyPressed(Keys modifier, Keys key)
232232
switch (control)
233233
{
234234
case Control.Enter:
235-
if (!selectCharacterWindow.IsHidden && selectCharacterWindow.Characters[selectCharacterWindow.mSelectedChar] != null)
235+
if (selectCharacterWindow is { IsHidden: false, CharacterSelectionPreviews: { } previews })
236236
{
237-
selectCharacterWindow.ButtonPlay_Clicked(null, null);
238-
consumeKey = true;
237+
var selectedPreviewIndex = selectCharacterWindow._selectedCharacterIndex;
238+
if (previews.Length > selectedPreviewIndex && previews[selectedPreviewIndex] != default)
239+
{
240+
selectCharacterWindow.ButtonPlay_Clicked(null, null);
241+
consumeKey = true;
242+
}
239243
}
240244
break;
241245
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
using Intersect.Network.Packets.Server;
2+
3+
namespace Intersect.Client.Interface.Menu;
4+
5+
public record struct CharacterSelectionPreviewMetadata(
6+
Guid Id,
7+
string Name,
8+
string Sprite,
9+
string Face,
10+
int Level,
11+
string Class,
12+
EquipmentFragment[] Equipment
13+
);

Intersect.Client.Core/Interface/Menu/LoginWindow.cs

+1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
using Intersect.Client.Framework.Gwen;
55
using Intersect.Client.Framework.Gwen.Control;
66
using Intersect.Client.Framework.Gwen.Control.EventArguments;
7+
using Intersect.Client.Framework.Gwen.ControlInternal;
78
using Intersect.Client.Framework.Input;
89
using Intersect.Client.General;
910
using Intersect.Client.Interface.Game.Chat;

Intersect.Client.Core/Interface/Menu/MainMenu.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -176,10 +176,10 @@ public void Reset()
176176

177177
public void Hide() => _mainMenuWindow.Hide();
178178

179-
public void NotifyOpenCharacterSelection(List<Character> characters)
179+
public void NotifyOpenCharacterSelection(List<CharacterSelectionPreviewMetadata> characterSelectionPreviews)
180180
{
181181
mShouldOpenCharacterSelection = true;
182-
SelectCharacterWindow.Characters = [.. characters];
182+
SelectCharacterWindow.CharacterSelectionPreviews = [..characterSelectionPreviews];
183183
}
184184

185185
public void NotifyOpenForgotPassword()

Intersect.Client.Core/Interface/Menu/MainMenuWindow.Designer.cs

+5-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)