public QuestRewardPatternWindow(Quest quest, QuestRewardPattern pattern)
    {
        InitializeComponent();

        _quest   = quest;
        _pattern = pattern;

        RefreshWindowControls();
    }
Exemplo n.º 2
0
    private void CreateDynamicValueButton_Click(object sender, RoutedEventArgs e)
    {
        var newQuestRewardPattern = new QuestRewardPattern
        {
            Quantity = 1
        };

        _questRewardPatterns.Add(newQuestRewardPattern);

        var tempButton = new Button
        {
            Tag = newQuestRewardPattern
        };

        EditDynamicValue_Click(tempButton, null);
    }
Exemplo n.º 3
0
    private Grid CreateDynamicValueGrid(QuestRewardPattern pattern)
    {
        var grid = new Grid();

        var idBlock = new TextBlock
        {
            FontSize            = 18,
            VerticalAlignment   = VerticalAlignment.Center,
            HorizontalAlignment = HorizontalAlignment.Left,
            Margin    = new Thickness(10, 0, 0, 0),
            FontStyle = FontStyles.Italic,
            Text      = $"[{pattern.QuestRewardId}]"
        };

        // new TextBlock
        // {
        //  FontSize = 18,
        //  VerticalAlignment = VerticalAlignment.Center,
        //  HorizontalAlignment = HorizontalAlignment.Left,
        //  Margin = new Thickness(80, 0, 0, 0),
        //  Text = pattern.QuestRewardType.ToString()
        // };

        var nameBlock = new TextBlock
        {
            FontSize            = 18,
            VerticalAlignment   = VerticalAlignment.Center,
            HorizontalAlignment = HorizontalAlignment.Left,
            Margin = new Thickness(80, 0, 0, 0)
        };

        var quantityBlock = new TextBlock()
        {
            FontSize            = 18,
            VerticalAlignment   = VerticalAlignment.Center,
            HorizontalAlignment = HorizontalAlignment.Left,
            Margin = new Thickness(480, 0, 0, 0),
            Text   = pattern.Quantity.ToString()
        };

        switch (pattern.QuestRewardType)
        {
        case RewardType.Material:
            nameBlock.Text = GameAssets.Materials.FirstOrDefault(x => x.Id == pattern.QuestRewardId).Name;
            break;

        case RewardType.Recipe:
            nameBlock.Text = GameAssets.Recipes.FirstOrDefault(x => x.Id == pattern.QuestRewardId).Name;
            break;

        case RewardType.Artifact:
            nameBlock.Text = GameAssets.Artifacts.FirstOrDefault(x => x.Id == pattern.QuestRewardId).Name;
            break;

        case RewardType.Blessing:
            nameBlock.Text = GameAssets.Blessings.FirstOrDefault(x => x.Id == pattern.QuestRewardId).Name;
            break;

        case RewardType.Ingot:
            nameBlock.Text = GameAssets.Ingots.FirstOrDefault(x => x.Id == pattern.QuestRewardId).Name;
            break;
        }

        var editButton = new Button
        {
            Width               = 30,
            Height              = 30,
            Margin              = new Thickness(5, 0, 90, 0),
            Padding             = new Thickness(0),
            HorizontalAlignment = HorizontalAlignment.Right,
            Tag = pattern
        };

        var editIcon = new PackIcon
        {
            Width      = 20,
            Height     = 20,
            Kind       = PackIconKind.Edit,
            Foreground = (SolidColorBrush)FindResource("BrushGray2")
        };

        editButton.Content = editIcon;

        editButton.Click += EditDynamicValue_Click;

        var deleteButton = new Button
        {
            Width               = 30,
            Height              = 30,
            Margin              = new Thickness(5, 0, 50, 0),
            Tag                 = pattern,
            Padding             = new Thickness(0),
            HorizontalAlignment = HorizontalAlignment.Right
        };

        var deleteIcon = new PackIcon
        {
            Width      = 20,
            Height     = 20,
            Kind       = PackIconKind.DeleteForever,
            Foreground = (SolidColorBrush)FindResource("BrushGray2")
        };

        deleteButton.Content = deleteIcon;

        deleteButton.Click += DeleteDynamicValue_Click;

        grid.Children.Add(idBlock);
        grid.Children.Add(nameBlock);
        grid.Children.Add(quantityBlock);
        grid.Children.Add(editButton);
        grid.Children.Add(deleteButton);

        return(grid);
    }