Merge branch 'master' into ScrollSnapRefactoring
commit
59b6c579f9
|
@ -0,0 +1,59 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
using UnityEditor;
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[CustomEditor(typeof(CUIBezierCurve))]
|
||||
[CanEditMultipleObjects]
|
||||
public class CUIBezierCurveEditor : Editor
|
||||
{
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
DrawDefaultInspector();
|
||||
}
|
||||
|
||||
protected void OnSceneGUI()
|
||||
{
|
||||
CUIBezierCurve script = (CUIBezierCurve)this.target;
|
||||
|
||||
if (script.ControlPoints != null)
|
||||
{
|
||||
Vector3[] controlPoints = script.ControlPoints;
|
||||
|
||||
Transform handleTransform = script.transform;
|
||||
Quaternion handleRotation = script.transform.rotation;
|
||||
|
||||
for (int p = 0; p < CUIBezierCurve.CubicBezierCurvePtNum; p++)
|
||||
{
|
||||
EditorGUI.BeginChangeCheck();
|
||||
Vector3 newPt = Handles.DoPositionHandle(handleTransform.TransformPoint(controlPoints[p]), handleRotation);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
|
||||
Undo.RecordObject(script, "Move Point");
|
||||
EditorUtility.SetDirty(script);
|
||||
controlPoints[p] = handleTransform.InverseTransformPoint(newPt);
|
||||
script.Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
Handles.color = Color.gray;
|
||||
Handles.DrawLine(handleTransform.TransformPoint(controlPoints[0]), handleTransform.TransformPoint(controlPoints[1]));
|
||||
Handles.DrawLine(handleTransform.TransformPoint(controlPoints[1]), handleTransform.TransformPoint(controlPoints[2]));
|
||||
Handles.DrawLine(handleTransform.TransformPoint(controlPoints[2]), handleTransform.TransformPoint(controlPoints[3]));
|
||||
|
||||
int sampleSize = 10;
|
||||
|
||||
Handles.color = Color.white;
|
||||
for (int s = 0; s < sampleSize; s++)
|
||||
{
|
||||
Handles.DrawLine(handleTransform.TransformPoint(script.GetPoint((float)s / sampleSize)), handleTransform.TransformPoint(script.GetPoint((float)(s + 1) / sampleSize)));
|
||||
}
|
||||
|
||||
script.EDITOR_ControlPoints = controlPoints;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 40e01e4fb1e006b46a0f127c8a9907b3
|
||||
timeCreated: 1485671367
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,187 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
using UnityEditor;
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[CustomEditor(typeof(CUIGraphic), true)]
|
||||
public class CUIGraphicEditor : Editor {
|
||||
|
||||
protected static bool isCurveGpFold = false;
|
||||
|
||||
protected Vector3[] reuse_Vector3s = new Vector3[4];
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
CUIGraphic script = (CUIGraphic)this.target;
|
||||
|
||||
EditorGUILayout.HelpBox("CurlyUI (CUI) should work with most of the Unity UI. For Image, use CUIImage; for Text, use CUIText; and for others (e.g. RawImage), use CUIGraphic", MessageType.Info);
|
||||
|
||||
if (script.UIGraphic == null)
|
||||
{
|
||||
EditorGUILayout.HelpBox("CUI is an extension to Unity's UI. You must set Ui Graphic with a Unity Graphic component (e.g. Image, Text, RawImage)", MessageType.Error);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (script.UIGraphic is Image && script.GetType() != typeof(CUIImage))
|
||||
{
|
||||
EditorGUILayout.HelpBox("Although CUI components are generalized. It is recommended that for Image, use CUIImage", MessageType.Warning);
|
||||
}
|
||||
else if (script.UIGraphic is Text && script.GetType() != typeof(CUIText))
|
||||
{
|
||||
EditorGUILayout.HelpBox("Although CUI components are generalized. It is recommended that for Text, use CUIText", MessageType.Warning);
|
||||
}
|
||||
|
||||
EditorGUILayout.HelpBox("Now that CUI is ready, change the control points of the top and bottom bezier curves to curve/morph the UI. Improve resolution when the UI seems to look poorly when curved/morphed should help.", MessageType.Info);
|
||||
|
||||
}
|
||||
|
||||
DrawDefaultInspector();
|
||||
|
||||
// draw the editor that shows the position ratio of all control points from the two bezier curves
|
||||
isCurveGpFold = EditorGUILayout.Foldout(isCurveGpFold, "Curves Position Ratios");
|
||||
if (isCurveGpFold)
|
||||
{
|
||||
EditorGUI.indentLevel++;
|
||||
EditorGUILayout.LabelField("Top Curve");
|
||||
EditorGUI.indentLevel++;
|
||||
Vector3[] controlPoints = script.RefCurvesControlRatioPoints[1].array;
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
for (int p = 0; p < controlPoints.Length; p++)
|
||||
{
|
||||
reuse_Vector3s[p] = EditorGUILayout.Vector3Field(string.Format("Control Points {0}", p + 1), controlPoints[p]);
|
||||
}
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
Undo.RecordObject(script, "Change Ratio Points");
|
||||
EditorUtility.SetDirty(script);
|
||||
|
||||
System.Array.Copy(reuse_Vector3s, script.RefCurvesControlRatioPoints[1].array, controlPoints.Length);
|
||||
script.UpdateCurveControlPointPositions();
|
||||
}
|
||||
EditorGUI.indentLevel--;
|
||||
EditorGUILayout.LabelField("Bottom Curve");
|
||||
EditorGUI.indentLevel++;
|
||||
controlPoints = script.RefCurvesControlRatioPoints[0].array;
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
for (int p = 0; p < controlPoints.Length; p++)
|
||||
{
|
||||
reuse_Vector3s[p] = EditorGUILayout.Vector3Field(string.Format("Control Points {0}", p + 1), controlPoints[p]);
|
||||
}
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
Undo.RecordObject(script, "Change Ratio Points");
|
||||
EditorUtility.SetDirty(script);
|
||||
|
||||
System.Array.Copy(reuse_Vector3s, controlPoints, controlPoints.Length);
|
||||
script.UpdateCurveControlPointPositions();
|
||||
}
|
||||
EditorGUI.indentLevel--;
|
||||
EditorGUI.indentLevel--;
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
if (GUILayout.Button("Fit Bezier curves to rect transform"))
|
||||
{
|
||||
Undo.RecordObject(script, "Fit to Rect Transform");
|
||||
Undo.RecordObject(script.RefCurves[0], "Fit to Rect Transform");
|
||||
Undo.RecordObject(script.RefCurves[1], "Fit to Rect Transform");
|
||||
EditorUtility.SetDirty(script);
|
||||
|
||||
script.FixTextToRectTrans();
|
||||
|
||||
script.Refresh();
|
||||
}
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
// disable group to prevent allowing the reference be used when there is no reference CUI
|
||||
EditorGUI.BeginDisabledGroup(script.RefCUIGraphic == null);
|
||||
|
||||
if (GUILayout.Button("Reference CUI component for curves"))
|
||||
{
|
||||
Undo.RecordObject(script, "Reference Reference CUI");
|
||||
Undo.RecordObject(script.RefCurves[0], "Reference Reference CUI");
|
||||
Undo.RecordObject(script.RefCurves[1], "Reference Reference CUI");
|
||||
EditorUtility.SetDirty(script);
|
||||
|
||||
script.ReferenceCUIForBCurves();
|
||||
|
||||
script.Refresh();
|
||||
}
|
||||
|
||||
EditorGUILayout.HelpBox("Auto set the curves' control points by refencing another CUI. You need to set Ref CUI Graphic (e.g. CUIImage) first.", MessageType.Info);
|
||||
|
||||
EditorGUI.EndDisabledGroup();
|
||||
}
|
||||
|
||||
protected virtual void OnSceneGUI()
|
||||
{
|
||||
// for CUITextEditor, allow using scene UI to change the control points of the bezier curves
|
||||
|
||||
CUIGraphic script = (CUIGraphic)this.target;
|
||||
|
||||
script.ReportSet();
|
||||
|
||||
for (int c = 0; c < script.RefCurves.Length; c++)
|
||||
{
|
||||
|
||||
CUIBezierCurve curve = script.RefCurves[c];
|
||||
|
||||
if (curve.ControlPoints != null)
|
||||
{
|
||||
|
||||
Vector3[] controlPoints = curve.ControlPoints;
|
||||
|
||||
Transform handleTransform = curve.transform;
|
||||
Quaternion handleRotation = curve.transform.rotation;
|
||||
|
||||
for (int p = 0; p < CUIBezierCurve.CubicBezierCurvePtNum; p++)
|
||||
{
|
||||
EditorGUI.BeginChangeCheck();
|
||||
Handles.Label(handleTransform.TransformPoint(controlPoints[p]), string.Format("Control Point {0}", p + 1));
|
||||
Vector3 newPt = Handles.DoPositionHandle(handleTransform.TransformPoint(controlPoints[p]), handleRotation);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
|
||||
Undo.RecordObject(curve, "Move Point");
|
||||
Undo.RecordObject(script, "Move Point");
|
||||
EditorUtility.SetDirty(curve);
|
||||
controlPoints[p] = handleTransform.InverseTransformPoint(newPt);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Handles.color = Color.gray;
|
||||
Handles.DrawLine(handleTransform.TransformPoint(controlPoints[0]), handleTransform.TransformPoint(controlPoints[1]));
|
||||
Handles.DrawLine(handleTransform.TransformPoint(controlPoints[1]), handleTransform.TransformPoint(controlPoints[2]));
|
||||
Handles.DrawLine(handleTransform.TransformPoint(controlPoints[2]), handleTransform.TransformPoint(controlPoints[3]));
|
||||
|
||||
int sampleSize = 10;
|
||||
|
||||
Handles.color = Color.white;
|
||||
for (int s = 0; s < sampleSize; s++)
|
||||
{
|
||||
Handles.DrawLine(handleTransform.TransformPoint(curve.GetPoint((float)s / sampleSize)), handleTransform.TransformPoint(curve.GetPoint((float)(s + 1) / sampleSize)));
|
||||
}
|
||||
|
||||
curve.EDITOR_ControlPoints = controlPoints;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (script.RefCurves != null)
|
||||
{
|
||||
Handles.DrawLine(script.RefCurves[0].transform.TransformPoint(script.RefCurves[0].ControlPoints[0]), script.RefCurves[1].transform.TransformPoint(script.RefCurves[1].ControlPoints[0]));
|
||||
Handles.DrawLine(script.RefCurves[0].transform.TransformPoint(script.RefCurves[0].ControlPoints[3]), script.RefCurves[1].transform.TransformPoint(script.RefCurves[1].ControlPoints[3]));
|
||||
}
|
||||
|
||||
script.Refresh();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b7b84624f1ba7bd49b6cfc63b25f4b7c
|
||||
timeCreated: 1485671367
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,88 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
using UnityEditor;
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[CustomEditor(typeof(CUIImage))]
|
||||
public class CUIImageEditor : CUIGraphicEditor
|
||||
{
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
base.OnInspectorGUI();
|
||||
|
||||
CUIImage script = (CUIImage)this.target;
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
EditorGUI.BeginDisabledGroup(!(script.UIImage.type == Image.Type.Sliced || script.UIImage.type == Image.Type.Tiled));
|
||||
Vector2 newCornerRatio = EditorGUILayout.Vector2Field("Corner Ratio", script.cornerPosRatio);
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
Undo.RecordObject(script, "Change Corner Ratio");
|
||||
EditorUtility.SetDirty(script);
|
||||
script.cornerPosRatio = newCornerRatio;
|
||||
}
|
||||
|
||||
if (GUILayout.Button("Use native corner ratio"))
|
||||
{
|
||||
Undo.RecordObject(script, "Change Corner Ratio");
|
||||
EditorUtility.SetDirty(script);
|
||||
script.cornerPosRatio = script.OriCornerPosRatio;
|
||||
}
|
||||
|
||||
if (script.UIImage.type == Image.Type.Sliced || script.UIImage.type == Image.Type.Filled)
|
||||
{
|
||||
EditorGUILayout.HelpBox("With CUIImage, you can also adjust the size of the corners for filled or sliced Image. The grey sphere in the editor scene could also be moved to change the corner's size.", MessageType.Info);
|
||||
}
|
||||
else
|
||||
{
|
||||
EditorGUILayout.HelpBox("With CUIImage, you can also adjust the size of the corners for filled or sliced Image. You need to set Image to filled or sliced to use this feature.", MessageType.Info);
|
||||
}
|
||||
|
||||
EditorGUI.EndDisabledGroup();
|
||||
}
|
||||
|
||||
protected override void OnSceneGUI()
|
||||
{
|
||||
base.OnSceneGUI();
|
||||
|
||||
CUIImage script = (CUIImage)this.target;
|
||||
|
||||
if (script.UIImage.type == Image.Type.Sliced || script.UIImage.type == Image.Type.Tiled)
|
||||
{
|
||||
Vector3 cornerPos = Vector3.zero;//
|
||||
|
||||
if (script.IsCurved)
|
||||
{
|
||||
cornerPos = script.GetBCurveSandwichSpacePoint(script.cornerPosRatio.x, script.cornerPosRatio.y);
|
||||
}
|
||||
else
|
||||
{
|
||||
cornerPos.x = script.cornerPosRatio.x * script.RectTrans.rect.width - script.RectTrans.pivot.x * script.RectTrans.rect.width;
|
||||
cornerPos.y = script.cornerPosRatio.y * script.RectTrans.rect.height - script.RectTrans.pivot.y * script.RectTrans.rect.height;
|
||||
}
|
||||
|
||||
Handles.color = Color.gray;
|
||||
EditorGUI.BeginChangeCheck();
|
||||
Vector3 newCornerPos = Handles.FreeMoveHandle(script.transform.TransformPoint(cornerPos), script.transform.rotation, HandleUtility.GetHandleSize(script.transform.TransformPoint(cornerPos)) / 7, Vector3.one, Handles.SphereHandleCap);
|
||||
Handles.Label(newCornerPos, string.Format("Corner Mover"));
|
||||
|
||||
newCornerPos = script.transform.InverseTransformPoint(newCornerPos);
|
||||
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
Undo.RecordObject(script, "Move Corner");
|
||||
EditorUtility.SetDirty(script);
|
||||
|
||||
script.cornerPosRatio = new Vector2(newCornerPos.x, newCornerPos.y);
|
||||
script.cornerPosRatio.x = (script.cornerPosRatio.x + script.RectTrans.pivot.x * script.RectTrans.rect.width) / script.RectTrans.rect.width;
|
||||
script.cornerPosRatio.y = (script.cornerPosRatio.y + script.RectTrans.pivot.y * script.RectTrans.rect.height) / script.RectTrans.rect.height;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8445204f2ee16e0408274b8400deef53
|
||||
timeCreated: 1485929052
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,10 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
using UnityEditor;
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[CustomEditor(typeof(CUIText))]
|
||||
public class CUITextEditor : CUIGraphicEditor { }
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 041976c43b8439747a030b45a4712b77
|
||||
timeCreated: 1485929052
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -1777,6 +1777,44 @@ namespace UnityEditor.UI
|
|||
}
|
||||
#endregion
|
||||
|
||||
#region Radial Slider
|
||||
[MenuItem("GameObject/UI/Extensions/RadialSlider", false)]
|
||||
static public void AddRadialSlider(MenuCommand menuCommand)
|
||||
{
|
||||
GameObject sliderRoot = CreateUIElementRoot("Radial Slider", menuCommand, s_ThickGUIElementSize);
|
||||
GameObject SliderControl = CreateUIObject("Slider", sliderRoot);
|
||||
|
||||
Image image = sliderRoot.AddComponent<Image>();
|
||||
image.sprite = AssetDatabase.GetBuiltinExtraResource<Sprite>(kStandardSpritePath);
|
||||
image.type = Image.Type.Simple;
|
||||
image.color = s_DefaultSelectableColor;
|
||||
|
||||
RectTransform sliderRootRectTransform = sliderRoot.GetComponent<RectTransform>();
|
||||
sliderRootRectTransform.anchorMin = new Vector2(0.5f, 0.5f);
|
||||
sliderRootRectTransform.anchorMax = new Vector2(0.5f, 0.5f);
|
||||
sliderRootRectTransform.anchoredPosition = Vector2.zero;
|
||||
sliderRootRectTransform.sizeDelta = new Vector2(250f, 250f);
|
||||
|
||||
Image slidrImage = SliderControl.AddComponent<Image>();
|
||||
slidrImage.sprite = AssetDatabase.GetBuiltinExtraResource<Sprite>(kStandardSpritePath);
|
||||
slidrImage.type = Image.Type.Filled;
|
||||
slidrImage.fillMethod = Image.FillMethod.Radial360;
|
||||
slidrImage.fillOrigin = 3;
|
||||
slidrImage.color = Color.red;
|
||||
slidrImage.fillAmount = 0;
|
||||
RadialSlider slider = SliderControl.AddComponent<RadialSlider>();
|
||||
slider.StartColor = Color.green;
|
||||
slider.EndColor = Color.red;
|
||||
|
||||
RectTransform sliderRectTransform = SliderControl.GetComponent<RectTransform>();
|
||||
sliderRectTransform.anchorMin = Vector2.zero;
|
||||
sliderRectTransform.anchorMax = Vector2.one;
|
||||
sliderRectTransform.sizeDelta = Vector2.zero;
|
||||
|
||||
Selection.activeGameObject = sliderRoot;
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
|
|
@ -1,28 +1,30 @@
|
|||
using UnityEngine;
|
||||
|
||||
public class ComboBoxChanged : MonoBehaviour {
|
||||
|
||||
|
||||
public void ComboBoxChangedEvent (string text) {
|
||||
|
||||
Debug.Log("ComboBox changed [" + text + "]");
|
||||
}
|
||||
|
||||
public void AutoCompleteComboBoxChangedEvent(string text)
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class ComboBoxChanged : MonoBehaviour
|
||||
{
|
||||
public void ComboBoxChangedEvent(string text)
|
||||
{
|
||||
|
||||
Debug.Log("AutoCompleteComboBox changed [" + text + "]");
|
||||
Debug.Log("ComboBox changed [" + text + "]");
|
||||
}
|
||||
|
||||
public void AutoCompleteComboBoxChangedEvent(string text)
|
||||
{
|
||||
|
||||
Debug.Log("AutoCompleteComboBox changed [" + text + "]");
|
||||
}
|
||||
|
||||
public void AutoCompleteComboBoxSelectionChangedEvent(string text, bool valid)
|
||||
{
|
||||
|
||||
Debug.Log("AutoCompleteComboBox selection changed [" + text + "] and its validity was [" + valid + "]");
|
||||
}
|
||||
|
||||
public void DropDownChangedEvent(int newValue)
|
||||
{
|
||||
|
||||
Debug.Log("DropDown changed [" + newValue + "]");
|
||||
}
|
||||
}
|
||||
|
||||
public void AutoCompleteComboBoxSelectionChangedEvent(string text, bool valid)
|
||||
{
|
||||
|
||||
Debug.Log("AutoCompleteComboBox selection changed [" + text + "] and its validity was [" + valid + "]");
|
||||
}
|
||||
|
||||
public void DropDownChangedEvent(int newValue)
|
||||
{
|
||||
|
||||
Debug.Log("DropDown changed [" + newValue + "]");
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
/// Credit SimonDarksideJ
|
||||
/// Sourced from my head
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
[RequireComponent(typeof(Image))]
|
||||
public class CooldownEffect_Image : MonoBehaviour
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/// Credit SimonDarksideJ
|
||||
/// Sourced from my head
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
[RequireComponent(typeof(SoftMaskScript))]
|
||||
public class CooldownEffect_SAUIM : MonoBehaviour {
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d426546e1b1bdb346a4f1b7ead452375
|
||||
folderAsset: yes
|
||||
timeCreated: 1501406849
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3fcaf2574bec7db4db33947995886a8c
|
||||
timeCreated: 1501406849
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e4715bcc5adadca46ac601c64bd58681
|
||||
folderAsset: yes
|
||||
timeCreated: 1501610666
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0e019a51b207adf4dbc65576e8a03ed9
|
||||
folderAsset: yes
|
||||
timeCreated: 1501610675
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,706 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
OcclusionCullingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: 0.25
|
||||
backfaceThreshold: 100
|
||||
m_SceneGUID: 00000000000000000000000000000000
|
||||
m_OcclusionCullingData: {fileID: 0}
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 8
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: 0.01
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: 0.5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0.37311947, g: 0.38074005, b: 0.35872722, a: 1}
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 9
|
||||
m_GIWorkflowMode: 0
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 8
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_Padding: 2
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_LightmapsBakeMode: 1
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherFiltering: 1
|
||||
m_FinalGatherRayCount: 256
|
||||
m_ReflectionCompression: 2
|
||||
m_MixedBakeMode: 1
|
||||
m_BakeBackend: 0
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 500
|
||||
m_PVRBounces: 2
|
||||
m_PVRFiltering: 0
|
||||
m_PVRFilteringMode: 1
|
||||
m_PVRCulling: 1
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 5
|
||||
m_PVRFilteringGaussRadiusAO: 2
|
||||
m_PVRFilteringAtrousColorSigma: 1
|
||||
m_PVRFilteringAtrousNormalSigma: 1
|
||||
m_PVRFilteringAtrousPositionSigma: 1
|
||||
m_LightingDataAsset: {fileID: 0}
|
||||
m_ShadowMaskMode: 2
|
||||
--- !u!196 &4
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentTypeID: 0
|
||||
agentRadius: 0.5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: 0.4
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
minRegionArea: 2
|
||||
manualCellSize: 0
|
||||
cellSize: 0.16666667
|
||||
manualTileSize: 0
|
||||
tileSize: 256
|
||||
accuratePlacement: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &650160435
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 650160439}
|
||||
- component: {fileID: 650160438}
|
||||
- component: {fileID: 650160437}
|
||||
- component: {fileID: 650160436}
|
||||
- component: {fileID: 650160440}
|
||||
m_Layer: 5
|
||||
m_Name: Canvas
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &650160436
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_IgnoreReversedGraphics: 1
|
||||
m_BlockingObjects: 0
|
||||
m_BlockingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
--- !u!114 &650160437
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_UiScaleMode: 0
|
||||
m_ReferencePixelsPerUnit: 100
|
||||
m_ScaleFactor: 1
|
||||
m_ReferenceResolution: {x: 800, y: 600}
|
||||
m_ScreenMatchMode: 0
|
||||
m_MatchWidthOrHeight: 0
|
||||
m_PhysicalUnit: 3
|
||||
m_FallbackScreenDPI: 96
|
||||
m_DefaultSpriteDPI: 96
|
||||
m_DynamicPixelsPerUnit: 1
|
||||
--- !u!223 &650160438
|
||||
Canvas:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 3
|
||||
m_RenderMode: 1
|
||||
m_Camera: {fileID: 777088607}
|
||||
m_PlaneDistance: 100
|
||||
m_PixelPerfect: 0
|
||||
m_ReceivesEvents: 1
|
||||
m_OverrideSorting: 0
|
||||
m_OverridePixelPerfect: 0
|
||||
m_SortingBucketNormalizedSize: 0
|
||||
m_AdditionalShaderChannelsFlag: 25
|
||||
m_SortingLayerID: 0
|
||||
m_SortingOrder: 0
|
||||
m_TargetDisplay: 0
|
||||
--- !u!224 &650160439
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0, y: 0, z: 0}
|
||||
m_Children:
|
||||
- {fileID: 1492537696}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
--- !u!114 &650160440
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 69123a589054bf041ba5ead99364646f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
scrollView: {fileID: 1492537700}
|
||||
--- !u!1 &777088603
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 777088608}
|
||||
- component: {fileID: 777088607}
|
||||
- component: {fileID: 777088606}
|
||||
- component: {fileID: 777088605}
|
||||
- component: {fileID: 777088604}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &777088604
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &777088605
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &777088606
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &777088607
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: 0.3
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_AllowMSAA: 1
|
||||
m_ForceIntoRT: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: 0.022
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &777088608
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1012097242
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1012097243}
|
||||
- component: {fileID: 1012097245}
|
||||
- component: {fileID: 1012097244}
|
||||
m_Layer: 5
|
||||
m_Name: Image
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1012097243
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_LocalRotation: {x: 0.5, y: 0, z: 0, w: 0.8660254}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 276}
|
||||
m_LocalScale: {x: 0.3, y: 0.3, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1506879310}
|
||||
m_Father: {fileID: 1590362722}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 60, y: 0, z: 0}
|
||||
m_AnchorMin: {x: -0.2, y: 0.5}
|
||||
m_AnchorMax: {x: -0.2, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 200, y: 450}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1012097244
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 0.3019608}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1012097245
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
--- !u!1 &1492537695
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1492537696}
|
||||
- component: {fileID: 1492537700}
|
||||
- component: {fileID: 1492537699}
|
||||
- component: {fileID: 1492537702}
|
||||
- component: {fileID: 1492537701}
|
||||
m_Layer: 5
|
||||
m_Name: ScrollView
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1492537696
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1590362722}
|
||||
m_Father: {fileID: 650160439}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1492537699
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: cc9ad31350b1b6348b57c626195a562d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
viewport: {fileID: 1492537696}
|
||||
directionOfRecognize: 1
|
||||
movementType: 1
|
||||
elasticity: 0.1
|
||||
scrollSensitivity: 7
|
||||
inertia: 1
|
||||
decelerationRate: 0.03
|
||||
snap:
|
||||
Enable: 1
|
||||
VelocityThreshold: 0.5
|
||||
Duration: 0.3
|
||||
dataCount: 0
|
||||
--- !u!114 &1492537700
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: c7e0222f92bdad84c9ee57a127efe088, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
cellInterval: 0.15
|
||||
cellOffset: 0.5
|
||||
loop: 0
|
||||
cellBase: {fileID: 1590362721}
|
||||
scrollPositionController: {fileID: 1492537699}
|
||||
--- !u!114 &1492537701
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 0.392}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1492537702
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
--- !u!1 &1506879309
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1506879310}
|
||||
- component: {fileID: 1506879312}
|
||||
- component: {fileID: 1506879311}
|
||||
m_Layer: 5
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1506879310
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
m_LocalRotation: {x: 0.008726558, y: 0, z: 0, w: 0.999962}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1012097243}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 1, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 160, y: 35}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1506879311
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 30
|
||||
m_FontStyle: 3
|
||||
m_BestFit: 0
|
||||
m_MinSize: 3
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 1
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text:
|
||||
--- !u!222 &1506879312
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
--- !u!1 &1590362721
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1590362722}
|
||||
- component: {fileID: 1590362725}
|
||||
- component: {fileID: 1590362723}
|
||||
- component: {fileID: 1590362724}
|
||||
- component: {fileID: 1590362726}
|
||||
m_Layer: 5
|
||||
m_Name: Cell
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1590362722
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1012097243}
|
||||
m_Father: {fileID: 1492537696}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!95 &1590362723
|
||||
Animator:
|
||||
serializedVersion: 3
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_Avatar: {fileID: 0}
|
||||
m_Controller: {fileID: 9100000, guid: 8bbdb068c73989c438aef167096a86cb, type: 2}
|
||||
m_CullingMode: 0
|
||||
m_UpdateMode: 0
|
||||
m_ApplyRootMotion: 0
|
||||
m_LinearVelocityBlending: 0
|
||||
m_WarningMessage:
|
||||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
--- !u!114 &1590362724
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: b77a04c729f174c478baf21a47c16620, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
animator: {fileID: 1590362723}
|
||||
message: {fileID: 1506879311}
|
||||
--- !u!222 &1590362725
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
--- !u!225 &1590362726
|
||||
CanvasGroup:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_Alpha: 1
|
||||
m_Interactable: 1
|
||||
m_BlocksRaycasts: 1
|
||||
m_IgnoreParentGroups: 0
|
||||
--- !u!1 &1770868449
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1770868452}
|
||||
- component: {fileID: 1770868451}
|
||||
- component: {fileID: 1770868450}
|
||||
m_Layer: 0
|
||||
m_Name: EventSystem
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1770868450
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1077351063, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalAxis: Horizontal
|
||||
m_VerticalAxis: Vertical
|
||||
m_SubmitButton: Submit
|
||||
m_CancelButton: Cancel
|
||||
m_InputActionsPerSecond: 10
|
||||
m_RepeatDelay: 0.5
|
||||
m_ForceModuleActive: 0
|
||||
--- !u!114 &1770868451
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -619905303, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_FirstSelected: {fileID: 0}
|
||||
m_sendNavigationEvents: 1
|
||||
m_DragThreshold: 5
|
||||
--- !u!4 &1770868452
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f5666b6c719a9b544ab322e1066aef5f
|
||||
timeCreated: 1487186707
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0f8e29708d324ea48ba2af889fea2c5a
|
||||
folderAsset: yes
|
||||
timeCreated: 1487186581
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,600 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!74 &7400000
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: 01_Basic_Animation
|
||||
serializedVersion: 6
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: {x: 90, y: 0, z: 0}
|
||||
inSlope: {x: -198.47397, y: 0, z: 0}
|
||||
outSlope: {x: -198.47397, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
inSlope: {x: -180, y: 0, z: 0}
|
||||
outSlope: {x: -180, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: {x: -90, y: 0, z: 0}
|
||||
inSlope: {x: -178.53796, y: 0, z: 0}
|
||||
outSlope: {x: -178.53796, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path: Image
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: {x: 0.3, y: 0.3, z: 1}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: {x: 1, y: 1, z: 1}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: {x: 0.2, y: 0.2, z: 1}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path: Image
|
||||
m_FloatCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -0.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0.5
|
||||
inSlope: 1.4000001
|
||||
outSlope: 1.4000001
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 1.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMax.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMax.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -0.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0.5
|
||||
inSlope: 1.4000001
|
||||
outSlope: 1.4000001
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 1.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMin.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMin.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_Alpha
|
||||
path:
|
||||
classID: 225
|
||||
script: {fileID: 0}
|
||||
m_PPtrCurves: []
|
||||
m_SampleRate: 60
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings:
|
||||
- path: 83635035
|
||||
attribute: 4
|
||||
script: {fileID: 0}
|
||||
classID: 4
|
||||
customType: 14
|
||||
isPPtrCurve: 0
|
||||
- path: 83635035
|
||||
attribute: 3
|
||||
script: {fileID: 0}
|
||||
classID: 4
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
- path: 83635035
|
||||
attribute: 2711263438
|
||||
script: {fileID: 0}
|
||||
classID: 224
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
- path: 83635035
|
||||
attribute: 2089119715
|
||||
script: {fileID: 0}
|
||||
classID: 224
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
- path: 0
|
||||
attribute: 1574349066
|
||||
script: {fileID: 0}
|
||||
classID: 225
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
- path: 83635035
|
||||
attribute: 3600656472
|
||||
script: {fileID: 0}
|
||||
classID: 224
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
- path: 83635035
|
||||
attribute: 193093493
|
||||
script: {fileID: 0}
|
||||
classID: 224
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 1
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 0
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -0.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0.5
|
||||
inSlope: 1.4000001
|
||||
outSlope: 1.4000001
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 1.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMax.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMax.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -0.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0.5
|
||||
inSlope: 1.4000001
|
||||
outSlope: 1.4000001
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 1.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMin.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0.5
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_AnchorMin.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0.3
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0.3
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0.2
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalScale.z
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 90
|
||||
inSlope: -198.47397
|
||||
outSlope: -198.47397
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: -180
|
||||
outSlope: -180
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: -90
|
||||
inSlope: -178.53796
|
||||
outSlope: -178.53796
|
||||
tangentMode: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.z
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_Alpha
|
||||
path:
|
||||
classID: 225
|
||||
script: {fileID: 0}
|
||||
m_EulerEditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.z
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
m_HasGenericRootTransform: 0
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_GenerateMotionCurves: 0
|
||||
m_IsEmpty: 0
|
||||
m_Events: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9e6e4c5500df9dc439749ba892b2995c
|
||||
timeCreated: 1487186596
|
||||
licenseType: Free
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,95 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!91 &9100000
|
||||
AnimatorController:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: 01_Basic_CellScroll
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters:
|
||||
- m_Name: scroll
|
||||
m_Type: 9
|
||||
m_DefaultFloat: 0
|
||||
m_DefaultInt: 0
|
||||
m_DefaultBool: 1
|
||||
m_Controller: {fileID: 9100000}
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 1107904440216339570}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
m_BlendingMode: 0
|
||||
m_SyncedLayerIndex: -1
|
||||
m_DefaultWeight: 0
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1101 &1101181072344081740
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102900943980948860}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.1
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 0.9
|
||||
m_HasExitTime: 0
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1102 &1102900943980948860
|
||||
AnimatorState:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: scroll
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: 9e6e4c5500df9dc439749ba892b2995c, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
--- !u!1107 &1107904440216339570
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102900943980948860}
|
||||
m_Position: {x: 252, y: 24, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions:
|
||||
- {fileID: 1101181072344081740}
|
||||
m_EntryTransitions: []
|
||||
m_StateMachineTransitions: {}
|
||||
m_StateMachineBehaviours: []
|
||||
m_AnyStatePosition: {x: 50, y: 20, z: 0}
|
||||
m_EntryPosition: {x: 50, y: 120, z: 0}
|
||||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 1102900943980948860}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8bbdb068c73989c438aef167096a86cb
|
||||
timeCreated: 1487186612
|
||||
licenseType: Free
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,7 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example01CellDto
|
||||
{
|
||||
public string Message;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e14503efd7a60d54db0d148e00aa2169
|
||||
timeCreated: 1487508481
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,19 @@
|
|||
using System.Linq;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example01Scene : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
Example01ScrollView scrollView;
|
||||
|
||||
void Start()
|
||||
{
|
||||
var cellData = Enumerable.Range(0, 20)
|
||||
.Select(i => new Example01CellDto { Message = "Cell " + i })
|
||||
.ToList();
|
||||
|
||||
scrollView.UpdateData(cellData);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 69123a589054bf041ba5ead99364646f
|
||||
timeCreated: 1487186233
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,24 @@
|
|||
using System.Collections.Generic;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example01ScrollView : FancyScrollView<Example01CellDto>
|
||||
{
|
||||
|
||||
[SerializeField]
|
||||
ScrollPositionController scrollPositionController;
|
||||
|
||||
new void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
scrollPositionController.OnUpdatePosition.AddListener(UpdatePosition);
|
||||
}
|
||||
|
||||
public void UpdateData(List<Example01CellDto> data)
|
||||
{
|
||||
cellData = data;
|
||||
scrollPositionController.SetDataCount(cellData.Count);
|
||||
UpdateContents();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c7e0222f92bdad84c9ee57a127efe088
|
||||
timeCreated: 1487262733
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,40 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example01ScrollViewCell : FancyScrollViewCell<Example01CellDto>
|
||||
{
|
||||
[SerializeField]
|
||||
Animator animator;
|
||||
[SerializeField]
|
||||
Text message;
|
||||
|
||||
readonly int scrollTriggerHash = Animator.StringToHash("scroll");
|
||||
|
||||
void Start()
|
||||
{
|
||||
var rectTransform = transform as RectTransform;
|
||||
rectTransform.anchorMax = Vector2.one;
|
||||
rectTransform.anchorMin = Vector2.zero;
|
||||
rectTransform.anchoredPosition3D = Vector3.zero;
|
||||
UpdatePosition(0);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// セルの内容を更新します
|
||||
/// </summary>
|
||||
/// <param name="itemData"></param>
|
||||
public override void UpdateContent(Example01CellDto itemData)
|
||||
{
|
||||
message.text = itemData.Message;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// セルの位置を更新します
|
||||
/// </summary>
|
||||
/// <param name="position"></param>
|
||||
public override void UpdatePosition(float position)
|
||||
{
|
||||
animator.Play(scrollTriggerHash, -1, position);
|
||||
animator.speed = 0;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b77a04c729f174c478baf21a47c16620
|
||||
timeCreated: 1487184978
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 577dcbd98667cbb47ba8c97b564802d2
|
||||
folderAsset: yes
|
||||
timeCreated: 1501610675
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,750 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
OcclusionCullingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: 0.25
|
||||
backfaceThreshold: 100
|
||||
m_SceneGUID: 00000000000000000000000000000000
|
||||
m_OcclusionCullingData: {fileID: 0}
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 8
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: 0.01
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: 0.5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0.37311947, g: 0.38074005, b: 0.35872722, a: 1}
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 9
|
||||
m_GIWorkflowMode: 0
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 8
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_Padding: 2
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_LightmapsBakeMode: 1
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherFiltering: 1
|
||||
m_FinalGatherRayCount: 256
|
||||
m_ReflectionCompression: 2
|
||||
m_MixedBakeMode: 1
|
||||
m_BakeBackend: 0
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 500
|
||||
m_PVRBounces: 2
|
||||
m_PVRFiltering: 0
|
||||
m_PVRFilteringMode: 1
|
||||
m_PVRCulling: 1
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 5
|
||||
m_PVRFilteringGaussRadiusAO: 2
|
||||
m_PVRFilteringAtrousColorSigma: 1
|
||||
m_PVRFilteringAtrousNormalSigma: 1
|
||||
m_PVRFilteringAtrousPositionSigma: 1
|
||||
m_LightingDataAsset: {fileID: 0}
|
||||
m_ShadowMaskMode: 2
|
||||
--- !u!196 &4
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentTypeID: 0
|
||||
agentRadius: 0.5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: 0.4
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
minRegionArea: 2
|
||||
manualCellSize: 0
|
||||
cellSize: 0.16666667
|
||||
manualTileSize: 0
|
||||
tileSize: 256
|
||||
accuratePlacement: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &650160435
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 650160439}
|
||||
- component: {fileID: 650160438}
|
||||
- component: {fileID: 650160437}
|
||||
- component: {fileID: 650160436}
|
||||
- component: {fileID: 650160440}
|
||||
m_Layer: 5
|
||||
m_Name: Canvas
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &650160436
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_IgnoreReversedGraphics: 1
|
||||
m_BlockingObjects: 0
|
||||
m_BlockingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
--- !u!114 &650160437
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_UiScaleMode: 0
|
||||
m_ReferencePixelsPerUnit: 100
|
||||
m_ScaleFactor: 1
|
||||
m_ReferenceResolution: {x: 800, y: 600}
|
||||
m_ScreenMatchMode: 0
|
||||
m_MatchWidthOrHeight: 0
|
||||
m_PhysicalUnit: 3
|
||||
m_FallbackScreenDPI: 96
|
||||
m_DefaultSpriteDPI: 96
|
||||
m_DynamicPixelsPerUnit: 1
|
||||
--- !u!223 &650160438
|
||||
Canvas:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 3
|
||||
m_RenderMode: 1
|
||||
m_Camera: {fileID: 777088607}
|
||||
m_PlaneDistance: 100
|
||||
m_PixelPerfect: 0
|
||||
m_ReceivesEvents: 1
|
||||
m_OverrideSorting: 0
|
||||
m_OverridePixelPerfect: 0
|
||||
m_SortingBucketNormalizedSize: 0
|
||||
m_AdditionalShaderChannelsFlag: 25
|
||||
m_SortingLayerID: 0
|
||||
m_SortingOrder: 0
|
||||
m_TargetDisplay: 0
|
||||
--- !u!224 &650160439
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0, y: 0, z: 0}
|
||||
m_Children:
|
||||
- {fileID: 1492537696}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
--- !u!114 &650160440
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: b945ba693af0d824989e76c183a47fb3, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
scrollView: {fileID: 1492537697}
|
||||
--- !u!1 &777088603
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 777088608}
|
||||
- component: {fileID: 777088607}
|
||||
- component: {fileID: 777088606}
|
||||
- component: {fileID: 777088605}
|
||||
- component: {fileID: 777088604}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &777088604
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &777088605
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &777088606
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &777088607
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: 0.3
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_AllowMSAA: 1
|
||||
m_ForceIntoRT: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: 0.022
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &777088608
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1012097242
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1012097243}
|
||||
- component: {fileID: 1012097245}
|
||||
- component: {fileID: 1012097244}
|
||||
- component: {fileID: 1012097246}
|
||||
m_Layer: 5
|
||||
m_Name: Image
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1012097243
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_LocalRotation: {x: 0.5, y: 0, z: 0, w: 0.8660254}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 276}
|
||||
m_LocalScale: {x: 0.3, y: 0.3, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1506879310}
|
||||
m_Father: {fileID: 1590362722}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 60, y: 0, z: 0}
|
||||
m_AnchorMin: {x: -0.2, y: 0.5}
|
||||
m_AnchorMax: {x: -0.2, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 200, y: 450}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1012097244
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1012097245
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
--- !u!114 &1012097246
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 0
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 1012097244}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
--- !u!1 &1492537695
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1492537696}
|
||||
- component: {fileID: 1492537699}
|
||||
- component: {fileID: 1492537702}
|
||||
- component: {fileID: 1492537701}
|
||||
- component: {fileID: 1492537697}
|
||||
m_Layer: 5
|
||||
m_Name: ScrollView
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1492537696
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1590362722}
|
||||
m_Father: {fileID: 650160439}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1492537697
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5b1ee62a075132e49b6fc82cd114e89d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
cellInterval: 0.15
|
||||
cellOffset: 0.5
|
||||
loop: 0
|
||||
cellBase: {fileID: 1590362721}
|
||||
scrollPositionController: {fileID: 1492537699}
|
||||
--- !u!114 &1492537699
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: cc9ad31350b1b6348b57c626195a562d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
viewport: {fileID: 1492537696}
|
||||
directionOfRecognize: 1
|
||||
movementType: 1
|
||||
elasticity: 0.1
|
||||
scrollSensitivity: 7
|
||||
inertia: 1
|
||||
decelerationRate: 0.03
|
||||
snap:
|
||||
Enable: 1
|
||||
VelocityThreshold: 0.5
|
||||
Duration: 0.3
|
||||
dataCount: 0
|
||||
--- !u!114 &1492537701
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 0.392}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1492537702
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
--- !u!1 &1506879309
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1506879310}
|
||||
- component: {fileID: 1506879312}
|
||||
- component: {fileID: 1506879311}
|
||||
m_Layer: 5
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1506879310
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
m_LocalRotation: {x: 0.008726558, y: 0, z: 0, w: 0.999962}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1012097243}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 1, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 160, y: 35}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1506879311
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 30
|
||||
m_FontStyle: 3
|
||||
m_BestFit: 0
|
||||
m_MinSize: 3
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 1
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text:
|
||||
--- !u!222 &1506879312
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
--- !u!1 &1590362721
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1590362722}
|
||||
- component: {fileID: 1590362725}
|
||||
- component: {fileID: 1590362723}
|
||||
- component: {fileID: 1590362724}
|
||||
- component: {fileID: 1590362726}
|
||||
m_Layer: 5
|
||||
m_Name: Cell
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1590362722
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1012097243}
|
||||
m_Father: {fileID: 1492537696}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!95 &1590362723
|
||||
Animator:
|
||||
serializedVersion: 3
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_Avatar: {fileID: 0}
|
||||
m_Controller: {fileID: 9100000, guid: 8bbdb068c73989c438aef167096a86cb, type: 2}
|
||||
m_CullingMode: 0
|
||||
m_UpdateMode: 0
|
||||
m_ApplyRootMotion: 0
|
||||
m_LinearVelocityBlending: 0
|
||||
m_WarningMessage:
|
||||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
--- !u!114 &1590362724
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 9409f360a0deeb949a3635126edf8000, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
animator: {fileID: 1590362723}
|
||||
message: {fileID: 1506879311}
|
||||
image: {fileID: 1012097244}
|
||||
button: {fileID: 1012097246}
|
||||
--- !u!222 &1590362725
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
--- !u!225 &1590362726
|
||||
CanvasGroup:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_Alpha: 1
|
||||
m_Interactable: 1
|
||||
m_BlocksRaycasts: 1
|
||||
m_IgnoreParentGroups: 0
|
||||
--- !u!1 &1770868449
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1770868452}
|
||||
- component: {fileID: 1770868451}
|
||||
- component: {fileID: 1770868450}
|
||||
m_Layer: 0
|
||||
m_Name: EventSystem
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1770868450
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1077351063, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalAxis: Horizontal
|
||||
m_VerticalAxis: Vertical
|
||||
m_SubmitButton: Submit
|
||||
m_CancelButton: Cancel
|
||||
m_InputActionsPerSecond: 10
|
||||
m_RepeatDelay: 0.5
|
||||
m_ForceModuleActive: 0
|
||||
--- !u!114 &1770868451
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -619905303, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_FirstSelected: {fileID: 0}
|
||||
m_sendNavigationEvents: 1
|
||||
m_DragThreshold: 5
|
||||
--- !u!4 &1770868452
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 22d1be941599faf45b04ab4c6a2def09
|
||||
timeCreated: 1487505810
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,7 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example02CellDto
|
||||
{
|
||||
public string Message;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cf9eb20bd16f1aa448580b085861a75b
|
||||
timeCreated: 1487505929
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,19 @@
|
|||
using System.Linq;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example02Scene : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
Example02ScrollView scrollView;
|
||||
|
||||
void Start()
|
||||
{
|
||||
var cellData = Enumerable.Range(0, 20)
|
||||
.Select(i => new Example02CellDto { Message = "Cell " + i })
|
||||
.ToList();
|
||||
|
||||
scrollView.UpdateData(cellData);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b945ba693af0d824989e76c183a47fb3
|
||||
timeCreated: 1487506430
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,31 @@
|
|||
using System.Collections.Generic;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example02ScrollView : FancyScrollView<Example02CellDto, Example02ScrollViewContext>
|
||||
{
|
||||
[SerializeField]
|
||||
ScrollPositionController scrollPositionController;
|
||||
|
||||
new void Awake()
|
||||
{
|
||||
scrollPositionController.OnUpdatePosition.AddListener(UpdatePosition);
|
||||
SetContext(new Example02ScrollViewContext { OnPressedCell = OnPressedCell });
|
||||
base.Awake();
|
||||
}
|
||||
|
||||
public void UpdateData(List<Example02CellDto> data)
|
||||
{
|
||||
cellData = data;
|
||||
scrollPositionController.SetDataCount(cellData.Count);
|
||||
UpdateContents();
|
||||
}
|
||||
|
||||
void OnPressedCell(Example02ScrollViewCell cell)
|
||||
{
|
||||
scrollPositionController.ScrollTo(cell.DataIndex, 0.4f);
|
||||
context.SelectedIndex = cell.DataIndex;
|
||||
UpdateContents();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5b1ee62a075132e49b6fc82cd114e89d
|
||||
timeCreated: 1487505830
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,73 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example02ScrollViewCell
|
||||
: FancyScrollViewCell<Example02CellDto, Example02ScrollViewContext>
|
||||
{
|
||||
[SerializeField]
|
||||
Animator animator;
|
||||
[SerializeField]
|
||||
Text message;
|
||||
[SerializeField]
|
||||
Image image;
|
||||
[SerializeField]
|
||||
Button button;
|
||||
|
||||
readonly int scrollTriggerHash = Animator.StringToHash("scroll");
|
||||
Example02ScrollViewContext context;
|
||||
|
||||
void Start()
|
||||
{
|
||||
var rectTransform = transform as RectTransform;
|
||||
rectTransform.anchorMax = Vector2.one;
|
||||
rectTransform.anchorMin = Vector2.zero;
|
||||
rectTransform.anchoredPosition3D = Vector3.zero;
|
||||
UpdatePosition(0);
|
||||
|
||||
button.onClick.AddListener(OnPressedCell);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// コンテキストを設定します
|
||||
/// </summary>
|
||||
/// <param name="context"></param>
|
||||
public override void SetContext(Example02ScrollViewContext context)
|
||||
{
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// セルの内容を更新します
|
||||
/// </summary>
|
||||
/// <param name="itemData"></param>
|
||||
public override void UpdateContent(Example02CellDto itemData)
|
||||
{
|
||||
message.text = itemData.Message;
|
||||
|
||||
if (context != null)
|
||||
{
|
||||
var isSelected = context.SelectedIndex == DataIndex;
|
||||
image.color = isSelected
|
||||
? new Color32(0, 255, 255, 100)
|
||||
: new Color32(255, 255, 255, 77);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// セルの位置を更新します
|
||||
/// </summary>
|
||||
/// <param name="position"></param>
|
||||
public override void UpdatePosition(float position)
|
||||
{
|
||||
animator.Play(scrollTriggerHash, -1, position);
|
||||
animator.speed = 0;
|
||||
}
|
||||
|
||||
public void OnPressedCell()
|
||||
{
|
||||
if (context != null)
|
||||
{
|
||||
context.OnPressedCell(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9409f360a0deeb949a3635126edf8000
|
||||
timeCreated: 1487505842
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example02ScrollViewContext
|
||||
{
|
||||
public System.Action<Example02ScrollViewCell> OnPressedCell;
|
||||
public int SelectedIndex;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 82429dd602c927c4faab5b80397e65a3
|
||||
timeCreated: 1487505870
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d648997d940777f41b77d17ab29f5cea
|
||||
folderAsset: yes
|
||||
timeCreated: 1501610675
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,755 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
OcclusionCullingSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: 0.25
|
||||
backfaceThreshold: 100
|
||||
m_SceneGUID: 00000000000000000000000000000000
|
||||
m_OcclusionCullingData: {fileID: 0}
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 8
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: 0.01
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1}
|
||||
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
|
||||
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: 0.5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0.37311947, g: 0.38074005, b: 0.35872722, a: 1}
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 9
|
||||
m_GIWorkflowMode: 0
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 8
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AO: 0
|
||||
m_AOMaxDistance: 1
|
||||
m_CompAOExponent: 1
|
||||
m_CompAOExponentDirect: 0
|
||||
m_Padding: 2
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_LightmapsBakeMode: 1
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherFiltering: 1
|
||||
m_FinalGatherRayCount: 256
|
||||
m_ReflectionCompression: 2
|
||||
m_MixedBakeMode: 1
|
||||
m_BakeBackend: 0
|
||||
m_PVRSampling: 1
|
||||
m_PVRDirectSampleCount: 32
|
||||
m_PVRSampleCount: 500
|
||||
m_PVRBounces: 2
|
||||
m_PVRFiltering: 0
|
||||
m_PVRFilteringMode: 1
|
||||
m_PVRCulling: 1
|
||||
m_PVRFilteringGaussRadiusDirect: 1
|
||||
m_PVRFilteringGaussRadiusIndirect: 5
|
||||
m_PVRFilteringGaussRadiusAO: 2
|
||||
m_PVRFilteringAtrousColorSigma: 1
|
||||
m_PVRFilteringAtrousNormalSigma: 1
|
||||
m_PVRFilteringAtrousPositionSigma: 1
|
||||
m_LightingDataAsset: {fileID: 0}
|
||||
m_ShadowMaskMode: 2
|
||||
--- !u!196 &4
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentTypeID: 0
|
||||
agentRadius: 0.5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: 0.4
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
minRegionArea: 2
|
||||
manualCellSize: 0
|
||||
cellSize: 0.16666667
|
||||
manualTileSize: 0
|
||||
tileSize: 256
|
||||
accuratePlacement: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &650160435
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 650160439}
|
||||
- component: {fileID: 650160438}
|
||||
- component: {fileID: 650160437}
|
||||
- component: {fileID: 650160436}
|
||||
- component: {fileID: 650160440}
|
||||
m_Layer: 5
|
||||
m_Name: Canvas
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &650160436
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_IgnoreReversedGraphics: 1
|
||||
m_BlockingObjects: 0
|
||||
m_BlockingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
--- !u!114 &650160437
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_UiScaleMode: 0
|
||||
m_ReferencePixelsPerUnit: 100
|
||||
m_ScaleFactor: 1
|
||||
m_ReferenceResolution: {x: 800, y: 600}
|
||||
m_ScreenMatchMode: 0
|
||||
m_MatchWidthOrHeight: 0
|
||||
m_PhysicalUnit: 3
|
||||
m_FallbackScreenDPI: 96
|
||||
m_DefaultSpriteDPI: 96
|
||||
m_DynamicPixelsPerUnit: 1
|
||||
--- !u!223 &650160438
|
||||
Canvas:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 3
|
||||
m_RenderMode: 1
|
||||
m_Camera: {fileID: 777088607}
|
||||
m_PlaneDistance: 100
|
||||
m_PixelPerfect: 0
|
||||
m_ReceivesEvents: 1
|
||||
m_OverrideSorting: 0
|
||||
m_OverridePixelPerfect: 0
|
||||
m_SortingBucketNormalizedSize: 0
|
||||
m_AdditionalShaderChannelsFlag: 25
|
||||
m_SortingLayerID: 0
|
||||
m_SortingOrder: 0
|
||||
m_TargetDisplay: 0
|
||||
--- !u!224 &650160439
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0, y: 0, z: 0}
|
||||
m_Children:
|
||||
- {fileID: 1492537696}
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
--- !u!114 &650160440
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 650160435}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 45018617dd0e7cf4d8b8800224ac5d40, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
scrollView: {fileID: 1492537697}
|
||||
--- !u!1 &777088603
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 777088608}
|
||||
- component: {fileID: 777088607}
|
||||
- component: {fileID: 777088606}
|
||||
- component: {fileID: 777088605}
|
||||
- component: {fileID: 777088604}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &777088604
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &777088605
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &777088606
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &777088607
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: 0.3
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_AllowMSAA: 1
|
||||
m_ForceIntoRT: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: 0.022
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &777088608
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 777088603}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &1012097242
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1012097243}
|
||||
- component: {fileID: 1012097245}
|
||||
- component: {fileID: 1012097244}
|
||||
- component: {fileID: 1012097246}
|
||||
m_Layer: 5
|
||||
m_Name: Image
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1012097243
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_LocalRotation: {x: 0.6427876, y: 0, z: 0, w: 0.7660445}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 0.8, y: 0.8, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1506879310}
|
||||
m_Father: {fileID: 1590362722}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: -80, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.7}
|
||||
m_AnchorMax: {x: 0.5, y: 0.7}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 200, y: 400}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1012097244
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1012097245
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
--- !u!114 &1012097246
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1012097242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 0
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 1012097244}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
--- !u!1 &1492537695
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1492537696}
|
||||
- component: {fileID: 1492537699}
|
||||
- component: {fileID: 1492537702}
|
||||
- component: {fileID: 1492537701}
|
||||
- component: {fileID: 1492537697}
|
||||
m_Layer: 5
|
||||
m_Name: ScrollView
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1492537696
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1590362722}
|
||||
m_Father: {fileID: 650160439}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1492537697
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 7454b91158ad32e49ab5d3cdac132574, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
cellInterval: 0.06666667
|
||||
cellOffset: 0.5
|
||||
loop: 1
|
||||
cellBase: {fileID: 1590362721}
|
||||
scrollPositionController: {fileID: 1492537699}
|
||||
--- !u!114 &1492537699
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: cc9ad31350b1b6348b57c626195a562d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
viewport: {fileID: 1492537696}
|
||||
directionOfRecognize: 1
|
||||
movementType: 0
|
||||
elasticity: 0.1
|
||||
scrollSensitivity: 7
|
||||
inertia: 1
|
||||
decelerationRate: 0.03
|
||||
snap:
|
||||
Enable: 1
|
||||
VelocityThreshold: 0.5
|
||||
Duration: 0.3
|
||||
dataCount: 0
|
||||
OnUpdatePosition:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.Extensions.ScrollPositionController+UpdatePositionEvent,
|
||||
Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
--- !u!114 &1492537701
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 0.392}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1492537702
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1492537695}
|
||||
--- !u!1 &1506879309
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1506879310}
|
||||
- component: {fileID: 1506879312}
|
||||
- component: {fileID: 1506879311}
|
||||
m_Layer: 5
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1506879310
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
m_LocalRotation: {x: 0.008726558, y: 0, z: 0, w: 0.999962}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1012097243}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 1, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 160, y: 35}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1506879311
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 30
|
||||
m_FontStyle: 3
|
||||
m_BestFit: 0
|
||||
m_MinSize: 3
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 1
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text:
|
||||
--- !u!222 &1506879312
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1506879309}
|
||||
--- !u!1 &1590362721
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1590362722}
|
||||
- component: {fileID: 1590362725}
|
||||
- component: {fileID: 1590362723}
|
||||
- component: {fileID: 1590362724}
|
||||
- component: {fileID: 1590362728}
|
||||
m_Layer: 5
|
||||
m_Name: Cell
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1590362722
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_LocalRotation: {x: -0, y: -0.026176924, z: -0.99965733, w: 0}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1012097243}
|
||||
m_Father: {fileID: 1492537696}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: -3, y: 0, z: -180}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 980, y: 552}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!95 &1590362723
|
||||
Animator:
|
||||
serializedVersion: 3
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_Avatar: {fileID: 0}
|
||||
m_Controller: {fileID: 9100000, guid: c1a16bf117472bf47b662d4bc2647177, type: 2}
|
||||
m_CullingMode: 0
|
||||
m_UpdateMode: 0
|
||||
m_ApplyRootMotion: 0
|
||||
m_LinearVelocityBlending: 0
|
||||
m_WarningMessage:
|
||||
m_HasTransformHierarchy: 1
|
||||
m_AllowConstantClipSamplingOptimization: 1
|
||||
--- !u!114 &1590362724
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 173c545de5ff4e048bcc3642f8392e4e, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
animator: {fileID: 1590362723}
|
||||
message: {fileID: 1506879311}
|
||||
image: {fileID: 1012097244}
|
||||
button: {fileID: 1012097246}
|
||||
--- !u!222 &1590362725
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
--- !u!225 &1590362728
|
||||
CanvasGroup:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1590362721}
|
||||
m_Enabled: 1
|
||||
m_Alpha: 1
|
||||
m_Interactable: 1
|
||||
m_BlocksRaycasts: 1
|
||||
m_IgnoreParentGroups: 0
|
||||
--- !u!1 &1770868449
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1770868452}
|
||||
- component: {fileID: 1770868451}
|
||||
- component: {fileID: 1770868450}
|
||||
m_Layer: 0
|
||||
m_Name: EventSystem
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1770868450
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1077351063, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalAxis: Horizontal
|
||||
m_VerticalAxis: Vertical
|
||||
m_SubmitButton: Submit
|
||||
m_CancelButton: Cancel
|
||||
m_InputActionsPerSecond: 10
|
||||
m_RepeatDelay: 0.5
|
||||
m_ForceModuleActive: 0
|
||||
--- !u!114 &1770868451
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -619905303, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_FirstSelected: {fileID: 0}
|
||||
m_sendNavigationEvents: 1
|
||||
m_DragThreshold: 5
|
||||
--- !u!4 &1770868452
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1770868449}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1f93c60c8aa572040a751a20a626451f
|
||||
timeCreated: 1487505810
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 94b9a5282934b8c43b2aeb7a25815a99
|
||||
folderAsset: yes
|
||||
timeCreated: 1488028867
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,468 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!74 &7400000
|
||||
AnimationClip:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: 03_InfiniteScroll_Animation
|
||||
serializedVersion: 6
|
||||
m_Legacy: 0
|
||||
m_Compressed: 0
|
||||
m_UseHighQualityCurve: 1
|
||||
m_RotationCurves: []
|
||||
m_CompressedRotationCurves: []
|
||||
m_EulerCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: {x: 0, y: 0, z: -250}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
inSlope: {x: 0, y: 0, z: 450}
|
||||
outSlope: {x: 0, y: 0, z: 450}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: {x: 0, y: 0, z: 200}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: {x: 80, y: -80, z: 0}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: {x: 0, y: 0, z: 0}
|
||||
inSlope: {x: 0, y: 160, z: 0}
|
||||
outSlope: {x: 0, y: 160, z: 0}
|
||||
tangentMode: 0
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: {x: 80, y: 80, z: 0}
|
||||
inSlope: {x: 0, y: 0, z: 0}
|
||||
outSlope: {x: 0, y: 0, z: 0}
|
||||
tangentMode: 0
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
path: Image
|
||||
m_PositionCurves: []
|
||||
m_ScaleCurves: []
|
||||
m_FloatCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_Alpha
|
||||
path:
|
||||
classID: 225
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -250
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 250
|
||||
inSlope: 2000
|
||||
outSlope: 2000
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 2750
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalPosition.z
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
m_PPtrCurves: []
|
||||
m_SampleRate: 60
|
||||
m_WrapMode: 0
|
||||
m_Bounds:
|
||||
m_Center: {x: 0, y: 0, z: 0}
|
||||
m_Extent: {x: 0, y: 0, z: 0}
|
||||
m_ClipBindingConstant:
|
||||
genericBindings:
|
||||
- path: 0
|
||||
attribute: 4
|
||||
script: {fileID: 0}
|
||||
classID: 4
|
||||
customType: 14
|
||||
isPPtrCurve: 0
|
||||
- path: 83635035
|
||||
attribute: 4
|
||||
script: {fileID: 0}
|
||||
classID: 4
|
||||
customType: 14
|
||||
isPPtrCurve: 0
|
||||
- path: 0
|
||||
attribute: 1574349066
|
||||
script: {fileID: 0}
|
||||
classID: 225
|
||||
customType: 0
|
||||
isPPtrCurve: 0
|
||||
- path: 0
|
||||
attribute: 2033536083
|
||||
script: {fileID: 0}
|
||||
classID: 224
|
||||
customType: 28
|
||||
isPPtrCurve: 0
|
||||
pptrCurveMapping: []
|
||||
m_AnimationClipSettings:
|
||||
serializedVersion: 2
|
||||
m_AdditiveReferencePoseClip: {fileID: 0}
|
||||
m_AdditiveReferencePoseTime: 0
|
||||
m_StartTime: 0
|
||||
m_StopTime: 1
|
||||
m_OrientationOffsetY: 0
|
||||
m_Level: 0
|
||||
m_CycleOffset: 0
|
||||
m_HasAdditiveReferencePose: 0
|
||||
m_LoopTime: 0
|
||||
m_LoopBlend: 0
|
||||
m_LoopBlendOrientation: 0
|
||||
m_LoopBlendPositionY: 0
|
||||
m_LoopBlendPositionXZ: 0
|
||||
m_KeepOriginalOrientation: 0
|
||||
m_KeepOriginalPositionY: 1
|
||||
m_KeepOriginalPositionXZ: 0
|
||||
m_HeightFromFeet: 0
|
||||
m_Mirror: 0
|
||||
m_EditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.x
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.y
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -250
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 450
|
||||
outSlope: 450
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 200
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.z
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 80
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 80
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -80
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 160
|
||||
outSlope: 160
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 80
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: localEulerAnglesRaw.z
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 1
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 0
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_Alpha
|
||||
path:
|
||||
classID: 225
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve:
|
||||
- serializedVersion: 2
|
||||
time: 0
|
||||
value: -250
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 0.5
|
||||
value: 250
|
||||
inSlope: 2000
|
||||
outSlope: 2000
|
||||
tangentMode: 136
|
||||
- serializedVersion: 2
|
||||
time: 1
|
||||
value: 2750
|
||||
inSlope: 0
|
||||
outSlope: 0
|
||||
tangentMode: 136
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalPosition.z
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
m_EulerEditorCurves:
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.z
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.y
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.x
|
||||
path:
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.x
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.y
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
- curve:
|
||||
serializedVersion: 2
|
||||
m_Curve: []
|
||||
m_PreInfinity: 2
|
||||
m_PostInfinity: 2
|
||||
m_RotationOrder: 4
|
||||
attribute: m_LocalEulerAngles.z
|
||||
path: Image
|
||||
classID: 224
|
||||
script: {fileID: 0}
|
||||
m_HasGenericRootTransform: 1
|
||||
m_HasMotionFloatCurves: 0
|
||||
m_GenerateMotionCurves: 0
|
||||
m_IsEmpty: 0
|
||||
m_Events: []
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: add491cbb06317b48a88a94b0081db1d
|
||||
timeCreated: 1487186596
|
||||
licenseType: Free
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,121 @@
|
|||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!91 &9100000
|
||||
AnimatorController:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: 03_InfiniteScroll_CellScroll
|
||||
serializedVersion: 5
|
||||
m_AnimatorParameters:
|
||||
- m_Name: scroll
|
||||
m_Type: 9
|
||||
m_DefaultFloat: 0
|
||||
m_DefaultInt: 0
|
||||
m_DefaultBool: 1
|
||||
m_Controller: {fileID: 9100000}
|
||||
m_AnimatorLayers:
|
||||
- serializedVersion: 5
|
||||
m_Name: Base Layer
|
||||
m_StateMachine: {fileID: 1107904440216339570}
|
||||
m_Mask: {fileID: 0}
|
||||
m_Motions: []
|
||||
m_Behaviours: []
|
||||
m_BlendingMode: 0
|
||||
m_SyncedLayerIndex: -1
|
||||
m_DefaultWeight: 0
|
||||
m_IKPass: 0
|
||||
m_SyncedLayerAffectsTiming: 0
|
||||
m_Controller: {fileID: 9100000}
|
||||
--- !u!1101 &1101181072344081740
|
||||
AnimatorStateTransition:
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name:
|
||||
m_Conditions: []
|
||||
m_DstStateMachine: {fileID: 0}
|
||||
m_DstState: {fileID: 1102900943980948860}
|
||||
m_Solo: 0
|
||||
m_Mute: 0
|
||||
m_IsExit: 0
|
||||
serializedVersion: 3
|
||||
m_TransitionDuration: 0.1
|
||||
m_TransitionOffset: 0
|
||||
m_ExitTime: 0.9
|
||||
m_HasExitTime: 0
|
||||
m_HasFixedDuration: 1
|
||||
m_InterruptionSource: 0
|
||||
m_OrderedInterruption: 1
|
||||
m_CanTransitionToSelf: 1
|
||||
--- !u!1102 &1102483224443493760
|
||||
AnimatorState:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: New State
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_Motion: {fileID: 0}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
--- !u!1102 &1102900943980948860
|
||||
AnimatorState:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: scroll
|
||||
m_Speed: 1
|
||||
m_CycleOffset: 0
|
||||
m_Transitions: []
|
||||
m_StateMachineBehaviours: []
|
||||
m_Position: {x: 50, y: 50, z: 0}
|
||||
m_IKOnFeet: 0
|
||||
m_WriteDefaultValues: 1
|
||||
m_Mirror: 0
|
||||
m_SpeedParameterActive: 0
|
||||
m_MirrorParameterActive: 0
|
||||
m_CycleOffsetParameterActive: 0
|
||||
m_Motion: {fileID: 7400000, guid: add491cbb06317b48a88a94b0081db1d, type: 2}
|
||||
m_Tag:
|
||||
m_SpeedParameter:
|
||||
m_MirrorParameter:
|
||||
m_CycleOffsetParameter:
|
||||
--- !u!1107 &1107904440216339570
|
||||
AnimatorStateMachine:
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 1
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_Name: Base Layer
|
||||
m_ChildStates:
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102483224443493760}
|
||||
m_Position: {x: 264, y: 144, z: 0}
|
||||
- serializedVersion: 1
|
||||
m_State: {fileID: 1102900943980948860}
|
||||
m_Position: {x: 252, y: 24, z: 0}
|
||||
m_ChildStateMachines: []
|
||||
m_AnyStateTransitions:
|
||||
- {fileID: 1101181072344081740}
|
||||
m_EntryTransitions: []
|
||||
m_StateMachineTransitions: {}
|
||||
m_StateMachineBehaviours: []
|
||||
m_AnyStatePosition: {x: 50, y: 20, z: 0}
|
||||
m_EntryPosition: {x: 50, y: 120, z: 0}
|
||||
m_ExitPosition: {x: 800, y: 120, z: 0}
|
||||
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
|
||||
m_DefaultState: {fileID: 1102483224443493760}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c1a16bf117472bf47b662d4bc2647177
|
||||
timeCreated: 1487186612
|
||||
licenseType: Free
|
||||
NativeFormatImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,7 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example03CellDto
|
||||
{
|
||||
public string Message;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f620c6407f9b6c74390ab02bfa99d777
|
||||
timeCreated: 1487505929
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,19 @@
|
|||
using System.Linq;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example03Scene : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
Example03ScrollView scrollView;
|
||||
|
||||
void Start()
|
||||
{
|
||||
var cellData = Enumerable.Range(0, 20)
|
||||
.Select(i => new Example03CellDto { Message = "Cell " + i })
|
||||
.ToList();
|
||||
|
||||
scrollView.UpdateData(cellData);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 45018617dd0e7cf4d8b8800224ac5d40
|
||||
timeCreated: 1487506430
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,32 @@
|
|||
using System.Collections.Generic;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example03ScrollView : FancyScrollView<Example03CellDto, Example03ScrollViewContext>
|
||||
{
|
||||
[SerializeField]
|
||||
ScrollPositionController scrollPositionController;
|
||||
|
||||
new void Awake()
|
||||
{
|
||||
scrollPositionController.OnUpdatePosition.AddListener(UpdatePosition);
|
||||
SetContext(new Example03ScrollViewContext { OnPressedCell = OnPressedCell });
|
||||
base.Awake();
|
||||
}
|
||||
|
||||
public void UpdateData(List<Example03CellDto> data)
|
||||
{
|
||||
cellData = data;
|
||||
scrollPositionController.SetDataCount(cellData.Count);
|
||||
UpdateContents();
|
||||
}
|
||||
|
||||
void OnPressedCell(Example03ScrollViewCell cell)
|
||||
{
|
||||
scrollPositionController.ScrollTo(cell.DataIndex, 0.4f);
|
||||
context.SelectedIndex = cell.DataIndex;
|
||||
UpdateContents();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7454b91158ad32e49ab5d3cdac132574
|
||||
timeCreated: 1487505830
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,73 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example03ScrollViewCell
|
||||
: FancyScrollViewCell<Example03CellDto, Example03ScrollViewContext>
|
||||
{
|
||||
[SerializeField]
|
||||
Animator animator;
|
||||
[SerializeField]
|
||||
Text message;
|
||||
[SerializeField]
|
||||
Image image;
|
||||
[SerializeField]
|
||||
Button button;
|
||||
|
||||
readonly int scrollTriggerHash = Animator.StringToHash("scroll");
|
||||
Example03ScrollViewContext context;
|
||||
|
||||
void Start()
|
||||
{
|
||||
var rectTransform = transform as RectTransform;
|
||||
rectTransform.anchorMax = Vector2.one;
|
||||
rectTransform.anchorMin = Vector2.zero;
|
||||
rectTransform.anchoredPosition3D = Vector3.zero;
|
||||
UpdatePosition(0);
|
||||
|
||||
button.onClick.AddListener(OnPressedCell);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// コンテキストを設定します
|
||||
/// </summary>
|
||||
/// <param name="context"></param>
|
||||
public override void SetContext(Example03ScrollViewContext context)
|
||||
{
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// セルの内容を更新します
|
||||
/// </summary>
|
||||
/// <param name="itemData"></param>
|
||||
public override void UpdateContent(Example03CellDto itemData)
|
||||
{
|
||||
message.text = itemData.Message;
|
||||
|
||||
if (context != null)
|
||||
{
|
||||
var isSelected = context.SelectedIndex == DataIndex;
|
||||
image.color = isSelected
|
||||
? new Color32(0, 255, 255, 100)
|
||||
: new Color32(255, 255, 255, 77);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// セルの位置を更新します
|
||||
/// </summary>
|
||||
/// <param name="position"></param>
|
||||
public override void UpdatePosition(float position)
|
||||
{
|
||||
animator.Play(scrollTriggerHash, -1, position);
|
||||
animator.speed = 0;
|
||||
}
|
||||
|
||||
public void OnPressedCell()
|
||||
{
|
||||
if (context != null)
|
||||
{
|
||||
context.OnPressedCell(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 173c545de5ff4e048bcc3642f8392e4e
|
||||
timeCreated: 1487505842
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class Example03ScrollViewContext
|
||||
{
|
||||
public System.Action<Example03ScrollViewCell> OnPressedCell;
|
||||
public int SelectedIndex;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 90b3672ca30312045afd42deb38c2f6e
|
||||
timeCreated: 1487505870
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,18 @@
|
|||
using UnityEngine.EventSystems;
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class PaginationScript : MonoBehaviour, IPointerClickHandler
|
||||
{
|
||||
public HorizontalScrollSnap hss;
|
||||
public int Page;
|
||||
|
||||
public void OnPointerClick(PointerEventData eventData)
|
||||
{
|
||||
if (hss != null)
|
||||
{
|
||||
hss.GoToScreen(Page);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 5ea46c3573b42624aa573f2d6b091ed1
|
||||
timeCreated: 1501404313
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -141,12 +141,12 @@ RectTransform:
|
|||
- {fileID: 2093228243}
|
||||
- {fileID: 1673151533}
|
||||
m_Father: {fileID: 448991457}
|
||||
m_RootOrder: 5
|
||||
m_RootOrder: 3
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 259, y: -106}
|
||||
m_SizeDelta: {x: -577, y: -279}
|
||||
m_AnchoredPosition: {x: 225.10002, y: -99.100006}
|
||||
m_SizeDelta: {x: -496.4, y: -233.4}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &2641525
|
||||
MonoBehaviour:
|
||||
|
@ -233,7 +233,7 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
|
@ -291,6 +291,8 @@ RectTransform:
|
|||
m_Children:
|
||||
- {fileID: 1826600021}
|
||||
- {fileID: 472879517}
|
||||
- {fileID: 1112321045}
|
||||
- {fileID: 803284190}
|
||||
m_Father: {fileID: 448991457}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
|
@ -310,7 +312,7 @@ MonoBehaviour:
|
|||
m_Script: {fileID: 11500000, guid: 609dcc22aadcc16418bfac22716ee9a6, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
StartingScreen: 0
|
||||
StartingScreen: 2
|
||||
PageStep: 2.7
|
||||
Pagination: {fileID: 266467291}
|
||||
PrevButton: {fileID: 1112321044}
|
||||
|
@ -504,7 +506,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_5
|
||||
--- !u!222 &96249206
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -545,12 +547,12 @@ RectTransform:
|
|||
- {fileID: 896078184}
|
||||
- {fileID: 1096492862}
|
||||
m_Father: {fileID: 448991457}
|
||||
m_RootOrder: 4
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -18, y: -108}
|
||||
m_SizeDelta: {x: -651, y: -244}
|
||||
m_AnchoredPosition: {x: 59.299988, y: -108}
|
||||
m_SizeDelta: {x: -496.4, y: -244}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &266467293
|
||||
MonoBehaviour:
|
||||
|
@ -595,6 +597,7 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 344218386}
|
||||
- component: {fileID: 344218387}
|
||||
- component: {fileID: 344218388}
|
||||
m_Layer: 5
|
||||
m_Name: Toggle (3)
|
||||
m_TagString: Untagged
|
||||
|
@ -667,6 +670,19 @@ MonoBehaviour:
|
|||
m_TypeName: UnityEngine.UI.Toggle+ToggleEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
m_IsOn: 1
|
||||
--- !u!114 &344218388
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 344218385}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5ea46c3573b42624aa573f2d6b091ed1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
hss: {fileID: 67156823}
|
||||
Page: 3
|
||||
--- !u!1 &369849432
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -830,8 +846,6 @@ RectTransform:
|
|||
m_LocalScale: {x: 0, y: 0, z: 0}
|
||||
m_Children:
|
||||
- {fileID: 67156822}
|
||||
- {fileID: 1112321045}
|
||||
- {fileID: 803284190}
|
||||
- {fileID: 1200934015}
|
||||
- {fileID: 266467292}
|
||||
- {fileID: 2641524}
|
||||
|
@ -1063,7 +1077,7 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
|
@ -1506,7 +1520,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_6
|
||||
--- !u!222 &580834257
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -1647,6 +1661,80 @@ CanvasRenderer:
|
|||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 628800540}
|
||||
--- !u!1 &665010633
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 665010634}
|
||||
- component: {fileID: 665010636}
|
||||
- component: {fileID: 665010635}
|
||||
m_Layer: 5
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &665010634
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 665010633}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1530543973}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &665010635
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 665010633}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 14
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 0
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 1
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Scroll Down
|
||||
--- !u!222 &665010636
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 665010633}
|
||||
--- !u!1 &675753574
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -1831,7 +1919,7 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
|
@ -1882,17 +1970,17 @@ RectTransform:
|
|||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 803284189}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1482741892}
|
||||
m_Father: {fileID: 448991457}
|
||||
m_RootOrder: 2
|
||||
m_Father: {fileID: 67156822}
|
||||
m_RootOrder: 3
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -113.899994, y: -183.2}
|
||||
m_AnchoredPosition: {x: -96.399994, y: -169.20001}
|
||||
m_SizeDelta: {x: 150, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &803284191
|
||||
|
@ -2179,7 +2267,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_2
|
||||
--- !u!222 &871292880
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -2195,6 +2283,7 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 896078184}
|
||||
- component: {fileID: 896078185}
|
||||
- component: {fileID: 896078186}
|
||||
m_Layer: 5
|
||||
m_Name: Toggle (4)
|
||||
m_TagString: Untagged
|
||||
|
@ -2267,6 +2356,19 @@ MonoBehaviour:
|
|||
m_TypeName: UnityEngine.UI.Toggle+ToggleEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
m_IsOn: 1
|
||||
--- !u!114 &896078186
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 896078183}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5ea46c3573b42624aa573f2d6b091ed1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
hss: {fileID: 67156823}
|
||||
Page: 4
|
||||
--- !u!1 &911861601
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -2366,6 +2468,8 @@ RectTransform:
|
|||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1318750537}
|
||||
- {fileID: 1264033139}
|
||||
- {fileID: 1530543973}
|
||||
m_Father: {fileID: 1200934015}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
|
@ -2387,9 +2491,9 @@ MonoBehaviour:
|
|||
m_EditorClassIdentifier:
|
||||
StartingScreen: 5
|
||||
PageStep: 1.27
|
||||
Pagination: {fileID: 266467291}
|
||||
PrevButton: {fileID: 1112321044}
|
||||
NextButton: {fileID: 803284189}
|
||||
Pagination: {fileID: 0}
|
||||
PrevButton: {fileID: 1530543972}
|
||||
NextButton: {fileID: 1264033135}
|
||||
transitionSpeed: 7.5
|
||||
UseFastSwipe: 0
|
||||
FastSwipeThreshold: 100
|
||||
|
@ -2521,6 +2625,80 @@ CanvasRenderer:
|
|||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1005665639}
|
||||
--- !u!1 &1011318431
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1011318432}
|
||||
- component: {fileID: 1011318434}
|
||||
- component: {fileID: 1011318433}
|
||||
m_Layer: 5
|
||||
m_Name: Text
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1011318432
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1011318431}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1264033139}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1011318433
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1011318431}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 14
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 0
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 1
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: "Scroll Up\t"
|
||||
--- !u!222 &1011318434
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1011318431}
|
||||
--- !u!1 &1045913701
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -2604,6 +2782,7 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 1096492862}
|
||||
- component: {fileID: 1096492863}
|
||||
- component: {fileID: 1096492864}
|
||||
m_Layer: 5
|
||||
m_Name: Toggle (5)
|
||||
m_TagString: Untagged
|
||||
|
@ -2676,6 +2855,19 @@ MonoBehaviour:
|
|||
m_TypeName: UnityEngine.UI.Toggle+ToggleEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
m_IsOn: 1
|
||||
--- !u!114 &1096492864
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1096492861}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5ea46c3573b42624aa573f2d6b091ed1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
hss: {fileID: 67156823}
|
||||
Page: 5
|
||||
--- !u!1 &1112321044
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -2700,17 +2892,17 @@ RectTransform:
|
|||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1112321044}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1045913702}
|
||||
m_Father: {fileID: 448991457}
|
||||
m_RootOrder: 1
|
||||
m_Father: {fileID: 67156822}
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -326.9, y: -183.2}
|
||||
m_AnchoredPosition: {x: -309.4, y: -169.20001}
|
||||
m_SizeDelta: {x: 150, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1112321046
|
||||
|
@ -2854,7 +3046,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_3
|
||||
--- !u!222 &1113803476
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -2959,6 +3151,7 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 1196803093}
|
||||
- component: {fileID: 1196803094}
|
||||
- component: {fileID: 1196803095}
|
||||
m_Layer: 5
|
||||
m_Name: Toggle
|
||||
m_TagString: Untagged
|
||||
|
@ -3031,6 +3224,19 @@ MonoBehaviour:
|
|||
m_TypeName: UnityEngine.UI.Toggle+ToggleEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
m_IsOn: 1
|
||||
--- !u!114 &1196803095
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1196803092}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5ea46c3573b42624aa573f2d6b091ed1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
hss: {fileID: 67156823}
|
||||
Page: 0
|
||||
--- !u!1 &1200934014
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -3059,12 +3265,12 @@ RectTransform:
|
|||
m_Children:
|
||||
- {fileID: 1005665640}
|
||||
m_Father: {fileID: 448991457}
|
||||
m_RootOrder: 3
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -302, y: -0.125}
|
||||
m_SizeDelta: {x: -648, y: -27.25}
|
||||
m_AnchoredPosition: {x: -215, y: -6}
|
||||
m_SizeDelta: {x: -475, y: -39}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1200934016
|
||||
MonoBehaviour:
|
||||
|
@ -3077,6 +3283,117 @@ MonoBehaviour:
|
|||
m_Script: {fileID: -146154839, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &1264033135
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1264033139}
|
||||
- component: {fileID: 1264033138}
|
||||
- component: {fileID: 1264033137}
|
||||
- component: {fileID: 1264033136}
|
||||
m_Layer: 5
|
||||
m_Name: Up Button
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1264033136
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1264033135}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 1264033137}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
--- !u!114 &1264033137
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1264033135}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1264033138
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1264033135}
|
||||
--- !u!224 &1264033139
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1264033135}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 1011318432}
|
||||
m_Father: {fileID: 1005665640}
|
||||
m_RootOrder: 1
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -99, y: 114}
|
||||
m_SizeDelta: {x: 150, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &1264921919
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -3968,6 +4285,117 @@ CanvasRenderer:
|
|||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1522540075}
|
||||
--- !u!1 &1530543972
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 5
|
||||
m_Component:
|
||||
- component: {fileID: 1530543973}
|
||||
- component: {fileID: 1530543976}
|
||||
- component: {fileID: 1530543975}
|
||||
- component: {fileID: 1530543974}
|
||||
m_Layer: 5
|
||||
m_Name: Down Button
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1530543973
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1530543972}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children:
|
||||
- {fileID: 665010634}
|
||||
m_Father: {fileID: 1005665640}
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -99, y: -262}
|
||||
m_SizeDelta: {x: 150, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1530543974
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1530543972}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 1530543975}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
--- !u!114 &1530543975
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1530543972}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
|
||||
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
--- !u!222 &1530543976
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1530543972}
|
||||
--- !u!1 &1535867278
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -4035,7 +4463,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_0
|
||||
--- !u!222 &1535867281
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -4380,7 +4808,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_4
|
||||
--- !u!222 &1735277982
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -4465,6 +4893,7 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 1771801965}
|
||||
- component: {fileID: 1771801966}
|
||||
- component: {fileID: 1771801967}
|
||||
m_Layer: 5
|
||||
m_Name: Toggle (1)
|
||||
m_TagString: Untagged
|
||||
|
@ -4537,6 +4966,19 @@ MonoBehaviour:
|
|||
m_TypeName: UnityEngine.UI.Toggle+ToggleEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
m_IsOn: 1
|
||||
--- !u!114 &1771801967
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1771801964}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5ea46c3573b42624aa573f2d6b091ed1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
hss: {fileID: 67156823}
|
||||
Page: 1
|
||||
--- !u!1 &1790564029
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -4834,7 +5276,7 @@ MonoBehaviour:
|
|||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Page_01
|
||||
m_Text: Page_1
|
||||
--- !u!222 &1857291964
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -4993,6 +5435,7 @@ GameObject:
|
|||
m_Component:
|
||||
- component: {fileID: 2019749174}
|
||||
- component: {fileID: 2019749175}
|
||||
- component: {fileID: 2019749176}
|
||||
m_Layer: 5
|
||||
m_Name: Toggle (2)
|
||||
m_TagString: Untagged
|
||||
|
@ -5065,6 +5508,19 @@ MonoBehaviour:
|
|||
m_TypeName: UnityEngine.UI.Toggle+ToggleEvent, UnityEngine.UI, Version=1.0.0.0,
|
||||
Culture=neutral, PublicKeyToken=null
|
||||
m_IsOn: 1
|
||||
--- !u!114 &2019749176
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 2019749173}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5ea46c3573b42624aa573f2d6b091ed1, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
hss: {fileID: 67156823}
|
||||
Page: 2
|
||||
--- !u!1 &2069867491
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -5180,7 +5636,7 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
|
@ -5376,7 +5832,7 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
|
@ -5450,7 +5906,7 @@ MonoBehaviour:
|
|||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
|
|
|
@ -1,73 +1,80 @@
|
|||
using UnityEngine;
|
||||
|
||||
public class UpdateScrollSnap : MonoBehaviour {
|
||||
|
||||
public UnityEngine.UI.Extensions.HorizontalScrollSnap HSS;
|
||||
public UnityEngine.UI.Extensions.VerticalScrollSnap VSS;
|
||||
public GameObject HorizontalPagePrefab;
|
||||
public GameObject VerticalPagePrefab;
|
||||
public UnityEngine.UI.InputField JumpPage;
|
||||
|
||||
|
||||
public void AddButton()
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class UpdateScrollSnap : MonoBehaviour
|
||||
{
|
||||
if (HSS)
|
||||
|
||||
public UnityEngine.UI.Extensions.HorizontalScrollSnap HSS;
|
||||
public UnityEngine.UI.Extensions.VerticalScrollSnap VSS;
|
||||
public GameObject HorizontalPagePrefab;
|
||||
public GameObject VerticalPagePrefab;
|
||||
public UnityEngine.UI.InputField JumpPage;
|
||||
|
||||
|
||||
public void AddButton()
|
||||
{
|
||||
var newHSSPage = GameObject.Instantiate(HorizontalPagePrefab);
|
||||
HSS.AddChild(newHSSPage);
|
||||
if (HSS)
|
||||
{
|
||||
var newHSSPage = GameObject.Instantiate(HorizontalPagePrefab);
|
||||
HSS.AddChild(newHSSPage);
|
||||
}
|
||||
if (VSS)
|
||||
{
|
||||
var newVSSPage = GameObject.Instantiate(VerticalPagePrefab);
|
||||
VSS.AddChild(newVSSPage);
|
||||
}
|
||||
}
|
||||
if (VSS)
|
||||
|
||||
public void RemoveButton()
|
||||
{
|
||||
var newVSSPage = GameObject.Instantiate(VerticalPagePrefab);
|
||||
VSS.AddChild(newVSSPage);
|
||||
GameObject removed, removed2;
|
||||
if (HSS)
|
||||
{
|
||||
HSS.RemoveChild(HSS.CurrentPage, out removed);
|
||||
removed.SetActive(false);
|
||||
}
|
||||
if (VSS)
|
||||
{
|
||||
VSS.RemoveChild(VSS.CurrentPage, out removed2);
|
||||
removed2.SetActive(false);
|
||||
}
|
||||
}
|
||||
|
||||
public void JumpToPage()
|
||||
{
|
||||
int jumpPage = int.Parse(JumpPage.text);
|
||||
if (HSS)
|
||||
{
|
||||
HSS.GoToScreen(jumpPage);
|
||||
}
|
||||
if (VSS)
|
||||
{
|
||||
VSS.GoToScreen(jumpPage);
|
||||
}
|
||||
}
|
||||
|
||||
public void SelectionStartChange()
|
||||
{
|
||||
Debug.Log("Scroll Snap change started");
|
||||
}
|
||||
public void SelectionEndChange()
|
||||
{
|
||||
Debug.Log("Scroll Snap change finished");
|
||||
}
|
||||
public void PageChange(int page)
|
||||
{
|
||||
Debug.Log(string.Format("Scroll Snap page changed to {0}", page));
|
||||
}
|
||||
|
||||
public void RemoveAll()
|
||||
{
|
||||
GameObject[] children;
|
||||
HSS.RemoveAllChildren(out children);
|
||||
VSS.RemoveAllChildren(out children);
|
||||
}
|
||||
|
||||
public void JumpToSelectedToggle(int page)
|
||||
{
|
||||
HSS.GoToScreen(page);
|
||||
}
|
||||
}
|
||||
|
||||
public void RemoveButton()
|
||||
{
|
||||
GameObject removed, removed2;
|
||||
if (HSS)
|
||||
{
|
||||
HSS.RemoveChild(HSS.CurrentPage, out removed);
|
||||
removed.SetActive(false);
|
||||
}
|
||||
if (VSS)
|
||||
{
|
||||
VSS.RemoveChild(VSS.CurrentPage, out removed2);
|
||||
removed2.SetActive(false);
|
||||
}
|
||||
}
|
||||
|
||||
public void JumpToPage()
|
||||
{
|
||||
int jumpPage = int.Parse(JumpPage.text);
|
||||
if (HSS)
|
||||
{
|
||||
HSS.GoToScreen(jumpPage);
|
||||
}
|
||||
if (VSS)
|
||||
{
|
||||
VSS.GoToScreen(jumpPage);
|
||||
}
|
||||
}
|
||||
|
||||
public void SelectionStartChange()
|
||||
{
|
||||
Debug.Log("Scroll Snap change started");
|
||||
}
|
||||
public void SelectionEndChange()
|
||||
{
|
||||
Debug.Log("Scroll Snap change finished");
|
||||
}
|
||||
public void PageChange(int page)
|
||||
{
|
||||
Debug.Log(string.Format("Scroll Snap page changed to {0}",page));
|
||||
}
|
||||
|
||||
public void RemoveAll()
|
||||
{
|
||||
GameObject[] children;
|
||||
HSS.RemoveAllChildren(out children);
|
||||
VSS.RemoveAllChildren(out children);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 06c6e9a20a01e2348acb20c103a628f2
|
||||
folderAsset: yes
|
||||
timeCreated: 1501105181
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,29 @@
|
|||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class UpdateRadialValue : MonoBehaviour
|
||||
{
|
||||
public InputField input;
|
||||
public RadialSlider slider;
|
||||
|
||||
// Use this for initialization
|
||||
void Start()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
public void UpdateSliderValue()
|
||||
{
|
||||
float value;
|
||||
float.TryParse(input.text, out value);
|
||||
slider.Value = value;
|
||||
}
|
||||
|
||||
public void UpdateSliderAndle()
|
||||
{
|
||||
int value;
|
||||
int.TryParse(input.text, out value);
|
||||
slider.Angle = value;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b5921b909b28e7f4f9a57906c667c9ce
|
||||
timeCreated: 1501345599
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 84f742a1c72d4f5479bc951e9fd76fae
|
||||
timeCreated: 1501350786
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Binary file not shown.
|
@ -0,0 +1,55 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ad716093ca8bdf84189f6a67bfb8e30e
|
||||
timeCreated: 1431884735
|
||||
licenseType: Free
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
linearTexture: 0
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
cubemapConvolution: 0
|
||||
cubemapConvolutionSteps: 8
|
||||
cubemapConvolutionExponent: 1.5
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
filterMode: -1
|
||||
aniso: 16
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
rGBM: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 8
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -1,13 +1,13 @@
|
|||
using UnityEngine;
|
||||
|
||||
[System.Serializable]
|
||||
public class TestClass {
|
||||
|
||||
public string myString;
|
||||
public GameObject go;
|
||||
public string go_id;
|
||||
public Vector3 somePosition;
|
||||
public Color color;
|
||||
public int[] myArray = new int[] {2,43,12};
|
||||
}
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
[System.Serializable]
|
||||
public class TestClass
|
||||
{
|
||||
public string myString;
|
||||
public GameObject go;
|
||||
public string go_id;
|
||||
public Vector3 somePosition;
|
||||
public Color color;
|
||||
public int[] myArray = new int[] { 2, 43, 12 };
|
||||
}
|
||||
}
|
|
@ -1,81 +1,98 @@
|
|||
using UnityEngine;
|
||||
using UnityEngine.UI.Extensions;
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class TestScript : MonoBehaviour
|
||||
{
|
||||
public string testString = "Hello";
|
||||
public GameObject someGameObject;
|
||||
public string someGameObject_id;
|
||||
public TestClass testClass = new TestClass();
|
||||
public TestClass[] testClassArray = new TestClass[2];
|
||||
[DontSaveField] public Transform TransformThatWontBeSaved;//The [DontSaveField] attribute we wrote ourselves prevents the field from being included in the packed component data
|
||||
|
||||
public class TestScript : MonoBehaviour {
|
||||
public void OnSerialize()
|
||||
{
|
||||
//This is an example of a OnSerialize method, called before a gameobject is packed into serializable form.
|
||||
//In this case, the GameObject variable "someGameObject" and those in the testClass and testclass Array instances of TestClass should be reconstructed after loading.
|
||||
//Since GameObject (and Transform) references assigned during runtime can't be serialized directly,
|
||||
//we keep a seperate string variable for each GO variable that holds the ID of the GO instead.
|
||||
//This allows us to just save the ID instead.
|
||||
|
||||
public string testString = "Hello";
|
||||
public GameObject someGameObject;
|
||||
public string someGameObject_id;
|
||||
public TestClass testClass = new TestClass();
|
||||
public TestClass[] testClassArray = new TestClass[2];
|
||||
[DontSaveField] public Transform TransformThatWontBeSaved;//The [DontSaveField] attribute we wrote ourselves prevents the field from being included in the packed component data
|
||||
//This example is one way of dealing with GameObject (and Transform) references. If a lot of those occur in your project,
|
||||
//it might be more efficient to go directly into the static SaveLoad.PackComponent method. and doing it there.
|
||||
|
||||
public void OnSerialize() {
|
||||
//This is an example of a OnSerialize method, called before a gameobject is packed into serializable form.
|
||||
//In this case, the GameObject variable "someGameObject" and those in the testClass and testclass Array instances of TestClass should be reconstructed after loading.
|
||||
//Since GameObject (and Transform) references assigned during runtime can't be serialized directly,
|
||||
//we keep a seperate string variable for each GO variable that holds the ID of the GO instead.
|
||||
//This allows us to just save the ID instead.
|
||||
if (someGameObject != null && someGameObject.GetComponent<ObjectIdentifier>())
|
||||
{
|
||||
someGameObject_id = someGameObject.GetComponent<ObjectIdentifier>().id;
|
||||
}
|
||||
else
|
||||
{
|
||||
someGameObject_id = null;
|
||||
}
|
||||
|
||||
//This example is one way of dealing with GameObject (and Transform) references. If a lot of those occur in your project,
|
||||
//it might be more efficient to go directly into the static SaveLoad.PackComponent method. and doing it there.
|
||||
if (testClassArray != null)
|
||||
{
|
||||
foreach (TestClass testClass_cur in testClassArray)
|
||||
{
|
||||
if (testClass_cur.go != null && testClass_cur.go.GetComponent<ObjectIdentifier>())
|
||||
{
|
||||
testClass_cur.go_id = testClass_cur.go.GetComponent<ObjectIdentifier>().id;
|
||||
}
|
||||
else
|
||||
{
|
||||
testClass_cur.go_id = null;
|
||||
}
|
||||
}
|
||||
|
||||
if(someGameObject != null && someGameObject.GetComponent<ObjectIdentifier>()) {
|
||||
someGameObject_id = someGameObject.GetComponent<ObjectIdentifier>().id;
|
||||
}
|
||||
else {
|
||||
someGameObject_id = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(testClassArray != null) {
|
||||
foreach(TestClass testClass_cur in testClassArray) {
|
||||
if(testClass_cur.go != null && testClass_cur.go.GetComponent<ObjectIdentifier>()) {
|
||||
testClass_cur.go_id = testClass_cur.go.GetComponent<ObjectIdentifier>().id;
|
||||
}
|
||||
else {
|
||||
testClass_cur.go_id = null;
|
||||
}
|
||||
}
|
||||
public void OnDeserialize()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
//Since we saved the ID of the GameObject references, we can now use those to recreate the references.
|
||||
//We just iterate through all the ObjectIdentifier component occurences in the scene, compare their id value to our saved and loaded someGameObject id (etc.) value,
|
||||
//and assign the component's GameObject if it matches.
|
||||
//Note that the "break" command is important, both because it elimitates unneccessary iterations,
|
||||
//and because continuing after having found a match might for some reason find another, wrong match that makes a null reference.
|
||||
|
||||
public void OnDeserialize() {
|
||||
ObjectIdentifier[] objectsIdentifiers = FindObjectsOfType(typeof(ObjectIdentifier)) as ObjectIdentifier[];
|
||||
|
||||
//Since we saved the ID of the GameObject references, we can now use those to recreate the references.
|
||||
//We just iterate through all the ObjectIdentifier component occurences in the scene, compare their id value to our saved and loaded someGameObject id (etc.) value,
|
||||
//and assign the component's GameObject if it matches.
|
||||
//Note that the "break" command is important, both because it elimitates unneccessary iterations,
|
||||
//and because continuing after having found a match might for some reason find another, wrong match that makes a null reference.
|
||||
if (string.IsNullOrEmpty(someGameObject_id) == false)
|
||||
{
|
||||
foreach (ObjectIdentifier objectIdentifier in objectsIdentifiers)
|
||||
{
|
||||
|
||||
ObjectIdentifier[] objectsIdentifiers = FindObjectsOfType(typeof(ObjectIdentifier)) as ObjectIdentifier[];
|
||||
|
||||
if(string.IsNullOrEmpty(someGameObject_id) == false) {
|
||||
foreach(ObjectIdentifier objectIdentifier in objectsIdentifiers) {
|
||||
|
||||
if(string.IsNullOrEmpty(objectIdentifier.id) == false) {
|
||||
if(objectIdentifier.id == someGameObject_id) {
|
||||
someGameObject = objectIdentifier.gameObject;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(testClassArray != null) {
|
||||
foreach(TestClass testClass_cur in testClassArray) {
|
||||
if(string.IsNullOrEmpty(testClass_cur.go_id) == false) {
|
||||
foreach (ObjectIdentifier objectIdentifier in objectsIdentifiers) {
|
||||
if(string.IsNullOrEmpty(objectIdentifier.id) == false) {
|
||||
if(objectIdentifier.id == testClass_cur.go_id) {
|
||||
testClass_cur.go = objectIdentifier.gameObject;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (string.IsNullOrEmpty(objectIdentifier.id) == false)
|
||||
{
|
||||
if (objectIdentifier.id == someGameObject_id)
|
||||
{
|
||||
someGameObject = objectIdentifier.gameObject;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (testClassArray != null)
|
||||
{
|
||||
foreach (TestClass testClass_cur in testClassArray)
|
||||
{
|
||||
if (string.IsNullOrEmpty(testClass_cur.go_id) == false)
|
||||
{
|
||||
foreach (ObjectIdentifier objectIdentifier in objectsIdentifiers)
|
||||
{
|
||||
if (string.IsNullOrEmpty(objectIdentifier.id) == false)
|
||||
{
|
||||
if (objectIdentifier.id == testClass_cur.go_id)
|
||||
{
|
||||
testClass_cur.go = objectIdentifier.gameObject;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,54 +1,51 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI.Extensions;
|
||||
|
||||
public class AnimateEffects : MonoBehaviour
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
|
||||
public LetterSpacing letterSpacing;
|
||||
float letterSpacingMax = 10, letterSpacingMin = -10, letterSpacingModifier = 0.1f;
|
||||
public CurvedText curvedText;
|
||||
float curvedTextMax = 0.05f, curvedTextMin = -0.05f, curvedTextModifier = 0.001f;
|
||||
public Gradient2 gradient2;
|
||||
float gradient2Max = 1, gradient2Min = -1, gradient2Modifier = 0.01f;
|
||||
public CylinderText cylinderText;
|
||||
private Transform cylinderTextRT;
|
||||
Vector3 cylinderRotation = new Vector3(0, 1, 0);
|
||||
public SoftMaskScript SAUIM;
|
||||
float SAUIMMax = 1, SAUIMMin = 0, SAUIMModifier = 0.01f;
|
||||
// Use this for initialization
|
||||
void Start()
|
||||
public class AnimateEffects : MonoBehaviour
|
||||
{
|
||||
cylinderTextRT = cylinderText.GetComponent<Transform>();
|
||||
public LetterSpacing letterSpacing;
|
||||
float letterSpacingMax = 10, letterSpacingMin = -10, letterSpacingModifier = 0.1f;
|
||||
public CurvedText curvedText;
|
||||
float curvedTextMax = 0.05f, curvedTextMin = -0.05f, curvedTextModifier = 0.001f;
|
||||
public Gradient2 gradient2;
|
||||
float gradient2Max = 1, gradient2Min = -1, gradient2Modifier = 0.01f;
|
||||
public CylinderText cylinderText;
|
||||
private Transform cylinderTextRT;
|
||||
Vector3 cylinderRotation = new Vector3(0, 1, 0);
|
||||
public SoftMaskScript SAUIM;
|
||||
float SAUIMMax = 1, SAUIMMin = 0, SAUIMModifier = 0.01f;
|
||||
// Use this for initialization
|
||||
void Start()
|
||||
{
|
||||
cylinderTextRT = cylinderText.GetComponent<Transform>();
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
letterSpacing.spacing += letterSpacingModifier;
|
||||
if (letterSpacing.spacing > letterSpacingMax || letterSpacing.spacing < letterSpacingMin)
|
||||
{
|
||||
letterSpacingModifier = -letterSpacingModifier;
|
||||
}
|
||||
curvedText.CurveMultiplier += curvedTextModifier;
|
||||
if (curvedText.CurveMultiplier > curvedTextMax || curvedText.CurveMultiplier < curvedTextMin)
|
||||
{
|
||||
curvedTextModifier = -curvedTextModifier;
|
||||
}
|
||||
gradient2.Offset += gradient2Modifier;
|
||||
if (gradient2.Offset > gradient2Max || gradient2.Offset < gradient2Min)
|
||||
{
|
||||
gradient2Modifier = -gradient2Modifier;
|
||||
}
|
||||
|
||||
cylinderTextRT.Rotate(cylinderRotation);
|
||||
|
||||
SAUIM.CutOff += SAUIMModifier;
|
||||
if (SAUIM.CutOff > SAUIMMax || SAUIM.CutOff < SAUIMMin)
|
||||
{
|
||||
SAUIMModifier = -SAUIMModifier;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
letterSpacing.spacing += letterSpacingModifier;
|
||||
if (letterSpacing.spacing > letterSpacingMax || letterSpacing.spacing < letterSpacingMin)
|
||||
{
|
||||
letterSpacingModifier = -letterSpacingModifier;
|
||||
}
|
||||
curvedText.CurveMultiplier += curvedTextModifier;
|
||||
if (curvedText.CurveMultiplier > curvedTextMax || curvedText.CurveMultiplier < curvedTextMin)
|
||||
{
|
||||
curvedTextModifier = -curvedTextModifier;
|
||||
}
|
||||
gradient2.Offset += gradient2Modifier;
|
||||
if (gradient2.Offset > gradient2Max || gradient2.Offset < gradient2Min)
|
||||
{
|
||||
gradient2Modifier = -gradient2Modifier;
|
||||
}
|
||||
|
||||
cylinderTextRT.Rotate(cylinderRotation);
|
||||
|
||||
SAUIM.CutOff += SAUIMModifier;
|
||||
if (SAUIM.CutOff > SAUIMMax || SAUIM.CutOff < SAUIMMin)
|
||||
{
|
||||
SAUIMModifier = -SAUIMModifier;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/// Credit playemgames
|
||||
/// Sourced from - http://forum.unity3d.com/threads/sprite-icons-with-text-e-g-emoticons.265927/
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class testHref : MonoBehaviour
|
||||
{
|
||||
public TextPic textPic;
|
||||
|
||||
void Awake()
|
||||
{
|
||||
textPic = GetComponent<TextPic>();
|
||||
}
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
textPic.onHrefClick.AddListener(OnHrefClick);
|
||||
}
|
||||
|
||||
void OnDisable()
|
||||
{
|
||||
textPic.onHrefClick.RemoveListener(OnHrefClick);
|
||||
}
|
||||
|
||||
private void OnHrefClick(string hrefName)
|
||||
{
|
||||
Debug.Log("Click on the " + hrefName);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,79 +1,78 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI.Extensions;
|
||||
using System.Collections.Generic;
|
||||
|
||||
[RequireComponent(typeof(UILineRenderer))]
|
||||
public class LineRendererOrbit : MonoBehaviour {
|
||||
|
||||
|
||||
UILineRenderer lr;
|
||||
Circle circle;
|
||||
public GameObject OrbitGO;
|
||||
RectTransform orbitGOrt;
|
||||
float orbitTime;
|
||||
|
||||
[SerializeField]
|
||||
private float _xAxis = 3;
|
||||
|
||||
public float xAxis
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
[RequireComponent(typeof(UILineRenderer))]
|
||||
public class LineRendererOrbit : MonoBehaviour
|
||||
{
|
||||
get { return _xAxis; }
|
||||
set { _xAxis = value; GenerateOrbit(); }
|
||||
}
|
||||
UILineRenderer lr;
|
||||
Circle circle;
|
||||
public GameObject OrbitGO;
|
||||
RectTransform orbitGOrt;
|
||||
float orbitTime;
|
||||
|
||||
[SerializeField]
|
||||
private float _yAxis = 3;
|
||||
[SerializeField]
|
||||
private float _xAxis = 3;
|
||||
|
||||
public float yAxis
|
||||
{
|
||||
get { return _yAxis; }
|
||||
set { _yAxis = value; GenerateOrbit(); }
|
||||
}
|
||||
|
||||
[SerializeField]
|
||||
private int _steps = 10;
|
||||
|
||||
public int Steps
|
||||
{
|
||||
get { return _steps; }
|
||||
set { _steps = value; GenerateOrbit(); }
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Use this for initialization
|
||||
void Awake () {
|
||||
lr = GetComponent<UILineRenderer>();
|
||||
orbitGOrt = OrbitGO.GetComponent<RectTransform>();
|
||||
GenerateOrbit();
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update () {
|
||||
orbitTime = orbitTime > _steps ? orbitTime = 0 : orbitTime + Time.deltaTime;
|
||||
orbitGOrt.localPosition = circle.Evaluate(orbitTime);
|
||||
}
|
||||
|
||||
void GenerateOrbit()
|
||||
{
|
||||
circle = new Circle(xAxis: _xAxis,yAxis: _yAxis, steps: _steps);
|
||||
List<Vector2> Points = new List<Vector2>();
|
||||
for (int i = 0; i < _steps; i++)
|
||||
public float xAxis
|
||||
{
|
||||
Points.Add(circle.Evaluate(i));
|
||||
get { return _xAxis; }
|
||||
set { _xAxis = value; GenerateOrbit(); }
|
||||
}
|
||||
Points.Add(circle.Evaluate(0));
|
||||
lr.Points = Points.ToArray();
|
||||
}
|
||||
|
||||
private void OnValidate()
|
||||
{
|
||||
if (lr != null)
|
||||
[SerializeField]
|
||||
private float _yAxis = 3;
|
||||
|
||||
public float yAxis
|
||||
{
|
||||
get { return _yAxis; }
|
||||
set { _yAxis = value; GenerateOrbit(); }
|
||||
}
|
||||
|
||||
[SerializeField]
|
||||
private int _steps = 10;
|
||||
|
||||
public int Steps
|
||||
{
|
||||
get { return _steps; }
|
||||
set { _steps = value; GenerateOrbit(); }
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Use this for initialization
|
||||
void Awake()
|
||||
{
|
||||
lr = GetComponent<UILineRenderer>();
|
||||
orbitGOrt = OrbitGO.GetComponent<RectTransform>();
|
||||
GenerateOrbit();
|
||||
}
|
||||
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
orbitTime = orbitTime > _steps ? orbitTime = 0 : orbitTime + Time.deltaTime;
|
||||
orbitGOrt.localPosition = circle.Evaluate(orbitTime);
|
||||
}
|
||||
|
||||
void GenerateOrbit()
|
||||
{
|
||||
circle = new Circle(xAxis: _xAxis, yAxis: _yAxis, steps: _steps);
|
||||
List<Vector2> Points = new List<Vector2>();
|
||||
for (int i = 0; i < _steps; i++)
|
||||
{
|
||||
Points.Add(circle.Evaluate(i));
|
||||
}
|
||||
Points.Add(circle.Evaluate(0));
|
||||
lr.Points = Points.ToArray();
|
||||
}
|
||||
|
||||
private void OnValidate()
|
||||
{
|
||||
if (lr != null)
|
||||
{
|
||||
GenerateOrbit();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
|
@ -1,22 +1,25 @@
|
|||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class TestAddingPoints : MonoBehaviour {
|
||||
|
||||
public UnityEngine.UI.Extensions.UILineRenderer LineRenderer;
|
||||
public UnityEngine.UI.Text XValue;
|
||||
public UnityEngine.UI.Text YValue;
|
||||
|
||||
// Use this for initialization
|
||||
public void AddNewPoint () {
|
||||
var point = new Vector2() { x = float.Parse(XValue.text), y = float.Parse(YValue.text) };
|
||||
var pointlist = new List<Vector2>(LineRenderer.Points);
|
||||
pointlist.Add(point);
|
||||
LineRenderer.Points = pointlist.ToArray();
|
||||
}
|
||||
|
||||
public void ClearPoints()
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public class TestAddingPoints : MonoBehaviour
|
||||
{
|
||||
LineRenderer.Points = new Vector2[0];
|
||||
public UILineRenderer LineRenderer;
|
||||
public Text XValue;
|
||||
public Text YValue;
|
||||
|
||||
// Use this for initialization
|
||||
public void AddNewPoint()
|
||||
{
|
||||
var point = new Vector2() { x = float.Parse(XValue.text), y = float.Parse(YValue.text) };
|
||||
var pointlist = new List<Vector2>(LineRenderer.Points);
|
||||
pointlist.Add(point);
|
||||
LineRenderer.Points = pointlist.ToArray();
|
||||
}
|
||||
|
||||
public void ClearPoints()
|
||||
{
|
||||
LineRenderer.Points = new Vector2[0];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -140,8 +140,8 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: -220, y: 1.5}
|
||||
m_SizeDelta: {x: 263, y: 52}
|
||||
m_AnchoredPosition: {x: -116, y: -23.5}
|
||||
m_SizeDelta: {x: 361, y: 47}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &23818492
|
||||
MonoBehaviour:
|
||||
|
@ -284,9 +284,9 @@ RectTransform:
|
|||
m_Father: {fileID: 1754109030}
|
||||
m_RootOrder: 2
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: -339.5, y: -40}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 58, y: 186}
|
||||
m_SizeDelta: {x: 100, y: 102}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &125539413
|
||||
|
@ -735,9 +735,9 @@ RectTransform:
|
|||
m_Father: {fileID: 1754109030}
|
||||
m_RootOrder: 3
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 243, y: -109}
|
||||
m_AnchorMin: {x: 1, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 0}
|
||||
m_AnchoredPosition: {x: -165, y: 112}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &651515359
|
||||
|
@ -777,12 +777,7 @@ MonoBehaviour:
|
|||
m_Sprite: {fileID: 0}
|
||||
m_improveResolution: 0
|
||||
m_Resolution: 0
|
||||
m_UVRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
m_useNativeSize: 0
|
||||
m_points: []
|
||||
lineThickness: 2
|
||||
relativeSize: 0
|
||||
|
@ -929,6 +924,7 @@ MonoBehaviour:
|
|||
m_Sprite: {fileID: 0}
|
||||
m_improveResolution: 0
|
||||
m_Resolution: 0
|
||||
m_useNativeSize: 0
|
||||
m_fillPercent: 100
|
||||
FixedToSegments: 0
|
||||
m_fill: 1
|
||||
|
@ -974,7 +970,7 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 314, y: -148}
|
||||
m_AnchoredPosition: {x: 332, y: -121}
|
||||
m_SizeDelta: {x: 160, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &772182605
|
||||
|
@ -1083,7 +1079,7 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 35.5, y: 244}
|
||||
m_AnchoredPosition: {x: 184.5, y: 197}
|
||||
m_SizeDelta: {x: 311, y: 30}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &977566256
|
||||
|
@ -1157,7 +1153,7 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: -120, y: 40}
|
||||
m_AnchoredPosition: {x: 29, y: 25.5}
|
||||
m_SizeDelta: {x: 311, y: 189}
|
||||
m_Pivot: {x: 0, y: 0}
|
||||
--- !u!114 &1025621201
|
||||
|
@ -1182,12 +1178,7 @@ MonoBehaviour:
|
|||
m_Sprite: {fileID: 0}
|
||||
m_improveResolution: 0
|
||||
m_Resolution: 0
|
||||
m_UVRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
m_useNativeSize: 0
|
||||
m_points:
|
||||
- {x: 0, y: 0}
|
||||
- {x: 1, y: 0}
|
||||
|
@ -1239,7 +1230,7 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 309, y: -193}
|
||||
m_AnchoredPosition: {x: 320, y: -169}
|
||||
m_SizeDelta: {x: 358, y: 44}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1032145591
|
||||
|
@ -1984,7 +1975,7 @@ RectTransform:
|
|||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: -178, y: 114.5}
|
||||
m_AnchoredPosition: {x: -124, y: 81}
|
||||
m_SizeDelta: {x: 154, y: 162}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1545772328
|
||||
|
@ -2253,9 +2244,9 @@ RectTransform:
|
|||
m_Father: {fileID: 1754109030}
|
||||
m_RootOrder: 0
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_AnchorMin: {x: 1, y: 1}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: -358, y: -224}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1625078207
|
||||
|
@ -2843,17 +2834,12 @@ MonoBehaviour:
|
|||
m_Sprite: {fileID: 0}
|
||||
m_improveResolution: 0
|
||||
m_Resolution: 0
|
||||
m_UVRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
m_useNativeSize: 0
|
||||
m_points:
|
||||
- {x: -339, y: -39.5}
|
||||
- {x: -266, y: -180.5}
|
||||
- {x: -127, y: -67.5}
|
||||
- {x: -25, y: -187.5}
|
||||
- {x: -300, y: -37.5}
|
||||
- {x: -227, y: -178.5}
|
||||
- {x: -88, y: -65.5}
|
||||
- {x: 32, y: -158.5}
|
||||
lineThickness: 7.41
|
||||
relativeSize: 0
|
||||
lineList: 0
|
||||
|
|
|
@ -5,226 +5,222 @@
|
|||
/// Please donate: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RJ8D9FRFQF9VS
|
||||
/// </summary>
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
using UnityEngine.UI.Extensions;
|
||||
|
||||
|
||||
|
||||
public class ScrollingCalendar : MonoBehaviour
|
||||
|
||||
namespace UnityEngine.UI.Extensions.Examples
|
||||
{
|
||||
public RectTransform monthsScrollingPanel;
|
||||
public RectTransform yearsScrollingPanel;
|
||||
public RectTransform daysScrollingPanel;
|
||||
|
||||
public GameObject yearsButtonPrefab;
|
||||
public GameObject monthsButtonPrefab;
|
||||
public GameObject daysButtonPrefab;
|
||||
|
||||
private GameObject[] monthsButtons;
|
||||
private GameObject[] yearsButtons;
|
||||
private GameObject[] daysButtons;
|
||||
|
||||
public RectTransform monthCenter;
|
||||
public RectTransform yearsCenter;
|
||||
public RectTransform daysCenter;
|
||||
|
||||
UIVerticalScroller yearsVerticalScroller;
|
||||
UIVerticalScroller monthsVerticalScroller;
|
||||
UIVerticalScroller daysVerticalScroller;
|
||||
|
||||
public InputField inputFieldDays;
|
||||
public InputField inputFieldMonths;
|
||||
public InputField inputFieldYears;
|
||||
|
||||
public Text dateText;
|
||||
|
||||
private int daysSet;
|
||||
private int monthsSet;
|
||||
private int yearsSet;
|
||||
|
||||
private void InitializeYears()
|
||||
{
|
||||
int currentYear = int.Parse(System.DateTime.Now.ToString("yyyy"));
|
||||
|
||||
int[] arrayYears = new int[currentYear+1 - 1900];
|
||||
|
||||
yearsButtons = new GameObject[arrayYears.Length];
|
||||
|
||||
for (int i = 0; i < arrayYears.Length; i++)
|
||||
{
|
||||
arrayYears[i] = 1900 + i;
|
||||
|
||||
GameObject clone = (GameObject)Instantiate(yearsButtonPrefab, new Vector3(0, i*80, 0), Quaternion.Euler(new Vector3(0, 0, 0))) as GameObject;
|
||||
clone.transform.SetParent(yearsScrollingPanel,false);
|
||||
clone.transform.localScale = new Vector3(1, 1, 1);
|
||||
clone.GetComponentInChildren<Text>().text = "" + arrayYears[i];
|
||||
clone.name = "Year_" + arrayYears[i];
|
||||
clone.AddComponent<CanvasGroup>();
|
||||
yearsButtons[i] = clone;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//Initialize Months
|
||||
private void InitializeMonths()
|
||||
{
|
||||
int[] months = new int[12];
|
||||
|
||||
monthsButtons = new GameObject[months.Length];
|
||||
for (int i = 0; i < months.Length; i++)
|
||||
{
|
||||
string month = "";
|
||||
months[i] = i;
|
||||
|
||||
GameObject clone = (GameObject)Instantiate(monthsButtonPrefab, new Vector3(0, i * 80, 0), Quaternion.Euler(new Vector3(0, 0, 0))) as GameObject;
|
||||
clone.transform.SetParent(monthsScrollingPanel,false);
|
||||
clone.transform.localScale = new Vector3(1, 1, 1);
|
||||
|
||||
switch(i)
|
||||
{
|
||||
case 0:
|
||||
month = "Jan";
|
||||
break;
|
||||
case 1:
|
||||
month = "Feb";
|
||||
break;
|
||||
case 2:
|
||||
month = "Mar";
|
||||
break;
|
||||
case 3:
|
||||
month = "Apr";
|
||||
break;
|
||||
case 4:
|
||||
month = "May";
|
||||
break;
|
||||
case 5:
|
||||
month = "Jun";
|
||||
break;
|
||||
case 6:
|
||||
month = "Jul";
|
||||
break;
|
||||
case 7:
|
||||
month = "Aug";
|
||||
break;
|
||||
case 8:
|
||||
month = "Sep";
|
||||
break;
|
||||
case 9:
|
||||
month = "Oct";
|
||||
break;
|
||||
case 10:
|
||||
month = "Nov";
|
||||
break;
|
||||
case 11:
|
||||
month = "Dec";
|
||||
break;
|
||||
}
|
||||
|
||||
clone.GetComponentInChildren<Text>().text = month;
|
||||
clone.name = "Month_" + months[i];
|
||||
clone.AddComponent<CanvasGroup>();
|
||||
monthsButtons[i] = clone;
|
||||
}
|
||||
}
|
||||
|
||||
private void InitializeDays()
|
||||
{
|
||||
int[] days = new int[31];
|
||||
daysButtons = new GameObject[days.Length];
|
||||
|
||||
for (var i = 0; i < days.Length; i++)
|
||||
{
|
||||
days[i] = i+1;
|
||||
GameObject clone = (GameObject)Instantiate(daysButtonPrefab, new Vector3(0, i * 80, 0), Quaternion.Euler(new Vector3(0, 0, 0))) as GameObject;
|
||||
clone.transform.SetParent(daysScrollingPanel,false);
|
||||
clone.transform.localScale = new Vector3(1, 1, 1);
|
||||
clone.GetComponentInChildren<Text>().text = "" + days[i];
|
||||
clone.name = "Day_" + days[i];
|
||||
clone.AddComponent<CanvasGroup>();
|
||||
daysButtons[i] = clone;
|
||||
}
|
||||
}
|
||||
|
||||
// Use this for initialization
|
||||
public void Awake()
|
||||
public class ScrollingCalendar : MonoBehaviour
|
||||
{
|
||||
InitializeYears();
|
||||
InitializeMonths();
|
||||
InitializeDays();
|
||||
public RectTransform monthsScrollingPanel;
|
||||
public RectTransform yearsScrollingPanel;
|
||||
public RectTransform daysScrollingPanel;
|
||||
|
||||
//Yes Unity complains about this but it doesn't matter in this case.
|
||||
monthsVerticalScroller = new UIVerticalScroller(monthsScrollingPanel, monthsButtons, monthCenter);
|
||||
yearsVerticalScroller = new UIVerticalScroller (yearsScrollingPanel, yearsButtons, yearsCenter);
|
||||
daysVerticalScroller = new UIVerticalScroller (daysScrollingPanel, daysButtons, daysCenter);
|
||||
public GameObject yearsButtonPrefab;
|
||||
public GameObject monthsButtonPrefab;
|
||||
public GameObject daysButtonPrefab;
|
||||
|
||||
monthsVerticalScroller.Start();
|
||||
yearsVerticalScroller.Start();
|
||||
daysVerticalScroller.Start();
|
||||
private GameObject[] monthsButtons;
|
||||
private GameObject[] yearsButtons;
|
||||
private GameObject[] daysButtons;
|
||||
|
||||
public RectTransform monthCenter;
|
||||
public RectTransform yearsCenter;
|
||||
public RectTransform daysCenter;
|
||||
|
||||
UIVerticalScroller yearsVerticalScroller;
|
||||
UIVerticalScroller monthsVerticalScroller;
|
||||
UIVerticalScroller daysVerticalScroller;
|
||||
|
||||
public InputField inputFieldDays;
|
||||
public InputField inputFieldMonths;
|
||||
public InputField inputFieldYears;
|
||||
|
||||
public Text dateText;
|
||||
|
||||
private int daysSet;
|
||||
private int monthsSet;
|
||||
private int yearsSet;
|
||||
|
||||
private void InitializeYears()
|
||||
{
|
||||
int currentYear = int.Parse(System.DateTime.Now.ToString("yyyy"));
|
||||
|
||||
int[] arrayYears = new int[currentYear + 1 - 1900];
|
||||
|
||||
yearsButtons = new GameObject[arrayYears.Length];
|
||||
|
||||
for (int i = 0; i < arrayYears.Length; i++)
|
||||
{
|
||||
arrayYears[i] = 1900 + i;
|
||||
|
||||
GameObject clone = (GameObject)Instantiate(yearsButtonPrefab, new Vector3(0, i * 80, 0), Quaternion.Euler(new Vector3(0, 0, 0))) as GameObject;
|
||||
clone.transform.SetParent(yearsScrollingPanel, false);
|
||||
clone.transform.localScale = new Vector3(1, 1, 1);
|
||||
clone.GetComponentInChildren<Text>().text = "" + arrayYears[i];
|
||||
clone.name = "Year_" + arrayYears[i];
|
||||
clone.AddComponent<CanvasGroup>();
|
||||
yearsButtons[i] = clone;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//Initialize Months
|
||||
private void InitializeMonths()
|
||||
{
|
||||
int[] months = new int[12];
|
||||
|
||||
monthsButtons = new GameObject[months.Length];
|
||||
for (int i = 0; i < months.Length; i++)
|
||||
{
|
||||
string month = "";
|
||||
months[i] = i;
|
||||
|
||||
GameObject clone = (GameObject)Instantiate(monthsButtonPrefab, new Vector3(0, i * 80, 0), Quaternion.Euler(new Vector3(0, 0, 0))) as GameObject;
|
||||
clone.transform.SetParent(monthsScrollingPanel, false);
|
||||
clone.transform.localScale = new Vector3(1, 1, 1);
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
month = "Jan";
|
||||
break;
|
||||
case 1:
|
||||
month = "Feb";
|
||||
break;
|
||||
case 2:
|
||||
month = "Mar";
|
||||
break;
|
||||
case 3:
|
||||
month = "Apr";
|
||||
break;
|
||||
case 4:
|
||||
month = "May";
|
||||
break;
|
||||
case 5:
|
||||
month = "Jun";
|
||||
break;
|
||||
case 6:
|
||||
month = "Jul";
|
||||
break;
|
||||
case 7:
|
||||
month = "Aug";
|
||||
break;
|
||||
case 8:
|
||||
month = "Sep";
|
||||
break;
|
||||
case 9:
|
||||
month = "Oct";
|
||||
break;
|
||||
case 10:
|
||||
month = "Nov";
|
||||
break;
|
||||
case 11:
|
||||
month = "Dec";
|
||||
break;
|
||||
}
|
||||
|
||||
clone.GetComponentInChildren<Text>().text = month;
|
||||
clone.name = "Month_" + months[i];
|
||||
clone.AddComponent<CanvasGroup>();
|
||||
monthsButtons[i] = clone;
|
||||
}
|
||||
}
|
||||
|
||||
private void InitializeDays()
|
||||
{
|
||||
int[] days = new int[31];
|
||||
daysButtons = new GameObject[days.Length];
|
||||
|
||||
for (var i = 0; i < days.Length; i++)
|
||||
{
|
||||
days[i] = i + 1;
|
||||
GameObject clone = (GameObject)Instantiate(daysButtonPrefab, new Vector3(0, i * 80, 0), Quaternion.Euler(new Vector3(0, 0, 0))) as GameObject;
|
||||
clone.transform.SetParent(daysScrollingPanel, false);
|
||||
clone.transform.localScale = new Vector3(1, 1, 1);
|
||||
clone.GetComponentInChildren<Text>().text = "" + days[i];
|
||||
clone.name = "Day_" + days[i];
|
||||
clone.AddComponent<CanvasGroup>();
|
||||
daysButtons[i] = clone;
|
||||
}
|
||||
}
|
||||
|
||||
// Use this for initialization
|
||||
public void Awake()
|
||||
{
|
||||
InitializeYears();
|
||||
InitializeMonths();
|
||||
InitializeDays();
|
||||
|
||||
//Yes Unity complains about this but it doesn't matter in this case.
|
||||
monthsVerticalScroller = new UIVerticalScroller(monthsScrollingPanel, monthsButtons, monthCenter);
|
||||
yearsVerticalScroller = new UIVerticalScroller(yearsScrollingPanel, yearsButtons, yearsCenter);
|
||||
daysVerticalScroller = new UIVerticalScroller(daysScrollingPanel, daysButtons, daysCenter);
|
||||
|
||||
monthsVerticalScroller.Start();
|
||||
yearsVerticalScroller.Start();
|
||||
daysVerticalScroller.Start();
|
||||
}
|
||||
|
||||
public void SetDate()
|
||||
{
|
||||
daysSet = int.Parse(inputFieldDays.text) - 1;
|
||||
monthsSet = int.Parse(inputFieldMonths.text) - 1;
|
||||
yearsSet = int.Parse(inputFieldYears.text) - 1900;
|
||||
|
||||
daysVerticalScroller.SnapToElement(daysSet);
|
||||
monthsVerticalScroller.SnapToElement(monthsSet);
|
||||
yearsVerticalScroller.SnapToElement(yearsSet);
|
||||
}
|
||||
|
||||
void Update()
|
||||
{
|
||||
monthsVerticalScroller.Update();
|
||||
yearsVerticalScroller.Update();
|
||||
daysVerticalScroller.Update();
|
||||
|
||||
string dayString = daysVerticalScroller.GetResults();
|
||||
string monthString = monthsVerticalScroller.GetResults();
|
||||
string yearsString = yearsVerticalScroller.GetResults();
|
||||
|
||||
if (dayString.EndsWith("1") && dayString != "11")
|
||||
dayString = dayString + "st";
|
||||
else if (dayString.EndsWith("2") && dayString != "12")
|
||||
dayString = dayString + "nd";
|
||||
else if (dayString.EndsWith("3") && dayString != "13")
|
||||
dayString = dayString + "rd";
|
||||
else
|
||||
dayString = dayString + "th";
|
||||
|
||||
dateText.text = monthString + " " + dayString + " " + yearsString;
|
||||
}
|
||||
|
||||
public void DaysScrollUp()
|
||||
{
|
||||
daysVerticalScroller.ScrollUp();
|
||||
}
|
||||
|
||||
public void DaysScrollDown()
|
||||
{
|
||||
daysVerticalScroller.ScrollDown();
|
||||
}
|
||||
|
||||
public void MonthsScrollUp()
|
||||
{
|
||||
monthsVerticalScroller.ScrollUp();
|
||||
}
|
||||
|
||||
public void MonthsScrollDown()
|
||||
{
|
||||
monthsVerticalScroller.ScrollDown();
|
||||
}
|
||||
|
||||
public void YearsScrollUp()
|
||||
{
|
||||
yearsVerticalScroller.ScrollUp();
|
||||
}
|
||||
|
||||
public void YearsScrollDown()
|
||||
{
|
||||
yearsVerticalScroller.ScrollDown();
|
||||
}
|
||||
}
|
||||
|
||||
public void SetDate()
|
||||
{
|
||||
daysSet = int.Parse(inputFieldDays.text) - 1;
|
||||
monthsSet = int.Parse(inputFieldMonths.text) - 1;
|
||||
yearsSet = int.Parse(inputFieldYears.text) - 1900;
|
||||
|
||||
daysVerticalScroller.SnapToElement(daysSet);
|
||||
monthsVerticalScroller.SnapToElement(monthsSet);
|
||||
yearsVerticalScroller.SnapToElement(yearsSet);
|
||||
}
|
||||
|
||||
void Update ()
|
||||
{
|
||||
monthsVerticalScroller.Update();
|
||||
yearsVerticalScroller.Update();
|
||||
daysVerticalScroller.Update();
|
||||
|
||||
string dayString = daysVerticalScroller.GetResults();
|
||||
string monthString = monthsVerticalScroller.GetResults();
|
||||
string yearsString = yearsVerticalScroller.GetResults();
|
||||
|
||||
if (dayString.EndsWith("1") && dayString != "11")
|
||||
dayString = dayString + "st";
|
||||
else if (dayString.EndsWith("2") && dayString != "12")
|
||||
dayString = dayString + "nd";
|
||||
else if (dayString.EndsWith("3") && dayString != "13")
|
||||
dayString = dayString + "rd";
|
||||
else
|
||||
dayString = dayString + "th";
|
||||
|
||||
dateText.text = monthString + " " + dayString + " " + yearsString;
|
||||
}
|
||||
|
||||
public void DaysScrollUp()
|
||||
{
|
||||
daysVerticalScroller.ScrollUp();
|
||||
}
|
||||
|
||||
public void DaysScrollDown()
|
||||
{
|
||||
daysVerticalScroller.ScrollDown();
|
||||
}
|
||||
|
||||
public void MonthsScrollUp()
|
||||
{
|
||||
monthsVerticalScroller.ScrollUp();
|
||||
}
|
||||
|
||||
public void MonthsScrollDown()
|
||||
{
|
||||
monthsVerticalScroller.ScrollDown();
|
||||
}
|
||||
|
||||
public void YearsScrollUp()
|
||||
{
|
||||
yearsVerticalScroller.ScrollUp();
|
||||
}
|
||||
|
||||
public void YearsScrollDown()
|
||||
{
|
||||
yearsVerticalScroller.ScrollDown();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
/// Credit playemgames
|
||||
/// Sourced from - http://forum.unity3d.com/threads/sprite-icons-with-text-e-g-emoticons.265927/
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI.Extensions;
|
||||
|
||||
public class testHref : MonoBehaviour
|
||||
{
|
||||
public TextPic textPic;
|
||||
|
||||
void Awake()
|
||||
{
|
||||
textPic = GetComponent<TextPic>();
|
||||
}
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
textPic.onHrefClick.AddListener(OnHrefClick);
|
||||
}
|
||||
|
||||
void OnDisable()
|
||||
{
|
||||
textPic.onHrefClick.RemoveListener(OnHrefClick);
|
||||
}
|
||||
|
||||
private void OnHrefClick(string hrefName)
|
||||
{
|
||||
Debug.Log("Click on the " + hrefName);
|
||||
}
|
||||
}
|
|
@ -130,7 +130,7 @@ Scroll Snap (alt implementation)|Reorderable List|UI Vertical Scroller|Curved La
|
|||
------|------|------|------|
|
||||
Best Fit Outline|Curved Text|Gradient|Gradient2|Letter Spacing
|
||||
NicerOutline|RaycastMask|UIFlippable|UIImageCrop|SoftAlphaMask
|
||||
CylinderText|UIParticleSystem|||
|
||||
CylinderText|UIParticleSystem|CurlyUI||
|
||||
||||
|
||||
|
||||
[VR Components](https://bitbucket.org/UnityUIExtensions/unity-ui-extensions/wiki/Controls#markdown-header-vr_components)|||||
|
||||
|
|
|
@ -0,0 +1,252 @@
|
|||
/// Credit mgear, SimonDarksideJ
|
||||
/// Sourced from - https://forum.unity3d.com/threads/radial-slider-circle-slider.326392/#post-3143582
|
||||
/// Updated to include lerping features and programatic access to angle/value
|
||||
|
||||
using System;
|
||||
using System.Collections;
|
||||
using UnityEngine.Events;
|
||||
using UnityEngine.EventSystems;
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[AddComponentMenu("UI/Extensions/Radial Slider")]
|
||||
[RequireComponent(typeof(Image))]
|
||||
public class RadialSlider : MonoBehaviour, IPointerEnterHandler, IPointerDownHandler, IPointerUpHandler
|
||||
{
|
||||
private bool isPointerDown, isPointerReleased, lerpInProgress;
|
||||
private Vector2 m_localPos;
|
||||
private float m_targetAngle, m_lerpTargetAngle, m_startAngle, m_currentLerpTime, m_lerpTime;
|
||||
private Camera m_eventCamera;
|
||||
private Image m_image;
|
||||
|
||||
[SerializeField]
|
||||
[Tooltip("Radial Gradient Start Color")]
|
||||
private Color m_startColor = Color.green;
|
||||
[SerializeField]
|
||||
[Tooltip("Radial Gradient End Color")]
|
||||
private Color m_endColor = Color.red;
|
||||
[Tooltip("Move slider absolute or use Lerping?\nDragging only supported with absolute")]
|
||||
[SerializeField]
|
||||
private bool m_lerpToTarget;
|
||||
[Tooltip("Curve to apply to the Lerp\nMust be set to enable Lerp")]
|
||||
[SerializeField]
|
||||
private AnimationCurve m_lerpCurve;
|
||||
[Tooltip("Event fired when value of control changes, outputs an INT angle value")]
|
||||
[SerializeField]
|
||||
private RadialSliderValueChangedEvent _onValueChanged = new RadialSliderValueChangedEvent();
|
||||
[Tooltip("Event fired when value of control changes, outputs a TEXT angle value")]
|
||||
[SerializeField]
|
||||
private RadialSliderTextValueChangedEvent _onTextValueChanged = new RadialSliderTextValueChangedEvent();
|
||||
|
||||
public float Angle
|
||||
{
|
||||
get { return RadialImage.fillAmount * 360f; }
|
||||
set
|
||||
{
|
||||
if (LerpToTarget)
|
||||
{
|
||||
StartLerp(value / 360f);
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateRadialImage(value / 360f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public float Value
|
||||
{
|
||||
get { return RadialImage.fillAmount; }
|
||||
set
|
||||
{
|
||||
if (LerpToTarget)
|
||||
{
|
||||
StartLerp(value);
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateRadialImage(value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public Color EndColor
|
||||
{
|
||||
get { return m_endColor; }
|
||||
set { m_endColor = value; }
|
||||
}
|
||||
|
||||
public Color StartColor
|
||||
{
|
||||
get { return m_startColor; }
|
||||
set { m_startColor = value; }
|
||||
}
|
||||
|
||||
public bool LerpToTarget
|
||||
{
|
||||
get { return m_lerpToTarget; }
|
||||
set { m_lerpToTarget = value; }
|
||||
}
|
||||
|
||||
public AnimationCurve LerpCurve
|
||||
{
|
||||
get { return m_lerpCurve; }
|
||||
set { m_lerpCurve = value; m_lerpTime = LerpCurve[LerpCurve.length - 1].time; }
|
||||
}
|
||||
|
||||
public bool LerpInProgress
|
||||
{
|
||||
get { return lerpInProgress; }
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class RadialSliderValueChangedEvent : UnityEvent<int> { }
|
||||
[Serializable]
|
||||
public class RadialSliderTextValueChangedEvent : UnityEvent<string> { }
|
||||
|
||||
public Image RadialImage
|
||||
{
|
||||
get
|
||||
{
|
||||
if (m_image == null)
|
||||
{
|
||||
m_image = GetComponent<Image>();
|
||||
m_image.type = Image.Type.Filled;
|
||||
m_image.fillMethod = Image.FillMethod.Radial360;
|
||||
m_image.fillOrigin = 3;
|
||||
m_image.fillAmount = 0;
|
||||
}
|
||||
return m_image;
|
||||
}
|
||||
}
|
||||
|
||||
public RadialSliderValueChangedEvent onValueChanged
|
||||
{
|
||||
get { return _onValueChanged; }
|
||||
set { _onValueChanged = value; }
|
||||
}
|
||||
public RadialSliderTextValueChangedEvent onTextValueChanged
|
||||
{
|
||||
get { return _onTextValueChanged; }
|
||||
set { _onTextValueChanged = value; }
|
||||
}
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
if (LerpCurve != null && LerpCurve.length > 0)
|
||||
{
|
||||
m_lerpTime = LerpCurve[LerpCurve.length - 1].time;
|
||||
}
|
||||
else
|
||||
{
|
||||
m_lerpTime = 1;
|
||||
}
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (isPointerDown)
|
||||
{
|
||||
m_targetAngle = GetAngleFromMousePoint();
|
||||
if (!lerpInProgress)
|
||||
{
|
||||
if (!LerpToTarget)
|
||||
{
|
||||
UpdateRadialImage(m_targetAngle);
|
||||
|
||||
NotifyValueChanged();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (isPointerReleased) StartLerp(m_targetAngle);
|
||||
isPointerReleased = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (lerpInProgress && Value != m_lerpTargetAngle)
|
||||
{
|
||||
m_currentLerpTime += Time.deltaTime;
|
||||
float perc = m_currentLerpTime / m_lerpTime;
|
||||
if (LerpCurve != null && LerpCurve.length > 0)
|
||||
{
|
||||
UpdateRadialImage(Mathf.Lerp(m_startAngle, m_lerpTargetAngle, LerpCurve.Evaluate(perc)));
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateRadialImage(Mathf.Lerp(m_startAngle, m_lerpTargetAngle, perc));
|
||||
}
|
||||
}
|
||||
if (m_currentLerpTime >= m_lerpTime || Value == m_lerpTargetAngle)
|
||||
{
|
||||
lerpInProgress = false;
|
||||
UpdateRadialImage(m_lerpTargetAngle);
|
||||
NotifyValueChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private void StartLerp(float targetAngle)
|
||||
{
|
||||
if (!lerpInProgress)
|
||||
{
|
||||
m_startAngle = Value;
|
||||
m_lerpTargetAngle = targetAngle;
|
||||
m_currentLerpTime = 0f;
|
||||
lerpInProgress = true;
|
||||
}
|
||||
}
|
||||
|
||||
private float GetAngleFromMousePoint()
|
||||
{
|
||||
RectTransformUtility.ScreenPointToLocalPointInRectangle(transform as RectTransform, Input.mousePosition, m_eventCamera, out m_localPos);
|
||||
|
||||
// radial pos of the mouse position.
|
||||
return (Mathf.Atan2(-m_localPos.y, m_localPos.x) * 180f / Mathf.PI + 180f) / 360f;
|
||||
}
|
||||
|
||||
private void UpdateRadialImage(float targetAngle)
|
||||
{
|
||||
RadialImage.fillAmount = targetAngle;
|
||||
|
||||
RadialImage.color = Color.Lerp(m_startColor, m_endColor, targetAngle);
|
||||
}
|
||||
|
||||
private void NotifyValueChanged()
|
||||
{
|
||||
_onValueChanged.Invoke((int)(m_targetAngle * 360f));
|
||||
_onTextValueChanged.Invoke(((int)(m_targetAngle * 360f)).ToString());
|
||||
}
|
||||
|
||||
//#if UNITY_EDITOR
|
||||
|
||||
// private void OnValidate()
|
||||
// {
|
||||
// if (LerpToTarget && LerpCurve.length < 2)
|
||||
// {
|
||||
// LerpToTarget = false;
|
||||
// Debug.LogError("You need to define a Lerp Curve to enable 'Lerp To Target'");
|
||||
// }
|
||||
// }
|
||||
//#endif
|
||||
|
||||
#region Interfaces
|
||||
// Called when the pointer enters our GUI component.
|
||||
// Start tracking the mouse
|
||||
public void OnPointerEnter(PointerEventData eventData)
|
||||
{
|
||||
m_eventCamera = eventData.enterEventCamera;
|
||||
}
|
||||
|
||||
public void OnPointerDown(PointerEventData eventData)
|
||||
{
|
||||
m_eventCamera = eventData.enterEventCamera;
|
||||
isPointerDown = true;
|
||||
}
|
||||
|
||||
public void OnPointerUp(PointerEventData eventData)
|
||||
{
|
||||
isPointerDown = false;
|
||||
isPointerReleased = true;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 803cebee00d5c504e930205383017dc1
|
||||
timeCreated: 1432062988
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -3,12 +3,10 @@
|
|||
/// Updated Credit BenZed
|
||||
/// Sourced from - http://forum.unity3d.com/threads/color-picker.267043/
|
||||
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
public class ExampleSelectable : MonoBehaviour, IBoxSelectable
|
||||
{
|
||||
|
||||
#region Implemented members of IBoxSelectable
|
||||
bool _selected = false;
|
||||
public bool selected
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e8f8c7784bd14f146a01bb324949f7cb
|
||||
folderAsset: yes
|
||||
timeCreated: 1501406849
|
||||
licenseType: Free
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,116 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
/// <summary>
|
||||
/// Assume to be a cubic bezier curve at the moment.
|
||||
/// </summary>
|
||||
public class CUIBezierCurve : MonoBehaviour
|
||||
{
|
||||
public readonly static int CubicBezierCurvePtNum = 4;
|
||||
|
||||
#region Descriptions
|
||||
|
||||
[SerializeField]
|
||||
protected Vector3[] controlPoints;
|
||||
|
||||
public Vector3[] ControlPoints
|
||||
{
|
||||
get
|
||||
{
|
||||
return controlPoints;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
/// <summary>
|
||||
/// Reserve for editor only
|
||||
/// </summary>
|
||||
public Vector3[] EDITOR_ControlPoints
|
||||
{
|
||||
set
|
||||
{
|
||||
controlPoints = value;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#endregion
|
||||
|
||||
#region Events
|
||||
|
||||
#if UNITY_EDITOR
|
||||
protected void OnValidate()
|
||||
{
|
||||
Refresh();
|
||||
}
|
||||
#endif
|
||||
|
||||
public void Refresh()
|
||||
{
|
||||
|
||||
if (OnRefresh != null)
|
||||
OnRefresh();
|
||||
}
|
||||
|
||||
#endregion
|
||||
#region Services
|
||||
|
||||
/// <summary>
|
||||
/// call this to get a sample
|
||||
/// </summary>
|
||||
/// <param name="_time"></param>
|
||||
/// <returns>sample returned by said time</returns>
|
||||
public Vector3 GetPoint(float _time)
|
||||
{
|
||||
float oneMinusTime = 1 - _time;
|
||||
|
||||
return oneMinusTime * oneMinusTime * oneMinusTime * controlPoints[0] +
|
||||
3 * oneMinusTime * oneMinusTime * _time * controlPoints[1] +
|
||||
3 * oneMinusTime * _time * _time * controlPoints[2] +
|
||||
_time * _time * _time * controlPoints[3];
|
||||
}
|
||||
|
||||
public Vector3 GetTangent(float _time)
|
||||
{
|
||||
float oneMinusTime = 1 - _time;
|
||||
|
||||
return 3 * oneMinusTime * oneMinusTime * (controlPoints[1] - controlPoints[0]) +
|
||||
6 * oneMinusTime * _time * (controlPoints[2] - controlPoints[1]) +
|
||||
3 * _time * _time * (controlPoints[3] - controlPoints[2]);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Configurations
|
||||
|
||||
public void ReportSet()
|
||||
{
|
||||
if (controlPoints == null)
|
||||
{
|
||||
controlPoints = new Vector3[CUIBezierCurve.CubicBezierCurvePtNum];
|
||||
controlPoints[0] = new Vector3(0, 0, 0);
|
||||
controlPoints[1] = new Vector3(0, 1, 0);
|
||||
controlPoints[2] = new Vector3(1, 1, 0);
|
||||
controlPoints[3] = new Vector3(1, 0, 0);
|
||||
}
|
||||
|
||||
bool isPointsReady = true;
|
||||
|
||||
isPointsReady = isPointsReady & controlPoints.Length == CUIBezierCurve.CubicBezierCurvePtNum;
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region Services
|
||||
|
||||
public System.Action OnRefresh;
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 983a3e151cd916d4faf111dc86266574
|
||||
timeCreated: 1485671878
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,617 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
#if UNITY_EDITOR
|
||||
using UnityEditor;
|
||||
#endif
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[RequireComponent(typeof(RectTransform))]
|
||||
[RequireComponent(typeof(Graphic))]
|
||||
[DisallowMultipleComponent]
|
||||
[AddComponentMenu("UI/Effects/Extensions/Curly UI Graphic")]
|
||||
public class CUIGraphic : BaseMeshEffect
|
||||
{
|
||||
// Describing the properties that are shared by all objects of this class
|
||||
#region Nature
|
||||
|
||||
readonly public static int bottomCurveIdx = 0;
|
||||
readonly public static int topCurveIdx = 1;
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// Describing the properties of this object.
|
||||
/// </summary>
|
||||
#region Description
|
||||
|
||||
[Tooltip("Set true to make the curve/morph to work. Set false to quickly see the original UI.")]
|
||||
[SerializeField]
|
||||
protected bool isCurved = true;
|
||||
public bool IsCurved
|
||||
{
|
||||
get
|
||||
{
|
||||
return isCurved;
|
||||
}
|
||||
}
|
||||
|
||||
[Tooltip("Set true to dynamically change the curve according to the dynamic change of the UI layout")]
|
||||
[SerializeField]
|
||||
protected bool isLockWithRatio = true;
|
||||
public bool IsLockWithRatio
|
||||
{
|
||||
get
|
||||
{
|
||||
return isLockWithRatio;
|
||||
}
|
||||
}
|
||||
|
||||
[Tooltip("Pick a higher resolution to improve the quality of the curved graphic.")]
|
||||
[SerializeField]
|
||||
[Range(0.01f, 30.0f)]
|
||||
protected float resolution = 5.0f;
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// Refernce to other objects that are needed by this object.
|
||||
/// </summary>
|
||||
#region Links
|
||||
|
||||
protected RectTransform rectTrans;
|
||||
public RectTransform RectTrans
|
||||
{
|
||||
get
|
||||
{
|
||||
return rectTrans;
|
||||
}
|
||||
}
|
||||
|
||||
[Tooltip("Put in the Graphic you want to curve/morph here.")]
|
||||
[SerializeField]
|
||||
protected Graphic uiGraphic;
|
||||
public Graphic UIGraphic
|
||||
{
|
||||
get
|
||||
{
|
||||
return uiGraphic;
|
||||
}
|
||||
}
|
||||
[Tooltip("Put in the reference Graphic that will be used to tune the bezier curves. Think button image and text.")]
|
||||
[SerializeField]
|
||||
protected CUIGraphic refCUIGraphic;
|
||||
public CUIGraphic RefCUIGraphic
|
||||
{
|
||||
get
|
||||
{
|
||||
return refCUIGraphic;
|
||||
}
|
||||
}
|
||||
|
||||
[Tooltip("Do not touch this unless you are sure what you are doing. The curves are (re)generated automatically.")]
|
||||
[SerializeField]
|
||||
protected CUIBezierCurve[] refCurves;
|
||||
public CUIBezierCurve[] RefCurves
|
||||
{
|
||||
get
|
||||
{
|
||||
return refCurves;
|
||||
}
|
||||
}
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
protected Vector3_Array2D[] refCurvesControlRatioPoints;
|
||||
public Vector3_Array2D[] RefCurvesControlRatioPoints
|
||||
{
|
||||
get
|
||||
{
|
||||
return refCurvesControlRatioPoints;
|
||||
}
|
||||
}
|
||||
|
||||
#if UNITY_EDITOR
|
||||
|
||||
public CUIBezierCurve[] EDITOR_RefCurves
|
||||
{
|
||||
set
|
||||
{
|
||||
refCurves = value;
|
||||
}
|
||||
}
|
||||
|
||||
public Vector3_Array2D[] EDITOR_RefCurvesControlRatioPoints
|
||||
{
|
||||
set
|
||||
{
|
||||
refCurvesControlRatioPoints = value;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#endregion
|
||||
|
||||
// Methods that are used often.
|
||||
#region Reuse
|
||||
|
||||
protected List<UIVertex> reuse_quads = new List<UIVertex>();
|
||||
|
||||
#endregion
|
||||
|
||||
#region Action
|
||||
|
||||
protected void solveDoubleEquationWithVector(float _x_1, float _y_1, float _x_2, float _y_2, Vector3 _constant_1, Vector3 _contant_2, out Vector3 _x, out Vector3 _y)
|
||||
{
|
||||
Vector3 f;
|
||||
float g;
|
||||
|
||||
if (Mathf.Abs(_x_1) > Mathf.Abs(_x_2))
|
||||
{
|
||||
f = _constant_1 * _x_2 / _x_1;
|
||||
g = _y_1 * _x_2 / _x_1;
|
||||
_y = (_contant_2 - f) / (_y_2 - g);
|
||||
if (_x_2 != 0)
|
||||
_x = (f - g * _y) / _x_2;
|
||||
else
|
||||
_x = (_constant_1 - _y_1 * _y) / _x_1;
|
||||
}
|
||||
else
|
||||
{
|
||||
f = _contant_2 * _x_1 / _x_2;
|
||||
g = _y_2 * _x_1 / _x_2;
|
||||
_x = (_constant_1 - f) / (_y_1 - g);
|
||||
if (_x_1 != 0)
|
||||
_y = (f - g * _x) / _x_1;
|
||||
else
|
||||
_y = (_contant_2 - _y_2 * _x) / _x_2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
protected UIVertex uiVertexLerp(UIVertex _a, UIVertex _b, float _time)
|
||||
{
|
||||
UIVertex tmpUIVertex = new UIVertex();
|
||||
|
||||
tmpUIVertex.position = Vector3.Lerp(_a.position, _b.position, _time);
|
||||
tmpUIVertex.normal = Vector3.Lerp(_a.normal, _b.normal, _time);
|
||||
tmpUIVertex.tangent = Vector3.Lerp(_a.tangent, _b.tangent, _time);
|
||||
tmpUIVertex.uv0 = Vector2.Lerp(_a.uv0, _b.uv0, _time);
|
||||
tmpUIVertex.uv1 = Vector2.Lerp(_a.uv1, _b.uv1, _time);
|
||||
tmpUIVertex.color = Color.Lerp(_a.color, _b.color, _time);
|
||||
|
||||
return tmpUIVertex;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Bilinear Interpolation
|
||||
/// </summary>
|
||||
protected UIVertex uiVertexBerp(UIVertex v_bottomLeft, UIVertex v_topLeft, UIVertex v_topRight, UIVertex v_bottomRight, float _xTime, float _yTime)
|
||||
{
|
||||
UIVertex topX = uiVertexLerp(v_topLeft, v_topRight, _xTime);
|
||||
UIVertex bottomX = uiVertexLerp(v_bottomLeft, v_bottomRight, _xTime);
|
||||
return uiVertexLerp(bottomX, topX, _yTime);
|
||||
}
|
||||
|
||||
protected void tessellateQuad(List<UIVertex> _quads, int _thisQuadIdx)
|
||||
{
|
||||
UIVertex v_bottomLeft = _quads[_thisQuadIdx];
|
||||
UIVertex v_topLeft = _quads[_thisQuadIdx + 1];
|
||||
UIVertex v_topRight = _quads[_thisQuadIdx + 2];
|
||||
UIVertex v_bottomRight = _quads[_thisQuadIdx + 3];
|
||||
|
||||
float quadSize = 100.0f / resolution;
|
||||
|
||||
int heightQuadEdgeNum = Mathf.Max(1, Mathf.CeilToInt((v_topLeft.position - v_bottomLeft.position).magnitude / quadSize));
|
||||
int widthQuadEdgeNum = Mathf.Max(1, Mathf.CeilToInt((v_topRight.position - v_topLeft.position).magnitude / quadSize));
|
||||
|
||||
int quadIdx = 0;
|
||||
|
||||
for (int x = 0; x < widthQuadEdgeNum; x++)
|
||||
{
|
||||
for (int y = 0; y < heightQuadEdgeNum; y++, quadIdx++)
|
||||
{
|
||||
_quads.Add(new UIVertex());
|
||||
_quads.Add(new UIVertex());
|
||||
_quads.Add(new UIVertex());
|
||||
_quads.Add(new UIVertex());
|
||||
|
||||
float xRatio = (float)x / widthQuadEdgeNum;
|
||||
float yRatio = (float)y / heightQuadEdgeNum;
|
||||
float xPlusOneRatio = (float)(x + 1) / widthQuadEdgeNum;
|
||||
float yPlusOneRatio = (float)(y + 1) / heightQuadEdgeNum;
|
||||
|
||||
_quads[_quads.Count - 4] = uiVertexBerp(v_bottomLeft, v_topLeft, v_topRight, v_bottomRight, xRatio, yRatio);
|
||||
_quads[_quads.Count - 3] = uiVertexBerp(v_bottomLeft, v_topLeft, v_topRight, v_bottomRight, xRatio, yPlusOneRatio);
|
||||
_quads[_quads.Count - 2] = uiVertexBerp(v_bottomLeft, v_topLeft, v_topRight, v_bottomRight, xPlusOneRatio, yPlusOneRatio);
|
||||
_quads[_quads.Count - 1] = uiVertexBerp(v_bottomLeft, v_topLeft, v_topRight, v_bottomRight, xPlusOneRatio, yRatio);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected void tessellateGraphic(List<UIVertex> _verts)
|
||||
{
|
||||
for (int v = 0; v < _verts.Count; v += 6)
|
||||
{
|
||||
reuse_quads.Add(_verts[v]); // bottom left
|
||||
reuse_quads.Add(_verts[v + 1]); // top left
|
||||
reuse_quads.Add(_verts[v + 2]); // top right
|
||||
// verts[3] is redundant, top right
|
||||
reuse_quads.Add(_verts[v + 4]); // bottom right
|
||||
// verts[5] is redundant, bottom left
|
||||
}
|
||||
|
||||
int oriQuadNum = reuse_quads.Count / 4;
|
||||
for (int q = 0; q < oriQuadNum; q++)
|
||||
{
|
||||
tessellateQuad(reuse_quads, q * 4);
|
||||
}
|
||||
|
||||
// remove original quads
|
||||
reuse_quads.RemoveRange(0, oriQuadNum * 4);
|
||||
|
||||
_verts.Clear();
|
||||
|
||||
// process new quads and turn them into triangles
|
||||
for (int q = 0; q < reuse_quads.Count; q += 4)
|
||||
{
|
||||
_verts.Add(reuse_quads[q]);
|
||||
_verts.Add(reuse_quads[q + 1]);
|
||||
_verts.Add(reuse_quads[q + 2]);
|
||||
_verts.Add(reuse_quads[q + 2]);
|
||||
_verts.Add(reuse_quads[q + 3]);
|
||||
_verts.Add(reuse_quads[q]);
|
||||
}
|
||||
|
||||
reuse_quads.Clear();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
// Events are for handling reoccuring function calls that react to the changes of the environment.
|
||||
#region Events
|
||||
|
||||
protected override void OnRectTransformDimensionsChange()
|
||||
{
|
||||
if (isLockWithRatio)
|
||||
{
|
||||
UpdateCurveControlPointPositions();
|
||||
}
|
||||
}
|
||||
|
||||
public void Refresh()
|
||||
{
|
||||
ReportSet();
|
||||
|
||||
// we use local position as the true value. Ratio position follows it, so it should be updated when refresh
|
||||
|
||||
for (int c = 0; c < refCurves.Length; c++)
|
||||
{
|
||||
|
||||
CUIBezierCurve curve = refCurves[c];
|
||||
|
||||
if (curve.ControlPoints != null)
|
||||
{
|
||||
|
||||
Vector3[] controlPoints = curve.ControlPoints;
|
||||
|
||||
for (int p = 0; p < CUIBezierCurve.CubicBezierCurvePtNum; p++)
|
||||
{
|
||||
|
||||
#if UNITY_EDITOR
|
||||
Undo.RecordObject(this, "Move Point");
|
||||
#endif
|
||||
|
||||
Vector3 ratioPoint = controlPoints[p];
|
||||
|
||||
ratioPoint.x = (ratioPoint.x + rectTrans.rect.width * rectTrans.pivot.x) / rectTrans.rect.width;
|
||||
ratioPoint.y = (ratioPoint.y + rectTrans.rect.height * rectTrans.pivot.y) / rectTrans.rect.height;
|
||||
|
||||
refCurvesControlRatioPoints[c][p] = ratioPoint;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//uiText.SetAllDirty();
|
||||
// need this to refresh the UI text, SetAllDirty does not seem to work for all cases
|
||||
if (uiGraphic != null)
|
||||
{
|
||||
uiGraphic.enabled = false;
|
||||
uiGraphic.enabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
// Methods that change the behaviour of the object.
|
||||
#region Flash-Phase
|
||||
|
||||
protected override void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
OnRectTransformDimensionsChange();
|
||||
|
||||
}
|
||||
protected override void OnEnable()
|
||||
{
|
||||
base.OnEnable();
|
||||
OnRectTransformDimensionsChange();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Configurations
|
||||
|
||||
/// <summary>
|
||||
/// Check, prepare and set everything needed.
|
||||
/// </summary>
|
||||
public virtual void ReportSet()
|
||||
{
|
||||
|
||||
if (rectTrans == null)
|
||||
rectTrans = GetComponent<RectTransform>();
|
||||
|
||||
if (refCurves == null)
|
||||
refCurves = new CUIBezierCurve[2];
|
||||
|
||||
bool isCurvesReady = true;
|
||||
|
||||
for (int c = 0; c < 2; c++)
|
||||
{
|
||||
isCurvesReady = isCurvesReady & refCurves[c] != null;
|
||||
}
|
||||
|
||||
isCurvesReady = isCurvesReady & refCurves.Length == 2;
|
||||
|
||||
if (!isCurvesReady)
|
||||
{
|
||||
CUIBezierCurve[] curves = refCurves;
|
||||
|
||||
for (int c = 0; c < 2; c++)
|
||||
{
|
||||
if (refCurves[c] == null)
|
||||
{
|
||||
GameObject go = new GameObject();
|
||||
go.transform.SetParent(transform);
|
||||
go.transform.localPosition = Vector3.zero;
|
||||
go.transform.localEulerAngles = Vector3.zero;
|
||||
|
||||
if (c == 0)
|
||||
{
|
||||
go.name = "BottomRefCurve";
|
||||
}
|
||||
else
|
||||
{
|
||||
go.name = "TopRefCurve";
|
||||
}
|
||||
|
||||
curves[c] = go.AddComponent<CUIBezierCurve>();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
curves[c] = refCurves[c];
|
||||
}
|
||||
curves[c].ReportSet();
|
||||
}
|
||||
|
||||
refCurves = curves;
|
||||
}
|
||||
|
||||
if (refCurvesControlRatioPoints == null)
|
||||
{
|
||||
refCurvesControlRatioPoints = new Vector3_Array2D[refCurves.Length];
|
||||
|
||||
for (int c = 0; c < refCurves.Length; c++)
|
||||
{
|
||||
{
|
||||
refCurvesControlRatioPoints[c].array = new Vector3[refCurves[c].ControlPoints.Length];
|
||||
}
|
||||
}
|
||||
|
||||
FixTextToRectTrans();
|
||||
Refresh();
|
||||
}
|
||||
|
||||
for (int c = 0; c < 2; c++)
|
||||
{
|
||||
refCurves[c].OnRefresh = Refresh;
|
||||
}
|
||||
}
|
||||
|
||||
public void FixTextToRectTrans()
|
||||
{
|
||||
for (int c = 0; c < refCurves.Length; c++)
|
||||
{
|
||||
CUIBezierCurve curve = refCurves[c];
|
||||
|
||||
for (int p = 0; p < CUIBezierCurve.CubicBezierCurvePtNum; p++)
|
||||
{
|
||||
if (curve.ControlPoints != null)
|
||||
{
|
||||
Vector3[] controlPoints = curve.ControlPoints;
|
||||
|
||||
if (c == 0)
|
||||
{
|
||||
controlPoints[p].y = -rectTrans.rect.height * rectTrans.pivot.y;
|
||||
}
|
||||
else
|
||||
{
|
||||
controlPoints[p].y = rectTrans.rect.height - rectTrans.rect.height * rectTrans.pivot.y;
|
||||
}
|
||||
|
||||
controlPoints[p].x = rectTrans.rect.width * p / (CUIBezierCurve.CubicBezierCurvePtNum - 1);
|
||||
controlPoints[p].x -= rectTrans.rect.width * rectTrans.pivot.x;
|
||||
|
||||
controlPoints[p].z = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void ReferenceCUIForBCurves()
|
||||
{
|
||||
// compute the position ratio of this rect transform in perspective of reference rect transform
|
||||
|
||||
Vector3 posDeltaBetweenBottomLeftCorner = rectTrans.localPosition;// Difference between pivot
|
||||
|
||||
posDeltaBetweenBottomLeftCorner.x += -rectTrans.rect.width * rectTrans.pivot.x + (refCUIGraphic.rectTrans.rect.width * refCUIGraphic.rectTrans.pivot.x);
|
||||
posDeltaBetweenBottomLeftCorner.y += -rectTrans.rect.height * rectTrans.pivot.y + (refCUIGraphic.rectTrans.rect.height * refCUIGraphic.rectTrans.pivot.y);
|
||||
//posDeltaBetweenBottomLeftCorner.z = rectTrans.localPosition.z;
|
||||
|
||||
Vector3 bottomLeftPosRatio = new Vector3(posDeltaBetweenBottomLeftCorner.x / refCUIGraphic.RectTrans.rect.width, posDeltaBetweenBottomLeftCorner.y / refCUIGraphic.RectTrans.rect.height, posDeltaBetweenBottomLeftCorner.z);
|
||||
Vector3 topRightPosRatio = new Vector3((posDeltaBetweenBottomLeftCorner.x + rectTrans.rect.width) / refCUIGraphic.RectTrans.rect.width, (posDeltaBetweenBottomLeftCorner.y + rectTrans.rect.height) / refCUIGraphic.RectTrans.rect.height, posDeltaBetweenBottomLeftCorner.z);
|
||||
|
||||
refCurves[0].ControlPoints[0] = refCUIGraphic.GetBCurveSandwichSpacePoint(bottomLeftPosRatio.x, bottomLeftPosRatio.y) - rectTrans.localPosition;
|
||||
refCurves[0].ControlPoints[3] = refCUIGraphic.GetBCurveSandwichSpacePoint(topRightPosRatio.x, bottomLeftPosRatio.y) - rectTrans.localPosition;
|
||||
|
||||
refCurves[1].ControlPoints[0] = refCUIGraphic.GetBCurveSandwichSpacePoint(bottomLeftPosRatio.x, topRightPosRatio.y) - rectTrans.localPosition;
|
||||
refCurves[1].ControlPoints[3] = refCUIGraphic.GetBCurveSandwichSpacePoint(topRightPosRatio.x, topRightPosRatio.y) - rectTrans.localPosition;
|
||||
|
||||
// use two sample points from the reference curves to find the second and third controls points for this curves
|
||||
for (int c = 0; c < refCurves.Length; c++)
|
||||
{
|
||||
CUIBezierCurve curve = refCurves[c];
|
||||
|
||||
float yTime = c == 0 ? bottomLeftPosRatio.y : topRightPosRatio.y;
|
||||
|
||||
Vector3 leftPoint = refCUIGraphic.GetBCurveSandwichSpacePoint(bottomLeftPosRatio.x, yTime);
|
||||
Vector3 rightPoint = refCUIGraphic.GetBCurveSandwichSpacePoint(topRightPosRatio.x, yTime);
|
||||
|
||||
float quarter = 0.25f,
|
||||
threeQuarter = 0.75f;
|
||||
|
||||
Vector3 quarterPoint = refCUIGraphic.GetBCurveSandwichSpacePoint((bottomLeftPosRatio.x * 0.75f + topRightPosRatio.x * 0.25f) / 1.0f, yTime);
|
||||
Vector3 threeQuaterPoint = refCUIGraphic.GetBCurveSandwichSpacePoint((bottomLeftPosRatio.x * 0.25f + topRightPosRatio.x * 0.75f) / 1.0f, yTime);
|
||||
|
||||
float x_1 = 3 * threeQuarter * threeQuarter * quarter, // (1 - t)(1 - t)t
|
||||
y_1 = 3 * threeQuarter * quarter * quarter,
|
||||
x_2 = 3 * quarter * quarter * threeQuarter,
|
||||
y_2 = 3 * quarter * threeQuarter * threeQuarter;
|
||||
|
||||
Vector3 contant_1 = quarterPoint - Mathf.Pow(threeQuarter, 3) * leftPoint - Mathf.Pow(quarter, 3) * rightPoint,
|
||||
contant_2 = threeQuaterPoint - Mathf.Pow(quarter, 3) * leftPoint - Mathf.Pow(threeQuarter, 3) * rightPoint,
|
||||
p1,
|
||||
p2;
|
||||
|
||||
solveDoubleEquationWithVector(x_1, y_1, x_2, y_2, contant_1, contant_2, out p1, out p2);
|
||||
|
||||
curve.ControlPoints[1] = p1 - rectTrans.localPosition;
|
||||
curve.ControlPoints[2] = p2 - rectTrans.localPosition;
|
||||
|
||||
}
|
||||
// use tangent and start and end time to derive control point 2 and 3
|
||||
}
|
||||
|
||||
public override void ModifyMesh(Mesh _mesh)
|
||||
{
|
||||
|
||||
if (!IsActive())
|
||||
return;
|
||||
|
||||
using (VertexHelper vh = new VertexHelper(_mesh))
|
||||
{
|
||||
ModifyMesh(vh);
|
||||
vh.FillMesh(_mesh);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public override void ModifyMesh(VertexHelper _vh)
|
||||
{
|
||||
|
||||
if (!IsActive())
|
||||
return;
|
||||
|
||||
List<UIVertex> vertexList = new List<UIVertex>();
|
||||
_vh.GetUIVertexStream(vertexList);
|
||||
|
||||
modifyVertices(vertexList);
|
||||
|
||||
_vh.Clear();
|
||||
_vh.AddUIVertexTriangleStream(vertexList);
|
||||
}
|
||||
|
||||
protected virtual void modifyVertices(List<UIVertex> _verts)
|
||||
{
|
||||
if (!IsActive())
|
||||
return;
|
||||
|
||||
tessellateGraphic(_verts);
|
||||
|
||||
if (!isCurved)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
for (int index = 0; index < _verts.Count; index++)
|
||||
{
|
||||
var uiVertex = _verts[index];
|
||||
|
||||
// finding the horizontal ratio position (0.0 - 1.0) of a vertex
|
||||
float horRatio = (uiVertex.position.x + rectTrans.rect.width * rectTrans.pivot.x) / rectTrans.rect.width;
|
||||
float verRatio = (uiVertex.position.y + rectTrans.rect.height * rectTrans.pivot.y) / rectTrans.rect.height;
|
||||
|
||||
//Vector3 pos = Vector3.Lerp(refCurves[0].GetPoint(horRatio), refCurves[1].GetPoint(horRatio), verRatio);
|
||||
Vector3 pos = GetBCurveSandwichSpacePoint(horRatio, verRatio);
|
||||
|
||||
uiVertex.position.x = pos.x;
|
||||
uiVertex.position.y = pos.y;
|
||||
uiVertex.position.z = pos.z;
|
||||
|
||||
_verts[index] = uiVertex;
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateCurveControlPointPositions()
|
||||
{
|
||||
ReportSet();
|
||||
|
||||
for (int c = 0; c < refCurves.Length; c++)
|
||||
{
|
||||
CUIBezierCurve curve = refCurves[c];
|
||||
|
||||
#if UNITY_EDITOR
|
||||
Undo.RecordObject(curve, "Move Rect");
|
||||
#endif
|
||||
|
||||
for (int p = 0; p < refCurves[c].ControlPoints.Length; p++)
|
||||
{
|
||||
|
||||
Vector3 newPt = refCurvesControlRatioPoints[c][p];
|
||||
|
||||
newPt.x = newPt.x * rectTrans.rect.width - rectTrans.rect.width * rectTrans.pivot.x;
|
||||
newPt.y = newPt.y * rectTrans.rect.height - rectTrans.rect.height * rectTrans.pivot.y;
|
||||
|
||||
curve.ControlPoints[p] = newPt;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
// Methods that serves other objects
|
||||
#region Services
|
||||
|
||||
public Vector3 GetBCurveSandwichSpacePoint(float _xTime, float _yTime)
|
||||
{
|
||||
//return Vector3.Lerp(refCurves[0].GetPoint(_xTime), refCurves[1].GetPoint(_xTime), _yTime);
|
||||
return refCurves[0].GetPoint(_xTime) * (1 - _yTime) + refCurves[1].GetPoint(_xTime) * _yTime; // use a custom made lerp so that the value is not clamped between 0 and 1
|
||||
}
|
||||
|
||||
public Vector3 GetBCurveSandwichSpaceTangent(float _xTime, float _yTime)
|
||||
{
|
||||
return refCurves[0].GetTangent(_xTime) * (1 - _yTime) + refCurves[1].GetTangent(_xTime) * _yTime;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e011f2cb554f96547bbfc22e5f001c17
|
||||
timeCreated: 1485600090
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,165 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[RequireComponent(typeof(RectTransform))]
|
||||
[RequireComponent(typeof(Image))]
|
||||
[AddComponentMenu("UI/Effects/Extensions/Curly UI Image")]
|
||||
public class CUIImage : CUIGraphic
|
||||
{
|
||||
#region Nature
|
||||
|
||||
public static int SlicedImageCornerRefVertexIdx = 2;
|
||||
public static int FilledImageCornerRefVertexIdx = 0;
|
||||
|
||||
/// <summary>
|
||||
/// For sliced and filled image only.
|
||||
/// </summary>
|
||||
/// <param name="_type"></param>
|
||||
/// <returns></returns>
|
||||
public static int ImageTypeCornerRefVertexIdx(Image.Type _type)
|
||||
{
|
||||
if (_type == Image.Type.Sliced)
|
||||
{
|
||||
return SlicedImageCornerRefVertexIdx;
|
||||
}
|
||||
else
|
||||
{
|
||||
return FilledImageCornerRefVertexIdx;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Description
|
||||
|
||||
[Tooltip("For changing the size of the corner for tiled or sliced Image")]
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
public Vector2 cornerPosRatio = Vector2.one * -1; // -1 means unset value
|
||||
|
||||
[HideInInspector]
|
||||
[SerializeField]
|
||||
protected Vector2 oriCornerPosRatio = Vector2.one * -1;
|
||||
public Vector2 OriCornerPosRatio
|
||||
{
|
||||
get
|
||||
{
|
||||
return oriCornerPosRatio;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
public Image UIImage
|
||||
{
|
||||
get
|
||||
{
|
||||
return (Image)uiGraphic;
|
||||
}
|
||||
}
|
||||
|
||||
#region Configurations
|
||||
|
||||
public override void ReportSet()
|
||||
{
|
||||
|
||||
if (uiGraphic == null)
|
||||
uiGraphic = GetComponent<Image>();
|
||||
|
||||
base.ReportSet();
|
||||
}
|
||||
|
||||
protected override void modifyVertices(List<UIVertex> _verts)
|
||||
{
|
||||
if (!IsActive())
|
||||
return;
|
||||
|
||||
if (UIImage.type == Image.Type.Filled)
|
||||
{
|
||||
Debug.LogWarning("Might not work well Radial Filled at the moment!");
|
||||
|
||||
}
|
||||
else if (UIImage.type == Image.Type.Sliced || UIImage.type == Image.Type.Tiled)
|
||||
{
|
||||
// setting the starting cornerRatio
|
||||
if (cornerPosRatio == Vector2.one * -1)
|
||||
{
|
||||
cornerPosRatio = _verts[ImageTypeCornerRefVertexIdx(UIImage.type)].position;
|
||||
cornerPosRatio.x = (cornerPosRatio.x + rectTrans.pivot.x * rectTrans.rect.width) / rectTrans.rect.width;
|
||||
cornerPosRatio.y = (cornerPosRatio.y + rectTrans.pivot.y * rectTrans.rect.height) / rectTrans.rect.height;
|
||||
|
||||
oriCornerPosRatio = cornerPosRatio;
|
||||
|
||||
}
|
||||
|
||||
// constraing the corner ratio
|
||||
if (cornerPosRatio.x < 0)
|
||||
{
|
||||
cornerPosRatio.x = 0;
|
||||
}
|
||||
if (cornerPosRatio.x >= 0.5f)
|
||||
{
|
||||
cornerPosRatio.x = 0.5f;
|
||||
}
|
||||
if (cornerPosRatio.y < 0)
|
||||
{
|
||||
cornerPosRatio.y = 0;
|
||||
}
|
||||
if (cornerPosRatio.y >= 0.5f)
|
||||
{
|
||||
cornerPosRatio.y = 0.5f;
|
||||
}
|
||||
|
||||
for (int index = 0; index < _verts.Count; index++)
|
||||
{
|
||||
var uiVertex = _verts[index];
|
||||
|
||||
// finding the horizontal ratio position (0.0 - 1.0) of a vertex
|
||||
float horRatio = (uiVertex.position.x + rectTrans.rect.width * rectTrans.pivot.x) / rectTrans.rect.width;
|
||||
float verRatio = (uiVertex.position.y + rectTrans.rect.height * rectTrans.pivot.y) / rectTrans.rect.height;
|
||||
|
||||
if (horRatio < oriCornerPosRatio.x)
|
||||
{
|
||||
horRatio = Mathf.Lerp(0, cornerPosRatio.x, horRatio / oriCornerPosRatio.x);
|
||||
}
|
||||
else if (horRatio > 1 - oriCornerPosRatio.x)
|
||||
{
|
||||
horRatio = Mathf.Lerp(1 - cornerPosRatio.x, 1, (horRatio - (1 - oriCornerPosRatio.x)) / oriCornerPosRatio.x);
|
||||
}
|
||||
else
|
||||
{
|
||||
horRatio = Mathf.Lerp(cornerPosRatio.x, 1 - cornerPosRatio.x, (horRatio - oriCornerPosRatio.x) / (1 - oriCornerPosRatio.x * 2));
|
||||
}
|
||||
|
||||
if (verRatio < oriCornerPosRatio.y)
|
||||
{
|
||||
verRatio = Mathf.Lerp(0, cornerPosRatio.y, verRatio / oriCornerPosRatio.y);
|
||||
}
|
||||
else if (verRatio > 1 - oriCornerPosRatio.y)
|
||||
{
|
||||
verRatio = Mathf.Lerp(1 - cornerPosRatio.y, 1, (verRatio - (1 - oriCornerPosRatio.y)) / oriCornerPosRatio.y);
|
||||
}
|
||||
else
|
||||
{
|
||||
verRatio = Mathf.Lerp(cornerPosRatio.y, 1 - cornerPosRatio.y, (verRatio - oriCornerPosRatio.y) / (1 - oriCornerPosRatio.y * 2));
|
||||
}
|
||||
|
||||
uiVertex.position.x = horRatio * rectTrans.rect.width - rectTrans.rect.width * rectTrans.pivot.x;
|
||||
uiVertex.position.y = verRatio * rectTrans.rect.height - rectTrans.rect.height * rectTrans.pivot.y;
|
||||
//uiVertex.position.z = pos.z;
|
||||
|
||||
_verts[index] = uiVertex;
|
||||
}
|
||||
}
|
||||
|
||||
base.modifyVertices(_verts);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 9ab7726a352b5004cbf5f8e153868637
|
||||
timeCreated: 1485600090
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,24 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[System.Serializable]
|
||||
public struct Vector3_Array2D
|
||||
{
|
||||
[SerializeField]
|
||||
public Vector3[] array;
|
||||
|
||||
public Vector3 this[int _idx]
|
||||
{
|
||||
get
|
||||
{
|
||||
return array[_idx];
|
||||
}
|
||||
set
|
||||
{
|
||||
array[_idx] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2e82bd2b2afc435438d5d8d7d3459dd0
|
||||
timeCreated: 1485704814
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,19 @@
|
|||
/// Credit Titinious (https://github.com/Titinious)
|
||||
/// Sourced from - https://github.com/Titinious/CurlyUI
|
||||
|
||||
namespace UnityEngine.UI.Extensions
|
||||
{
|
||||
[RequireComponent(typeof(RectTransform))]
|
||||
[RequireComponent(typeof(Text))]
|
||||
[AddComponentMenu("UI/Effects/Extensions/Curly UI Text")]
|
||||
public class CUIText : CUIGraphic
|
||||
{
|
||||
public override void ReportSet()
|
||||
{
|
||||
if (uiGraphic == null)
|
||||
uiGraphic = GetComponent<Text>();
|
||||
|
||||
base.ReportSet();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 64c40f35eca5d5d4da4eefac2a627005
|
||||
timeCreated: 1485600090
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue