You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
3.5 KiB
119 lines
3.5 KiB
using System; |
|
using System.Collections; |
|
using System.Collections.Generic; |
|
using UnityEngine; |
|
using UnityEngine.UI; |
|
|
|
/// <summary> |
|
/// 灾情、到场时间、胜利条件设置动画效果 |
|
/// </summary> |
|
public class Hideshow : BaseToggle |
|
{ |
|
public ScrollRect scrollView; |
|
private bool willbe = true; |
|
private bool showing = false; |
|
private float Speed = 20; |
|
public float height; |
|
public bool skill = false; |
|
|
|
private RectTransform rectTransform; |
|
private Toggle toggleComponent; |
|
|
|
private void Start() |
|
{ |
|
rectTransform = scrollView.GetComponent<RectTransform>(); |
|
toggleComponent = GetComponent<Toggle>(); |
|
} |
|
|
|
public override void RespondFun(bool value) |
|
{ |
|
if (!value) |
|
{ |
|
willbe = true; |
|
if (scrollView.GetComponentInChildren<ToggleGroup>()) |
|
{ |
|
if (skill == false) |
|
{ |
|
if (scrollView.GetComponentInChildren<ToggleGroup>().AnyTogglesOn()) |
|
{ |
|
Toggle[] all = scrollView.GetComponentsInChildren<Toggle>(); |
|
for (int i = 0; i < all.Length; i++) |
|
{ |
|
all[i].isOn = false; |
|
} |
|
} |
|
} |
|
else |
|
{ |
|
if (scrollView.GetComponentInChildren<IsCloneSkill>()) |
|
{ |
|
InputManager.cloneObjType = CloneObjType.None; |
|
} |
|
} |
|
} |
|
} |
|
else |
|
{ |
|
willbe = false; |
|
} |
|
} |
|
void Hide() |
|
{ |
|
if (willbe && showing) |
|
{ |
|
toggleComponent.interactable = false; |
|
|
|
if(!scrollView.gameObject.activeInHierarchy) |
|
scrollView.gameObject.SetActive(true); |
|
if (rectTransform.sizeDelta.y > 0) |
|
{ |
|
rectTransform.sizeDelta += Vector2.down * Speed; |
|
} |
|
else |
|
{ |
|
rectTransform.sizeDelta = new Vector2(rectTransform.sizeDelta.x, 0); |
|
showing = false; |
|
scrollView.gameObject.SetActive(false); |
|
toggleComponent.interactable = true; |
|
} |
|
} |
|
} |
|
void Show() |
|
{ |
|
if (!willbe && !showing) |
|
{ |
|
toggleComponent.interactable = false; |
|
if (!scrollView.gameObject.activeInHierarchy) |
|
scrollView.gameObject.SetActive(true); |
|
if (rectTransform.sizeDelta.y < height) |
|
{ |
|
rectTransform.sizeDelta += Vector2.up * Speed; |
|
} |
|
else |
|
{ |
|
rectTransform.sizeDelta = new Vector2(rectTransform.sizeDelta.x, height); |
|
showing = true; |
|
toggleComponent.interactable = true; |
|
} |
|
if (scrollView.GetComponentInChildren<IsCloneSkill>()) |
|
{ |
|
if (SkillTollPanel.Instance.SelectObj.GetComponent<FireManControl>()) |
|
{ |
|
if (SkillTollPanel.Instance.SelectObj.GetComponent<FireManControl>().workType==FireManSkills.AssociatedLine) |
|
{ |
|
if (scrollView.GetComponentInChildren<IsCloneSkill>()) |
|
{ |
|
InputManager.cloneObjType = scrollView.GetComponentInChildren<IsCloneSkill>().clonetype; |
|
} |
|
} |
|
} |
|
|
|
} |
|
} |
|
} |
|
void Update() |
|
{ |
|
Hide(); |
|
Show(); |
|
} |
|
}
|
|
|