Пример #1
0
        ExplosionDeps GetExplosionDependencies(string explosionName,
                                               IEnumerable <TexturePair> texturePairs,
                                               IEnumerable <SpawnerPair> spawners,
                                               IEnumerable <FilePair> filePairs)
        {
            var ret = new ExplosionDeps {
                Name = explosionName
            };

            foreach (var texturePair in texturePairs.Where(p => p.ExplosionName == explosionName).ToArray())
            {
                ret.Textures.Add(texturePair.TextureName);
            }
            foreach (var filePair in filePairs.Where(p => p.ExplosionName == explosionName).ToArray())
            {
                ret.Files.Add(filePair.FilePath);
            }
            // if (explosionName.ToLower() == "roachplosion") Debugger.Break();
            foreach (var sp in spawners.Where(p => p.SpawnerName == explosionName))
            {
                var deps = GetExplosionDependencies(sp.SpawnedExplosion, texturePairs, spawners, filePairs);
                ret.Files.AddRange(deps.Files);
                ret.Textures.AddRange(deps.Textures);
            }
            return(ret);
        }
Пример #2
0
 ExplosionDeps GetExplosionDependencies(string explosionName,
     IEnumerable<TexturePair> texturePairs,
     IEnumerable<SpawnerPair> spawners,
     IEnumerable<FilePair> filePairs)
 {
     var ret = new ExplosionDeps { Name = explosionName };
     foreach (var texturePair in texturePairs.Where(p => p.ExplosionName == explosionName).ToArray())
     {
         ret.Textures.Add(texturePair.TextureName);
     }
     foreach (var filePair in filePairs.Where(p => p.ExplosionName == explosionName).ToArray())
     {
         ret.Files.Add(filePair.FilePath);
     }
     // if (explosionName.ToLower() == "roachplosion") Debugger.Break();
     foreach (var sp in spawners.Where(p => p.SpawnerName == explosionName))
     {
         var deps = GetExplosionDependencies(sp.SpawnedExplosion, texturePairs, spawners, filePairs);
         ret.Files.AddRange(deps.Files);
         ret.Textures.AddRange(deps.Textures);
     }
     return ret;
 }