예제 #1
0
        /// <summary>
        /// Setup the content manager so it knows where to find various files.
        /// </summary>
        private void Init()
        {
            /** Scan system for files **/
            var allFiles = new List <string>();

            _ScanFiles(BasePath, allFiles);
            AllFiles = allFiles.ToArray();

            PIFFRegistry.Init("Content/Patch/");
            Archives = new Dictionary <string, FAR3Archive>();
            UIGraphics.Init();
            AvatarMeshes.Init();
            AvatarBindings.Init();
            AvatarTextures.Init();
            AvatarSkeletons.Init();
            AvatarAppearances.Init();
            AvatarOutfits.Init();
            AvatarAnimations.Init();
            Audio.Init();
            AvatarPurchasables.Init();
            AvatarHandgroups.Init();
            AvatarThumbnails.Init();

            InitWorld();
        }
예제 #2
0
        private void InitBasic()
        {
            var contentFiles = new List <string>();

            _ScanFiles("Content/", contentFiles, "Content/");
            ContentFiles = contentFiles.ToArray();
            CustomUI.Init();
            if (!TS1)
            {
                var allFiles = new List <string>();
                _ScanFiles(BasePath, allFiles, BasePath);
                AllFiles = allFiles.ToArray();
                UIGraphics?.Init();
                DataDefinition = new TSODataDefinition();
                using (var stream = File.OpenRead(GetPath("TSOData_datadefinition.dat")))
                {
                    DataDefinition.Read(stream);
                }
            }
        }
예제 #3
0
        private void InitBasic()
        {
            var contentFiles = new List <string>();

            _ScanFiles("Content/", contentFiles, "Content/");
            ContentFiles = contentFiles.ToArray();
            CustomUI.Init();
            if (!TS1)
            {
                var allFiles = new List <string>();
                _ScanFiles(BasePath, allFiles, BasePath);
                AllFiles = allFiles.ToArray();
                UIGraphics?.Init();
                DataDefinition = new TSODataDefinition();
                try
                {
                    using (var stream = File.Open("Content/FSODataDefinition.dat", FileMode.Open, FileAccess.Read, FileShare.Read))
                    {
                        DataDefinition.Read(stream);
                    }
                }
                catch
                {
                    using (var stream = File.OpenRead(GetPath("TSOData_datadefinition.dat")))
                    {
                        DataDefinition.Read(stream);
                    }
                }

                try
                {
                    VersionString = File.ReadAllText(GetPath("version"));
                }
                catch { }
            }
            else
            {
                VersionString = "TS1";
            }
        }
예제 #4
0
        /// <summary>
        /// Setup the content manager so it knows where to find various files.
        /// </summary>
        private void Init()
        {
            Inited = true;
            if (!TS1)
            {
                Audio.Init();
            }
            /** Scan system for files **/
            if (AllFiles == null)
            {
                LoadProgress = ContentLoadingProgress.ScanningFiles;
                var allFiles = new List <string>();
                if (Target != FSOEngineMode.TS1)
                {
                    _ScanFiles(BasePath, allFiles, BasePath);
                    AllFiles = allFiles.ToArray();
                }
            }

            var ts1AllFiles = new List <string>();
            var oldBase     = BasePath;

            if (TS1)
            {
                _ScanFiles(TS1BasePath, ts1AllFiles, TS1BasePath);
                TS1AllFiles = ts1AllFiles.ToArray();
            }

            LoadProgress = ContentLoadingProgress.InitGlobal;
            TS1Global?.Init();
            LoadProgress = ContentLoadingProgress.InitBCF;
            BCFGlobal?.Init();

            if (!TS1)
            {
                PIFFRegistry.Init(Path.Combine(FSOEnvironment.ContentDir, "Patch/"));
            }
            else
            {
                PIFFRegistry.Init(Path.Combine(FSOEnvironment.ContentDir, "TS1Patch/"));
            }

            LoadProgress = ContentLoadingProgress.InitAvatars;
            _archives    = new Dictionary <string, FAR3Archive>();
            if (Target != FSOEngineMode.TS1 && Mode == ContentMode.CLIENT)
            {
                UIGraphics.Init();
            }

            if (TS1)
            {
                ((TS1AvatarTextureProvider)AvatarTextures)?.Init();
                ((TS1BMFProvider)AvatarMeshes)?.Init();
                Jobs         = new TS1JobProvider(TS1Global);
                Neighborhood = new TS1NeighborhoodProvider(this);
            }
            else
            {
                if (Mode == ContentMode.CLIENT)
                {
                    AvatarHandgroups.Init();
                }
                AvatarBindings.Init();
                AvatarOutfits.Init();
                AvatarPurchasables.Init();
                AvatarCollections.Init();
                AvatarThumbnails.Init();
                ((AvatarTextureProvider)AvatarTextures)?.Init();
                ((AvatarAnimationProvider)AvatarAnimations).Init();
                ((AvatarSkeletonProvider)AvatarSkeletons).Init();
                ((AvatarAppearanceProvider)AvatarAppearances).Init();
                ((AvatarMeshProvider)AvatarMeshes)?.Init();
                CityMaps.Init();
                RackOutfits.Init();
                Ini.Init();
            }

            LoadProgress = ContentLoadingProgress.InitAudio;
            if (TS1)
            {
                Audio.Init();
            }

            InitWorld();
        }
예제 #5
0
파일: Content.cs 프로젝트: fourks/FreeSO
        /// <summary>
        /// Setup the content manager so it knows where to find various files.
        /// </summary>
        private void Init()
        {
            /** Scan system for files **/
            var allFiles = new List <string>();

            _ScanFiles(BasePath, allFiles);
            AllFiles = allFiles.ToArray();

            var ts1AllFiles = new List <string>();
            var oldBase     = BasePath;

            if (TS1)
            {
                BasePath = TS1BasePath;
                _ScanFiles(TS1BasePath, ts1AllFiles);
                BasePath    = oldBase;
                TS1AllFiles = ts1AllFiles.ToArray();
            }

            TS1Global?.Init();
            BCFGlobal?.Init();

            if (!TS1)
            {
                PIFFRegistry.Init(Path.Combine(FSOEnvironment.ContentDir, "Patch/"));
            }
            Archives = new Dictionary <string, FAR3Archive>();
            if (Mode == ContentMode.CLIENT)
            {
                UIGraphics.Init();
                AvatarHandgroups.Init();
            }

            AvatarBindings.Init();
            AvatarOutfits.Init();
            if (TS1)
            {
                ((TS1AvatarTextureProvider)AvatarTextures)?.Init();
                ((TS1BMFProvider)AvatarMeshes)?.Init();
                Jobs         = new TS1JobProvider(TS1Global);
                Neighborhood = new TS1NeighborhoodProvider(this);
            }
            else
            {
                ((AvatarTextureProvider)AvatarTextures)?.Init();
                ((AvatarAnimationProvider)AvatarAnimations).Init();
                ((AvatarSkeletonProvider)AvatarSkeletons).Init();
                ((AvatarAppearanceProvider)AvatarAppearances).Init();
                ((AvatarMeshProvider)AvatarMeshes)?.Init();
            }

            Audio.Init();
            AvatarPurchasables.Init();
            AvatarCollections.Init();
            Ini.Init();
            CityMaps.Init();
            RackOutfits.Init();

            DataDefinition = new TSODataDefinition();
            using (var stream = File.OpenRead(GetPath("TSOData_datadefinition.dat")))
            {
                DataDefinition.Read(stream);
            }

            AvatarThumbnails.Init();

            InitWorld();
        }