2025-05-18 01:04:31 +08:00

75 lines
1.7 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using UnityEngine;
public class Bomb_b11 : MonoBehaviour
{
public float uvspeed = 1f;
public float hitrate = 0.2f;
public float startdelay = 0.1f;
public float finishdelay = 3f;
private float delay;
private Material mymaterial;
private Collider mycollider;
private Vector2 offset;
private Transform mytransform;
private float scalefactor = 12f;
#pragma warning disable CS0649 // 从未对字段“Bomb_b11.particleoff”赋值字段将一直保持其默认值 false
private bool particleoff;
#pragma warning restore CS0649 // 从未对字段“Bomb_b11.particleoff”赋值字段将一直保持其默认值 false
private void Awake()
{
mytransform = base.transform;
mymaterial = base.GetComponent<Renderer>().sharedMaterial;
mycollider = base.GetComponent<Collider>();
}
private void OnEnable()
{
offset = Vector2.zero;
mymaterial.mainTextureOffset = Vector2.zero;
InvokeRepeating("DanceHit", startdelay, hitrate);
mytransform.localScale = Vector3.one * 2f;
delay = 0f;
scalefactor = 12f;
//mytransform.GetChild(0).particleEmitter().emit = true;
}
private void DanceHit()
{
mycollider.enabled = false;
mycollider.enabled = true;
}
private void Update()
{
offset += Vector2.up * Time.deltaTime * uvspeed;
if (delay > finishdelay)
{
CancelInvoke();
mycollider.enabled = false;
mytransform.position = Vector3.one * 38f;
base.gameObject.SetActive(false);
delay = 0f;
return;
}
scalefactor -= Time.deltaTime * 10f;
delay += Time.deltaTime;
mymaterial.mainTextureOffset = offset;
mytransform.localScale += Vector3.one * Time.deltaTime * scalefactor;
if (!particleoff && delay > 0.5f)
{
mytransform.GetChild(0).particleEmitter().emit = false;
}
}
}