コード例 #1
0
 private void PreviousSkin()
 {
     if (moving || currentSkin == 0)
     {
         return;
     }
     currentSkin   = Mathf.Clamp(currentSkin - 1, 0, currentSkin);
     desiredOffset = currentOffset + 1;
     moving        = true;
     StartCoroutine(MoveToPrevious());
     if (currentSkin == 0)
     {
         OnLeftBorder?.Invoke();
     }
     OnChangeActive?.Invoke(CurrentSkinIsActive());
 }
コード例 #2
0
    private void NextSkin()
    {
        if (moving || currentSkin == skinns.Count - 1)
        {
            return;
        }
        currentSkin   = Mathf.Clamp(currentSkin + 1, 0, skinns.Count - 1);
        desiredOffset = offset - currentSkin;
        moving        = true;
        if (currentSkin == skinns.Count - 1)
        {
            OnRightBorder?.Invoke();
        }

        StartCoroutine(MoveToNext());
        OnChangeActive?.Invoke(CurrentSkinIsActive());
    }