private void Start() { this.m_projectile = base.GetComponent <Projectile>(); BulletScriptSource source = this.m_projectile.gameObject.GetOrAddComponent <BulletScriptSource>(); this.m_projectile.gameObject.AddComponent <BulletSourceKiller>(); var bulletScriptSelected = new CustomBulletScriptSelector(typeof(GunjurerSlamPlayerScript)); AIBulletBank bulletBank = DataCloners.CopyAIBulletBank(EnemyDatabase.GetOrLoadByGuid("206405acad4d4c33aac6717d184dc8d4").bulletBank); bulletBank.OnProjectileCreated += this.OnBulletSpawned; foreach (AIBulletBank.Entry bullet in bulletBank.Bullets) { bullet.BulletObject.GetComponent <Projectile>().BulletScriptSettings.preventPooling = true; } source.BulletManager = bulletBank; source.BulletScript = bulletScriptSelected; source.Initialize();//to fire the script once GunjurerSlamPlayerScript spawnedScript = source.RootBullet as GunjurerSlamPlayerScript; spawnedScript.aimDirection = this.m_projectile.Direction.ToAngle(); /*if (this.m_projectile.ProjectilePlayerOwner() != null) * { * spawnedScript.overrideSpeed *= this.m_projectile.ProjectilePlayerOwner().stats.GetStatValue(PlayerStats.StatType.ProjectileSpeed); * }*/ }
public ExpandingBullet(GunjurerSlamPlayerScript parent, Vector2 offset) : base(null, false, false, false) { this.m_parent = parent; this.m_offset = offset; }