12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- using UnityEngine;
- using UnityEngine.EventSystems;
- using System.Collections;
- public class Garden : MonoBehaviour , IDragHandler, IPointerClickHandler
- {
- #region 变量
- private float LeftBorder;
- private float RightBorder;
- private float SlideSpeed;
- private Transform SlideTra;
- private SpriteRenderer GardenSrB;
- private SpriteRenderer GardenSrA;
- #endregion
- private void Awake()
- {
- #region MyRegion
- Transform[] transforms = GetComponentsInChildren<Transform>(true);
- for (int i = 0; i < transforms.Length; i++)
- {
- ManaReso.SaveToDic(transforms[i]);
- }
- SlideSpeed = 0.25f;
- SlideTra = ManaReso.Get("GardenSrA");
- GardenSrB = ManaReso.Get<SpriteRenderer>("GardenSrB");
- GardenSrA = ManaReso.Get<SpriteRenderer>("GardenSrA");
- LeftBorder = SlideTra.position.x - (GardenSrA.bounds.extents.x + GardenSrB.bounds.extents.x);
- RightBorder = SlideTra.position.x;
- #endregion
- }
- public void OnDrag(PointerEventData eventData)
- {
- if (eventData.dragging)
- {
- if (eventData.delta.x < 0)
- {
- if (SlideTra.position.x > LeftBorder)
- {
- SlideTra.Translate(SlideTra.right*Mathf.Clamp(eventData.delta.x/10, -2, 2)*SlideSpeed, Space.World);
- }
- }
- if (eventData.delta.x > 0)
- {
- if (SlideTra.position.x < RightBorder)
- {
- SlideTra.Translate(SlideTra.right*Mathf.Clamp(eventData.delta.x/10, -2, 2)*SlideSpeed, Space.World);
- }
- }
- }
- }
- public void OnPointerClick(PointerEventData eventData)
- {
- if (eventData.rawPointerPress.transform.name.Contains("FlowerTra"))
- {
- ManaGarden.SelFlowerTra = eventData.rawPointerPress.transform;
- ManaGarden.ShowFlowerCard(null);
- }
- }
- }
|