Beispiel #1
0
 public AssetService(AssetReferences references)
 {
     _prefabs   = new IntMap <GameObject>(references.Prefabs);
     _sprites   = new IntMap <Sprite>(references.Sprites);
     _materials = new IntMap <Material>(references.Materials);
     _fonts     = new IntMap <Font>(references.Fonts);
 }
Beispiel #2
0
        private static void GenerateAssetReferences(CodeGenerator codeGenerator, AssetReferences assetReferences)
        {
            var path = Path.GetFullPath(Path.Combine(codeGenerator.ConstantsPath, "Assets.hs"));

            using (var stream = new StreamWriter(path))
            {
                stream.WriteLine("module " + codeGenerator.ModulePrefix + ".Assets where\n");
                stream.WriteLine("newtype Prefab = Prefab Int");
                stream.WriteLine("newtype Sprite = Sprite Int");
                stream.WriteLine("newtype Material = Material Int");
                stream.WriteLine("newtype Font = Font Int\n");

                for (var i = 0; i < assetReferences.Prefabs.Count; ++i)
                {
                    var name = NormalizeName(assetReferences.Prefabs[i].name);
                    stream.WriteLine(name + " :: Prefab");
                    stream.WriteLine(name + " = Prefab " + i + "\n");
                }

                for (var i = 0; i < assetReferences.Sprites.Count; ++i)
                {
                    var name = NormalizeName(assetReferences.Sprites[i].name);
                    stream.WriteLine(name + " :: Sprite");
                    stream.WriteLine(name + " = Sprite " + i + "\n");
                }

                for (var i = 0; i < assetReferences.Materials.Count; ++i)
                {
                    var name = NormalizeName(assetReferences.Materials[i].name);
                    stream.WriteLine(name + " :: Material");
                    stream.WriteLine(name + " = Material " + i + "\n");
                }

                for (var i = 0; i < assetReferences.Fonts.Count; ++i)
                {
                    var name = NormalizeName(assetReferences.Materials[i].name);
                    stream.WriteLine(name + " :: Font");
                    stream.WriteLine(name + " = Font " + i + "\n");
                }
            }
        }