Использовать полную иконку персонажа и крестик для пустого приза. Добавить звук переключения, указатели выбора и анимацию добавленных призов за 0,3 секунды. Скрывать экран настроек на время работы с конфигуратором призов. Восстановить ссылку на префаб добавленного приза и оформить контекстные окна по макетам. Устранить повторное подтверждение QR-приза и исправить направление вертикальной навигации витрины. Проверено в Unity в режиме игры: ввод и сохранение значений, добавление и удаление пяти типов призов, анимация выбора и защита от повторного добавления. Ошибок в консоли нет.
36 lines
1.3 KiB
C#
36 lines
1.3 KiB
C#
using System;
|
|
using UnityEngine;
|
|
using UnityEngine.AddressableAssets;
|
|
using UnityEngine.Video;
|
|
|
|
namespace CharacterSystem
|
|
{
|
|
[Serializable]
|
|
public sealed class AssetReferenceVideoClip : AssetReferenceT<VideoClip>
|
|
{
|
|
public AssetReferenceVideoClip(string guid) : base(guid)
|
|
{
|
|
}
|
|
}
|
|
|
|
[CreateAssetMenu(fileName = "CharacterDefinition", menuName = "Scriptable Objects/Character Definition")]
|
|
public sealed class CharacterDefinition : ScriptableObject
|
|
{
|
|
[SerializeField] private int _characterIndex;
|
|
[SerializeField] private string _characterName;
|
|
[SerializeField] private Sprite _icon;
|
|
[SerializeField] private Sprite _iconSmall;
|
|
[SerializeField] private DifficultyModule _difficultyModule;
|
|
[SerializeField] private AssetReferenceGameObject _prefab;
|
|
[SerializeField] private AssetReferenceVideoClip _backgroundVideo;
|
|
|
|
public int CharacterIndex => _characterIndex;
|
|
public string CharacterName => _characterName;
|
|
public Sprite Icon => _icon;
|
|
public Sprite IconSmall => _iconSmall;
|
|
public DifficultyModule DifficultyModule => _difficultyModule;
|
|
public AssetReferenceGameObject Prefab => _prefab;
|
|
public AssetReferenceVideoClip BackgroundVideo => _backgroundVideo;
|
|
}
|
|
}
|