using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Saltosion.OneWeapon.Guns { public class ShotgunBullet : MonoBehaviour { public Bullet SubBullet; public int BulletsShot; public float TotalArc; private Bullet Bullet; void Start() { Bullet = GetComponent(); Vector2 Direction = Bullet.Direction; float Rot = Bullet.InitialRotation; Vector2 BaseDirection = Quaternion.AngleAxis(TotalArc / 2, Vector3.forward) * Direction; float Rotation = Mathf.Atan2(BaseDirection.y, BaseDirection.x) * Mathf.Rad2Deg + 90; for (int i = 0; i < BulletsShot; i++) { float CurrentAngle = -i * (TotalArc / (BulletsShot - 1)); Vector2 CurrentDirection = Quaternion.AngleAxis(CurrentAngle, Vector3.forward) * BaseDirection; Bullet ShotBullet = GameObject.Instantiate(SubBullet, transform.position, new Quaternion()); ShotBullet.Direction = CurrentDirection; ShotBullet.InitialRotation = Rotation + CurrentAngle; } Destroy(gameObject); } } }