예제 #1
0
                #pragma warning restore CS8618

        public override Task Initialize()
        {
            try
            {
                this.lumina = new LuminaData(MemoryService.GamePath + "\\game\\sqpack\\");
            }
            catch (Exception ex)
            {
                throw new Exception("Failed to initialize Lumina (Are your game files up to date?)", ex);
            }

            Races                  = new LuminaSheet <IRace, Race, RaceViewModel>(this.lumina);
            Tribes                 = new LuminaSheet <ITribe, Tribe, TribeViewModel>(this.lumina);
            Items                  = new LuminaSheet <IItem, Lumina.Excel.GeneratedSheets.Item, GameData.ViewModels.ItemViewModel>(this.lumina);
            Dyes                   = new LuminaSheet <IDye, Stain, DyeViewModel>(this.lumina);
            BaseNPCs               = new LuminaSheet <INpcBase, ENpcBase, NpcBaseViewModel>(this.lumina);
            Territories            = new LuminaSheet <ITerritoryType, TerritoryType, TerritoryTypeViewModel>(this.lumina);
            Weathers               = new LuminaSheet <IWeather, Weather, WeatherViewModel>(this.lumina);
            CharacterMakeCustomize = new CustomizeSheet(this.lumina);
            CharacterMakeTypes     = new LuminaSheet <ICharaMakeType, GameData.Sheets.CharaMakeType, CharaMakeTypeViewModel>(this.lumina);
            ResidentNPCs           = new LuminaSheet <INpcResident, ENpcResident, NpcResidentViewModel>(this.lumina);

            // no view models for these
            WeatherRates = this.lumina.GetExcelSheet <WeatherRate>();

            // these are json files that we write by hand
            Monsters = new JsonListSheet <Monster>("Data/Monsters.json");
            Props    = new JsonDictionarySheet <Prop>("Data/Props.json");

            return(base.Initialize());
        }
예제 #2
0
                #pragma warning restore CS8618

        public override Task Initialize()
        {
            string file    = MemoryService.GamePath + "game/ffxivgame.ver";
            string gameVer = File.ReadAllText(file);

            if (gameVer != UpdateService.SupportedGameVersion)
            {
                Log.Error(LocalizationService.GetStringFormatted("Error_WrongVersion", gameVer));
            }

            try
            {
                this.lumina = new LuminaData(MemoryService.GamePath + "\\game\\sqpack\\");
            }
            catch (Exception ex)
            {
                throw new Exception("Failed to initialize Lumina (Are your game files up to date?)", ex);
            }

            Races                  = new LuminaSheet <IRace, Race, RaceViewModel>(this.lumina);
            Tribes                 = new LuminaSheet <ITribe, Tribe, TribeViewModel>(this.lumina);
            Items                  = new LuminaSheet <IItem, Lumina.Excel.GeneratedSheets.Item, GameData.ViewModels.ItemViewModel>(this.lumina);
            Dyes                   = new LuminaSheet <IDye, Stain, DyeViewModel>(this.lumina);
            BaseNPCs               = new LuminaSheet <INpcBase, ENpcBase, NpcBaseViewModel>(this.lumina);
            Territories            = new LuminaSheet <ITerritoryType, TerritoryType, TerritoryTypeViewModel>(this.lumina);
            Weathers               = new LuminaSheet <IWeather, Weather, WeatherViewModel>(this.lumina);
            CharacterMakeCustomize = new CustomizeSheet(this.lumina);
            CharacterMakeTypes     = new LuminaSheet <ICharaMakeType, GameData.Sheets.CharaMakeType, CharaMakeTypeViewModel>(this.lumina);
            ResidentNPCs           = new LuminaSheet <INpcResident, ENpcResident, NpcResidentViewModel>(this.lumina);
            Perform                = new LuminaSheet <IItem, Perform, PerformViewModel>(this.lumina);

            this.lumina.GetExcelSheet <Perform>();

            // no view models for these
            ExcelSheet <WeatherRate>?sheet = this.lumina.GetExcelSheet <WeatherRate>();

            if (sheet == null)
            {
                throw new Exception("No weather sheet");
            }

            WeatherRates = sheet;

            // these are json files that we write by hand
            Monsters = new JsonListSheet <Monster>("Data/Monsters.json");
            Props    = new PropSheet("Data/Props.json");

            return(base.Initialize());
        }
예제 #3
0
                #pragma warning restore CS8618

        public override Task Initialize()
        {
            string file    = MemoryService.GamePath + "game/ffxivgame.ver";
            string gameVer = File.ReadAllText(file);

            if (gameVer != UpdateService.SupportedGameVersion)
            {
                Log.Error(LocalizationService.GetStringFormatted("Error_WrongVersion", gameVer));
            }

            try
            {
                Lumina.LuminaOptions options = new Lumina.LuminaOptions()
                {
                    DefaultExcelLanguage         = Lumina.Data.Language.Korean,
                    PanicOnSheetChecksumMismatch = false,
                };

                this.lumina = new LuminaData(MemoryService.GamePath + "\\game\\sqpack\\", options);
            }
            catch (Exception ex)
            {
                throw new Exception("Failed to initialize Lumina (Are your game files up to date?)", ex);
            }

            Races                  = new LuminaSheet <IRace, Race, RaceViewModel>(this.lumina);
            Tribes                 = new LuminaSheet <ITribe, Tribe, TribeViewModel>(this.lumina);
            Items                  = new LuminaSheet <IItem, GameData.Sheets.Item, GameData.ViewModels.ItemViewModel>(this.lumina);
            Dyes                   = new LuminaSheet <IDye, Stain, DyeViewModel>(this.lumina);
            BaseNPCs               = new LuminaSheet <INpcBase, ENpcBase, NpcBaseViewModel>(this.lumina);
            Territories            = new LuminaSheet <ITerritoryType, GameData.Sheets.TerritoryType, TerritoryTypeViewModel>(this.lumina);
            Weathers               = new LuminaSheet <IWeather, Weather, WeatherViewModel>(this.lumina);
            CharacterMakeCustomize = new CustomizeSheet(this.lumina);
            CharacterMakeTypes     = new LuminaSheet <ICharaMakeType, GameData.Sheets.CharaMakeType, CharaMakeTypeViewModel>(this.lumina);
            ResidentNPCs           = new LuminaSheet <INpcResident, ENpcResident, NpcResidentViewModel>(this.lumina);

            // no view models for these
            WeatherRates = this.lumina.GetExcelSheet <WeatherRate>();

            // these are json files that we write by hand
            Monsters = new JsonListSheet <Monster>("Data/Monsters.json");
            Props    = new JsonDictionarySheet <Prop>("Data/Props.json");

            return(base.Initialize());
        }