Files
MinFt/Client/Assets/Scripts/UI/UIButtonScale.cs
Liubing\LB 3d8d4d18f3 first commit
先修复一下,错误的场景

删除不必要的钓场资产

修复into场景

update:更新meta文件,修复报错

update:修复资源

修复第一章节建造

修复建造第三章

update:删除多余内容

update:更新README.md

update:还原图标

update:更新README

update:更新配置
2026-04-28 02:17:22 +08:00

99 lines
1.8 KiB
C#

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
[RequireComponent(typeof(Button))]
[AddComponentMenu("UGUI/UI/UIButtonScale")]
public class UIButtonScale : MonoBehaviour,IPointerDownHandler,IPointerUpHandler
{
public float Speed = 0.02f;
public Vector3 To = new Vector3 (0.8f, 0.8f, 0.8f);
Vector3 _from = Vector3.one;
bool _bScale = false; // scale down, false; scale up, ture
bool _bRunning = false;
Button _Button;
void Awake()
{
_Button = gameObject.GetComponent<Button>();
_from = transform.localScale;
}
/*void Start()
{
//_from = transform.localScale;
}*/
void OnDisable()
{
SetNormal();
}
void OnApplicationFocus(bool focus)
{
if(!focus)
{
SetNormal();
}
}
public void OnPointerDown (PointerEventData event_data)
{
if (null != _Button && !_Button.interactable)
{
return;
}
_bScale = false;
_bRunning = true;
}
public void OnPointerUp (PointerEventData event_data)
{
/*if(!_Button.interactable && !_bRunning)
{
return;
}*/
_bScale = true;
_bRunning = true;
}
public void SetNormal()
{
_bScale = true;
_bRunning = false;
transform.localScale = _from;
}
void Update()
{
if(!_bRunning)
{
return;
}
if (!_bScale)
{
transform.localScale -= _from * Speed;
if (transform.localScale.x <= To.x)
{
transform.localScale = To;
_bRunning = false;
}
}
else
{
transform.localScale += _from * Speed;
if (transform.localScale.x >= _from.x)
{
transform.localScale = _from;
_bRunning = false;
}
}
}
}