示例#1
0
        /// <summary>
        /// Extract cartidge data to game folder
        /// </summary>
        public static void ExtractCartridge()
        {
            // FOLDER
            string path = GetRoot() + "/" + uRetroConfig.cartridgesFolder + "/" + uRetroConfig.cartridgeName;

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }

            path = path + "/";
            // CONFIG
            SaveRetroEngineConfig();

            // COLORS
            PNG.Save(path + uRetroConfig.fileColors, uRetroColors.GetAsImage());

            // SPRITES
            PNG.Save(path + uRetroConfig.fileSprites, uRetroSprites.GetAsImage());

            // FONTS
            PNG.Save(path + uRetroConfig.fileFont, uRetroText.GetAsImage());

            // TILEMAPS
            uRetroTilemap.Save();

            // CODE
            File.WriteAllText(path + uRetroConfig.fileLua, uRetroLua.code);

            // INCLUDE

            for (int i = 0; i < uRetroLuaLibrary.include.Count; i++)
            {
                File.WriteAllText(path + uRetroLuaLibrary.include[i].name, uRetroLuaLibrary.include[i].code);
            }

            uRetroConsole.Print("Cartridge extracted to folder: " + uRetroConfig.cartridgeName);
        }
示例#2
0
        public static void CreateGame(string name)
        {
            uRetroConfig.cartridgeName = name;

            string path = GetRoot() + "/" + uRetroConfig.cartridgesFolder + "/" + uRetroConfig.cartridgeName;

            if (!Directory.Exists(path))
            {
                Directory.CreateDirectory(path);
            }

            path = GetRoot() + "/" + uRetroConfig.cartridgesFolder + "/" + uRetroConfig.cartridgeName + "/";

            Texture2D spr = Resources.Load("TemplateData/uRE_Sprites") as Texture2D;

            spr.filterMode = FilterMode.Point;
            spr.Apply();
            PNG.Save(path + uRetroConfig.fileSprites, spr);

            Texture2D pal = Resources.Load("TemplateData/uRE_Colors") as Texture2D;

            pal.filterMode = FilterMode.Point;
            pal.Apply();
            PNG.Save(path + uRetroConfig.fileColors, pal);

            Texture2D fnt = Resources.Load("TemplateData/uRE_Fonts") as Texture2D;

            fnt.filterMode = FilterMode.Point;
            fnt.Apply();
            PNG.Save(path + uRetroConfig.fileFont, fnt);

            string code =
                @"

function OnStart()
end

function OnUpdate(deltaTime)
end

function OnScanline(line)

end

function OnClose()
end

		        "        ;

            File.WriteAllText(path + "main.lua", code);

            string tilemap = JsonConvert.SerializeObject(uRetroTilemap.layers, Formatting.Indented);

            Debug.Log(path + uRetroConfig.fileTilemap);
            File.WriteAllText(path + uRetroConfig.fileTilemap, tilemap);

            SaveRetroEngineConfig();

            uRetroConsole.Show();
            uRetroConsole.Print("Game folder with name '" + name + "' was created.");
            uRetroConsole.Print("Press [Alt+F4] for exit");
        }