Copied the 89 uncopied AI*SimulationUtility/extension files defining the AIVirtualCard/AIVirtualField extension methods; the compile loop then auto-closed the revealed type deps (~3049 files total, drift-clean). 10.0k -> 62 errors.
63 lines
1.5 KiB
C#
63 lines
1.5 KiB
C#
using UnityEngine;
|
|
using Wizard;
|
|
|
|
[RequireComponent(typeof(UIDragScrollView), typeof(UICenterOnClick), typeof(UIEventListener))]
|
|
[RequireComponent(typeof(BoxCollider))]
|
|
public class UtilityDrumrollItem : MonoBehaviour
|
|
{
|
|
[SerializeField]
|
|
private UILabel _childLabel;
|
|
|
|
[SerializeField]
|
|
private UtilityDrumrollItemCustomize _customizeItem;
|
|
|
|
private const float COLOR_DIFF_Y = 20f;
|
|
|
|
private UIPanel _scrollView;
|
|
|
|
private Vector2 _scrollSize = Vector2.zero;
|
|
|
|
public int _index { get; private set; }
|
|
|
|
public UtilityDrumrollItemCustomize CustomizeItem => _customizeItem;
|
|
|
|
public void Init(UIPanel scroll, int index, string text)
|
|
{
|
|
_index = index;
|
|
_childLabel.text = text;
|
|
_scrollView = scroll;
|
|
_scrollSize = _scrollView.GetViewSize();
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
if (_childLabel != null)
|
|
{
|
|
float num = _scrollView.clipOffset.y - base.gameObject.transform.localPosition.y;
|
|
float num2 = _scrollSize.y / 2f;
|
|
float num3 = Mathf.Clamp(Mathf.Abs(num), 0f, num2);
|
|
float num4 = Mathf.LerpAngle(0f, 90f, num3 * (num3 / num2) / num2);
|
|
if (num > 0f)
|
|
{
|
|
num4 *= -1f;
|
|
}
|
|
_childLabel.transform.localEulerAngles = Vector3.right * num4;
|
|
Color32 color3;
|
|
if (num3 > 20f)
|
|
{
|
|
Color color = (_childLabel.color = LabelDefine.TEXT_COLOR_B0B0B0);
|
|
color3 = color;
|
|
}
|
|
else
|
|
{
|
|
Color color = (_childLabel.color = LabelDefine.TEXT_COLOR_NORMAL);
|
|
color3 = color;
|
|
}
|
|
if (_customizeItem != null)
|
|
{
|
|
_customizeItem.OnUpdate(num4, color3);
|
|
}
|
|
}
|
|
}
|
|
}
|