using System.Collections;
using System.Collections.Generic;
using UnityEngine;
///
/// 注意:1.此脚本和动画共用时,需要注意动画激活时,缩放会被锁死,无法移动。
/// 2.有控制权才能移动,结束后需释放控制权(控制权专属除外)
///
public class FunctionSync_Scale : OneValueSyncObject
{
///
/// 是否有控制权
///
public bool isControl=false;
private void Start()
{
Init();
}
public void Init()
{
if(!hasInit)
{
InitDynamic("Scale_" + gameObject.name, null, ValueType.Vector3);
myvector3 = transform.localScale;
}
}
///
/// 获取控制权
///
public void GetControl()
{
isControl = true;
}
///
/// 释放控制权
///
public void ReleaseControl()
{
isControl = false;
myvector3 = transform.localScale;
SendSync();
}
[DisplayOnly]
public float OnceTime = 0.1f;
private void LateUpdate()
{
if (!GameManage.Instance.is单机模式)
{
if (!isControl)
{
transform.localScale = myvector3;
}
else
{
if (Vector3.Distance(myvector3, transform.localScale) > OnceTime)
{
myvector3 = transform.localScale;
SendSync();
}
}
}
}
}