client: кнопка «В лобби» в топбаре DeckBuilder
CI / test (push) Successful in 3m19s
Details
CI / test (push) Successful in 3m19s
Details
- PlayerTopBar рисует «← В лобби» слева от Rating/Community, если передан onLobby; в Lobby кнопки нет. - Тест PlayerTopBar проверяет наличие кнопки. - Проверки: EditMode 69/69, standalone собран.
This commit is contained in:
parent
13654ce134
commit
ce98ea5ed3
|
|
@ -115,6 +115,8 @@ namespace Vanguard.UI
|
||||||
|
|
||||||
AddAction(top, "Rating", "Рейтинг", -312f, 180f, onRating, LobbyIcon.Chart);
|
AddAction(top, "Rating", "Рейтинг", -312f, 180f, onRating, LobbyIcon.Chart);
|
||||||
AddAction(top, "Community", "Сообщество", -96f, 200f, onCommunity, LobbyIcon.Friends);
|
AddAction(top, "Community", "Сообщество", -96f, 200f, onCommunity, LobbyIcon.Friends);
|
||||||
|
if (onLobby != null)
|
||||||
|
AddAction(top, "ToLobby", "← В лобби", -508f, 160f, onLobby, null);
|
||||||
|
|
||||||
_menu = new HamburgerMenu(
|
_menu = new HamburgerMenu(
|
||||||
top,
|
top,
|
||||||
|
|
@ -209,11 +211,16 @@ namespace Vanguard.UI
|
||||||
else
|
else
|
||||||
button.interactable = false;
|
button.interactable = false;
|
||||||
|
|
||||||
var iconColor = onClick != null
|
var textLeft = 18f;
|
||||||
? Accent
|
if (icon != null)
|
||||||
: new Color(Accent.r, Accent.g, Accent.b, 0.35f);
|
{
|
||||||
var iconRect = Icon(buttonRect, new Vector2(30f, 30f), new Vector2(-width * 0.5f + 30f, 0f), 0.6f);
|
var iconColor = onClick != null
|
||||||
icon(iconRect, iconColor);
|
? Accent
|
||||||
|
: new Color(Accent.r, Accent.g, Accent.b, 0.35f);
|
||||||
|
var iconRect = Icon(buttonRect, new Vector2(30f, 30f), new Vector2(-width * 0.5f + 30f, 0f), 0.6f);
|
||||||
|
icon(iconRect, iconColor);
|
||||||
|
textLeft = 52f;
|
||||||
|
}
|
||||||
|
|
||||||
var text = UiKit.CreateText(
|
var text = UiKit.CreateText(
|
||||||
buttonRect,
|
buttonRect,
|
||||||
|
|
@ -225,7 +232,7 @@ namespace Vanguard.UI
|
||||||
var textRect = text.rectTransform;
|
var textRect = text.rectTransform;
|
||||||
textRect.anchorMin = new Vector2(0f, 0f);
|
textRect.anchorMin = new Vector2(0f, 0f);
|
||||||
textRect.anchorMax = new Vector2(1f, 1f);
|
textRect.anchorMax = new Vector2(1f, 1f);
|
||||||
textRect.offsetMin = new Vector2(52f, 0f);
|
textRect.offsetMin = new Vector2(textLeft, 0f);
|
||||||
textRect.offsetMax = new Vector2(-14f, 0f);
|
textRect.offsetMax = new Vector2(-14f, 0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -890,7 +890,7 @@ namespace Vanguard.Tests
|
||||||
|
|
||||||
var canvas = UiKit.CreateCanvas("Test Canvas");
|
var canvas = UiKit.CreateCanvas("Test Canvas");
|
||||||
var bar = new PlayerTopBar(
|
var bar = new PlayerTopBar(
|
||||||
canvas.transform, config, player, null, null, null, null);
|
canvas.transform, config, player, null, null, null, null, () => { });
|
||||||
|
|
||||||
var root = GameObject.Find(PlayerTopBar.RootName);
|
var root = GameObject.Find(PlayerTopBar.RootName);
|
||||||
Assert.IsNotNull(root, "PlayerTopBar не создан");
|
Assert.IsNotNull(root, "PlayerTopBar не создан");
|
||||||
|
|
@ -905,6 +905,9 @@ namespace Vanguard.Tests
|
||||||
Assert.IsNotNull(community);
|
Assert.IsNotNull(community);
|
||||||
Assert.IsFalse(rating.interactable, "Rating без обработчика должен быть неактивен");
|
Assert.IsFalse(rating.interactable, "Rating без обработчика должен быть неактивен");
|
||||||
Assert.IsFalse(community.interactable, "Community без обработчика должен быть неактивен");
|
Assert.IsFalse(community.interactable, "Community без обработчика должен быть неактивен");
|
||||||
|
Assert.IsNotNull(
|
||||||
|
root.transform.Find("ToLobby"),
|
||||||
|
"Кнопка «В лобби» должна быть при переданном onLobby");
|
||||||
|
|
||||||
bar.Dispose();
|
bar.Dispose();
|
||||||
Cleanup();
|
Cleanup();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue