internal void Initialize(UDEEnemy originEnemy, UDEAbstractBullet[] bulletPrefabs, Func <LambdaShotPattern, List <UDEAbstractBullet>, UDEEnemy, IEnumerator> pattern, RemoveBulletsOnDeath removeBulletsOnDeath) { this.patternFunc = pattern; patternBullets = new List <UDEAbstractBullet>(); patternBullets.AddRange(bulletPrefabs); this.removeBullets = removeBulletsOnDeath; base.Initialize(originEnemy); }
public void Initialize(Func <LambdaShotPattern, List <UDEAbstractBullet>, UDEEnemy, IEnumerator> pattern, int health, RemoveBulletsOnDeath removeBulletsOnDeath, params UDEAbstractBullet[] bulletPrefabs) { GameObject patternObj = new GameObject("lambdaPattern", typeof(LambdaShotPattern)); patternObj.transform.parent = this.transform; LambdaShotPattern patternScrpt = patternObj.GetComponent <LambdaShotPattern>(); patternScrpt.Initialize(this, bulletPrefabs, pattern, removeBulletsOnDeath); this.shotPatterns = new List <ShotPattern>(); shotPatterns.Add(new ShotPattern() { health = health, shotPattern = patternScrpt }); base.Initialize(); }