Example #1
0
 void DuplicatePreset(EditPreset editPreset)
 {
     AppDataSet.Instance.DuplicatePreset(editPreset);
     presets.Find(p => p.editPreset == editPreset).Expand(false);
     AppDataSet.Instance.SaveData();
     RefreshView();
 }
Example #2
0
    public EditPreset DuplicatePreset(EditPreset editPreset)
    {
        var newPreset = editPreset.Duplicate();

        presets.Add(newPreset);
        return(newPreset);
    }
Example #3
0
        /// <summary>
        /// When editing the selected preset.
        /// </summary>
        private void OnEdit()
        {
            // Can't do unless game is loaded.
            if (!CheckCanDo())
            {
                return;
            }

            try
            {
                if (SelectedItem == null)
                {
                    return;
                }

                // Create Edit preset window.
                var win = new EditPreset
                {
                    // Owner set to MainWindow.
                    Owner = Application.Current.MainWindow
                };

                // Get the view model.
                var vm = win.DataContext as EditPresetViewModel;

                // Set the name to the selected name in the preset list.
                vm.Name = SelectedItem.Name;

                // Dialog comes back as true.
                if (win.ShowDialog() == true)
                {
                    // Set the selected name to the viewmodel's name.
                    SelectedItem.Name = vm.Name;

                    // If we use the current waymarks, set them in our preset.
                    if (vm.UseCurrentWaymarks)
                    {
                        SelectedItem.A     = GameMemory.A;
                        SelectedItem.B     = GameMemory.B;
                        SelectedItem.C     = GameMemory.C;
                        SelectedItem.D     = GameMemory.D;
                        SelectedItem.One   = GameMemory.One;
                        SelectedItem.Two   = GameMemory.Two;
                        SelectedItem.Three = GameMemory.Three;
                        SelectedItem.Four  = GameMemory.Four;
                        SelectedItem.MapID = GameMemory.MapID;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Something happened while editing your preset!", "Paisley Park", MessageBoxButton.OK, MessageBoxImage.Error);
                logger.Error(ex, "Exception while editing selected item.");
            }
        }
Example #4
0
 void DeletePreset(EditPreset editPreset)
 {
     PixelsApp.Instance.ShowDialogBox("Delete Preset?", "Are you sure you want to delete " + editPreset.name + "?", "Ok", "Cancel", res =>
     {
         if (res)
         {
             AppDataSet.Instance.DeletePreset(editPreset);
             AppDataSet.Instance.SaveData();
             RefreshView();
         }
     });
 }
Example #5
0
    public EditPreset AddNewDefaultPreset()
    {
        var newPreset = new EditPreset();

        newPreset.name = "New Profile";
        newPreset.dieAssignments.Add(new EditDieAssignment()
        {
            die      = null,
            behavior = null
        });
        presets.Add(newPreset);
        return(newPreset);
    }
Example #6
0
 void ExpandPreset(EditPreset editPreset)
 {
     foreach (var uip in presets)
     {
         if (uip.editPreset == editPreset)
         {
             uip.Expand(!uip.isExpanded);
         }
         else
         {
             uip.Expand(false);
         }
     }
 }
Example #7
0
    UIHomePresetToken CreatePresetToken(EditPreset preset)
    {
        // Create the gameObject
        var ret = GameObject.Instantiate <UIHomePresetToken>(presetTokenPrefab, Vector3.zero, Quaternion.identity, presetsRoot.transform);

        // When we click on the pattern main button, go to the edit page
        ret.onClick.AddListener(() =>
        {
            ActivatePreset(preset);
        });

        // Initialize it
        ret.Setup(preset);
        return(ret);
    }
Example #8
0
    UIPresetToken CreatePresetToken(EditPreset preset)
    {
        // Create the gameObject
        var ret = GameObject.Instantiate <UIPresetToken>(presetTokenPrefab, Vector3.zero, Quaternion.identity, contentRoot.transform);

        spacer.SetAsLastSibling();

        // When we click on the pattern main button, go to the edit page
        ret.onClick.AddListener(() => NavigationManager.Instance.GoToPage(UIPage.PageId.Preset, preset));
        ret.onEdit.AddListener(() => NavigationManager.Instance.GoToPage(UIPage.PageId.Preset, preset));
        ret.onDuplicate.AddListener(() => DuplicatePreset(preset));
        ret.onRemove.AddListener(() => DeletePreset(preset));
        ret.onExpand.AddListener(() => ExpandPreset(preset));

        addPresetButton.transform.SetAsLastSibling();

        // Initialize it
        ret.Setup(preset);
        return(ret);
    }
Example #9
0
    public void Setup(EditPreset preset)
    {
        this.editPreset = preset;
        var designs = new List <DesignAndColor>(preset.dieAssignments.Select(ass => (ass.die != null) ? ass.die.designAndColor : DesignAndColor.Unknown));

        this.dieRenderer = DiceRendererManager.Instance.CreateMultiDiceRenderer(designs, 400);
        if (dieRenderer != null)
        {
            presetRenderImage.texture = dieRenderer.renderTexture;
        }
        presetNameText.text = preset.name;

        dieRenderer.rotating = true;
        for (int i = 0; i < preset.dieAssignments.Count; ++i)
        {
            if (preset.dieAssignments[i].behavior != null)
            {
                dieRenderer.SetDieAnimations(i, preset.dieAssignments[i].behavior.CollectAnimations().Where(anim => anim != null));
                dieRenderer.Play(i, false);
            }
        }
        RefreshState();
    }
Example #10
0
 public void DeletePreset(EditPreset editPreset)
 {
     presets.Remove(editPreset);
 }