public void SaveSaber(SaberSet saberSet, string fileName)
        {
            var serializableSaberSet = new SerializableSaberSet();

            serializableSaberSet.SaberLeft  = GetSerializableSaber(saberSet.LeftSaber);
            serializableSaberSet.SaberRight = GetSerializableSaber(saberSet.RightSaber);
            var file = _presetDir.GetFile(fileName);

            File.WriteAllText(file.FullName, JsonConvert.SerializeObject(serializableSaberSet, Formatting.Indented));
        }
Exemple #2
0
 protected CustomSaberUI(
     SiraLog logger,
     CustomScreen.Factory screenFactory,
     BaseGameUiHandler baseGameUiHandler,
     PhysicsRaycasterWithCache physicsRaycaster,
     SaberSet saberSet)
     : base(logger, screenFactory, baseGameUiHandler, physicsRaycaster)
 {
     _saberSet = saberSet;
 }
Exemple #3
0
 protected CustomSaberUiComposition(
     SiraLog logger,
     CustomScreen.Factory screenFactory,
     BaseGameUiHandler baseGameUiHandler,
     PhysicsRaycasterWithCache physicsRaycaster,
     BsmlDecorator bsmlDecorator,
     SaberSet saberSet)
     : base(logger, screenFactory, baseGameUiHandler, physicsRaycaster, bsmlDecorator)
 {
     _saberSet = saberSet;
 }
        private GameSaberSetup(PluginConfig config, SaberSet saberSet, MainAssetStore mainAssetStore, [Inject(Id = "beatmapdata")] BeatmapData beatmapData)
        {
            _config         = config;
            _saberSet       = saberSet;
            _mainAssetStore = mainAssetStore;
            _beatmapData    = beatmapData;

            _oldLeftSaberModel  = _saberSet.LeftSaber;
            _oldRightSaberModel = _saberSet.RightSaber;

            Setup();
        }
        public async Task LoadSaber(SaberSet saberSet, string fileName)
        {
            var file = _presetDir.GetFile(fileName);

            if (!file.Exists)
            {
                return;
            }

            await saberSet.LoadFromFile(_serializer, file.FullName);

            OnSaberLoaded?.Invoke();
        }
        private GameSaberSetup(PluginConfig config, SaberSet saberSet, MainAssetStore mainAssetStore,
                               IReadonlyBeatmapData beatmap, RandomUtil randomUtil)
        {
            _config         = config;
            _saberSet       = saberSet;
            _mainAssetStore = mainAssetStore;
            _beatmapData    = beatmap.CastChecked <BeatmapData>();
            _randomUtil     = randomUtil;

            _oldLeftSaberModel  = _saberSet.LeftSaber;
            _oldRightSaberModel = _saberSet.RightSaber;

            Setup();
        }
Exemple #7
0
        public EditorInstanceManager(SiraLog logger, SaberSet saberSet, PresetSaveManager presetSaveManager, SaberInstance.Factory saberFactory)
        {
            _logger       = logger;
            _saberSet     = saberSet;
            _saberFactory = saberFactory;

            SelectedDefinition = AssetTypeDefinition.CustomSaber;

            presetSaveManager.OnSaberLoaded += delegate
            {
                if (saberSet.LeftSaber.GetCustomSaber(out var customsaber))
                {
                    SetModelComposition(customsaber.ModelComposition, false);
                }
            };
        }
Exemple #8
0
        private Editor(
            SiraLog logger,
            PluginConfig pluginConfig,
            SaberFactoryUI saberFactoryUi,
            EditorInstanceManager editorInstanceManager,
            EmbeddedAssetLoader embeddedAssetLoader,
            SaberSet saberSet)
        {
            _logger                = logger;
            _pluginConfig          = pluginConfig;
            _saberFactoryUi        = saberFactoryUi;
            _editorInstanceManager = editorInstanceManager;
            _saberSet              = saberSet;

            _pedestal   = new Pedestal(embeddedAssetLoader);
            _sfLogoAnim = new SFLogoAnim(embeddedAssetLoader);
        }
        public async Task LoadSaber(SaberSet saberSet, string fileName)
        {
            var file = _presetDir.GetFile(fileName);

            if (!file.Exists)
            {
                return;
            }
            var data = await Readers.BytesToString(await Readers.ReadFileAsync(file.FullName));

            var serializableSaberSet = JsonConvert.DeserializeObject <SerializableSaberSet>(data);

            await LoadSaberModel(saberSet.LeftSaber, serializableSaberSet.SaberLeft);
            await LoadSaberModel(saberSet.RightSaber, serializableSaberSet.SaberRight);

            OnSaberLoaded?.Invoke();
        }
 public async Task SaveSaber(SaberSet saberSet, string fileName)
 {
     var file = _presetDir.GetFile(fileName);
     await saberSet.SaveToFile(_serializer, file.FullName);
 }
Exemple #11
0
 internal MenuSaberProvider(SaberInstance.Factory saberInstanceFactory, SaberSet saberSet)
 {
     _saberInstanceFactory = saberInstanceFactory;
     _saberSet             = saberSet;
 }