31 lines
No EOL
1,017 B
C#
31 lines
No EOL
1,017 B
C#
using System;
|
|
using System.Collections;
|
|
using UnityEngine;
|
|
using Animation = FramedAnimator.Animation;
|
|
using Animator = FramedAnimator.Animator;
|
|
using Random = UnityEngine.Random;
|
|
|
|
namespace View.Scene {
|
|
public class GardenFlower : MonoBehaviour {
|
|
[SerializeField] private SpriteRenderer sprite;
|
|
|
|
[SerializeField] private Animation[] randomAnimation;
|
|
[SerializeField] private Animator animator;
|
|
|
|
private static readonly int WindOffset = Shader.PropertyToID("_WindOffset");
|
|
|
|
[SerializeField] private float randomRotation;
|
|
[SerializeField] private float startRandomMaxDelay;
|
|
|
|
private void Awake() {
|
|
transform.rotation = Quaternion.Euler(0f, 0f, Random.Range(-randomRotation, randomRotation));
|
|
}
|
|
|
|
private IEnumerator Start() {
|
|
sprite.material.SetFloat(WindOffset, Random.Range(0f, 2f * Mathf.PI));
|
|
animator.ChangeAnimation(randomAnimation[Random.Range(0, randomAnimation.Length)]);
|
|
yield return new WaitForSeconds(Random.Range(0f, startRandomMaxDelay));
|
|
animator.PlayUntil(1f);
|
|
}
|
|
}
|
|
} |