示例#1
0
 public BossModeMonitoringScript(Game game, Boss boss, float bossModeActivationDistance)
 {
     _bossService = game.Services.GetService<BossModeService>();
     _bossService.Boss = boss;
     _bossModeActivationDistance = bossModeActivationDistance;
     _bossService.Boss.Die += (o, e) => _bossService.SwithBossModeOff();
 }
示例#2
0
 public BossAttackScript(Game game, Boss boss)
 {
     _game = game;
     _boss = boss;
 }
示例#3
0
文件: Boss.cs 项目: sergik/Cardio
        public static Boss FromMetadata(BossMetadata metadata, ContentManager contentManager)
        {
            var boss = new Boss();
            FillWithMetadata(boss, metadata, contentManager);
            boss.AttackDamage = metadata.AttackDamage;

            boss.GenerateScript = new GenerateEnemiesScript();

            foreach(var enemyType in metadata.EnemyTypes)
            {
                boss.GenerateScript.EnemyTypes.Add(enemyType);
            }

            boss.GenerateScript.EnemiesToGenerateMin = metadata.EnemiesToGenerateMin;
            boss.GenerateScript.EnemiesToGenerateMax = metadata.EnemiesToGenerateMax;
            boss.GenerateScript.GenerateEnemiesIntervalMin = TimeSpan.FromSeconds(metadata.GenerateEnemiesIntervalMin);
            boss.GenerateScript.GenerateEnemiesIntervalMax = TimeSpan.FromSeconds(metadata.GenerateEnemiesIntervalMax);
            boss.GenerateScript.GenerationStartDistance = 600;

            boss.AttackRange = metadata.AttackRange;
            boss.AttackDamage = metadata.AttackDamage;
            boss.AttackInterval = metadata.AttackInterval;
            boss.AttackRateMax = metadata.AttackRateMax;
            boss.AttackRateMin = metadata.AttackRateMin;
            boss.BulletSpeed = metadata.BulletSpeed;
            boss.BulletContentPath = metadata.BulletContentPath;
            boss.AttackMode = -1;
            boss._generating = false;

            boss.AddScript(boss.GenerateScript);
            return boss;
        }
示例#4
0
文件: Level.cs 项目: sergik/Cardio
 public void AddBoss(Boss boss)
 {
     boss.Level = this;
     AddEnemy(boss);
 }
 public GroupSwitchNearBossScript(Boss boss)
 {
     _boss = boss;
 }