// ***********************************************************************
// Assembly : Game
// Author : Kimch
// Created : 2020-09-02
// Description :
// Last Modified By :
// Last Modified On :
// ***********************************************************************
//
//
// ***********************************************************************
namespace G
{
using UnityEngine;
///
/// 扩散箭
///
public class Bullet_arrow_spread : MonoBehaviour
{
public float bullet_speed;
public int spread_count;
public int spread_angle;
public Transform sub_arrow;
private Transform _sub1;
private Transform _sub2;
private EnemyDamage _wd;
private bool _createSub;
private void Awake()
{
_wd = GetComponent();
}
private void OnEnable()
{
_createSub = false;
}
private void Update()
{
if (!_createSub && spread_count > 0)
{
_createSub = true;
for (int i = 0; i < spread_count; i++)
{
Vector3 eulerAngles = transform.eulerAngles;
var a = Quaternion.Euler(eulerAngles.x, eulerAngles.y + spread_angle * (i + 1), 0f);
_sub1 = Object.Instantiate(sub_arrow, transform.position, a);
_sub1.GetComponent().PressDamage(_wd.damage);
Object.Destroy(_sub1.gameObject, 1f);
var b = Quaternion.Euler(eulerAngles.x, eulerAngles.y - spread_angle * (i + 1), 0f);
_sub2 = Object.Instantiate(sub_arrow, transform.position, b);
_sub2.GetComponent().PressDamage(_wd.damage);
Object.Destroy(_sub2.gameObject, 1f);
}
}
Vector3 position = transform.position;
if (position.y > 0f)
{
transform.position = position + this.transform.forward * (bullet_speed * Time.deltaTime);
}
}
}
}