1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- using UnityEngine;
- using System.Collections;
- public class MapObjectScaler : MonoBehaviour {
- private float scale;
- private float speed = 0.01f;
- void Update ()
- {
- Vector3 localScale = transform.localScale;
- bool done = false;
- float s = 0;
- if(localScale.x > scale)
- {
- s = localScale.x - speed;
- if(s < scale)
- {
- s = scale;
- done = true;
- }
- }
- else
- {
- s = localScale.x + speed;
- if(s > scale)
- {
- s = scale;
- done = true;
- }
- }
- localScale.x = s;
- localScale.y = s;
- localScale.z = s;
- transform.localScale = localScale;
- if(done)
- Destroy(this);
- }
- public static void Scale(MapObject mapObj, float scale)
- {
- mapObj.gameObject.AddComponent<MapObjectScaler>().scale = scale;
- }
- }
|