57 lines
1.1 KiB
C#
57 lines
1.1 KiB
C#
using UnityEngine;
|
|
|
|
namespace Artngame.SKYMASTER
|
|
{
|
|
[ExecuteInEditMode]
|
|
public class Circle_Around_ParticleSKYMASTER : MonoBehaviour
|
|
{
|
|
private Transform trans;
|
|
|
|
public float speedMult = 2f;
|
|
|
|
public bool up_down_motion;
|
|
|
|
public bool Shock_effect;
|
|
|
|
public float up_down_speed = 1f;
|
|
|
|
public float up_down_multiply = 1f;
|
|
|
|
public float JITTER = 5f;
|
|
|
|
public Transform sphereObject;
|
|
|
|
private void Start()
|
|
{
|
|
trans = base.transform;
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
}
|
|
|
|
private void FixedUpdate()
|
|
{
|
|
if (!(sphereObject != null))
|
|
{
|
|
return;
|
|
}
|
|
float num = speedMult;
|
|
if (Shock_effect)
|
|
{
|
|
num = Random.Range(speedMult - 1.1f, speedMult + JITTER);
|
|
}
|
|
trans.RotateAround(sphereObject.position, Vector3.up, num * 20f * Time.deltaTime);
|
|
if (up_down_motion)
|
|
{
|
|
float num2 = up_down_speed;
|
|
if (Shock_effect)
|
|
{
|
|
num2 = Random.Range(up_down_speed - 0.1f, up_down_speed + JITTER / 10f);
|
|
}
|
|
trans.position = new Vector3(trans.position.x, sphereObject.transform.position.y + up_down_multiply * Mathf.Cos(Time.fixedTime + num2), trans.position.z);
|
|
}
|
|
}
|
|
}
|
|
}
|