GSE: Sequences, Variables, Macros

GSE: Sequences, Variables, Macros

7M Downloads

[ENH] Bring back the Repeat Block ;)

Smokenoaken opened this issue ยท 2 comments

commented

๐ŸŸข How does GSE currently work
There was a repeat type block in the Dragonflight version of GSE, before 3.2. I'm asking for it's return.

๐ŸŸข Describe the solution you'd like
I would like a block that would cause the macrotext in said block to be repeated every [defined number] of times throughout a sequence. So, if you do a repeat block with an interval of 3, then every 3rd block would attempt to cast that macrotext block.

๐ŸŸข Describe alternatives you've considered
I have sequences that work Okay... but they could work much better with more control over how often a particular block tries to go off. Priority sequences do not provide that control.

๐ŸŸข Additional context
:( I miss my repeat blocks.

commented

You can now swap a repeat and an action block
image

{
    ["Actions"] = {
        [1] = {
            ["macro"] = "1",
            ["type"] = "macro",
            ["Type"] = "Action"
        },
        [2] = {
            ["macro"] = "x",
            ["type"] = "macro",
            ["Interval"] = "2",
            ["Type"] = "Repeat"
        },
        [3] = {
            ["macro"] = "2",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [4] = {
            ["macro"] = "3",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [5] = {
            ["macro"] = "4",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [6] = {
            ["macro"] = "5",
            ["Type"] = "Action",
            ["type"] = "macro"
        }
    },
    ["InbuiltVariables"] = {
        
    }
}

produces

{
    [1] = {
        ["macro"] = "1",
        ["type"] = "macro"
    },
    [2] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [3] = {
        ["macro"] = "2",
        ["type"] = "macro"
    },
    [4] = {
        ["macro"] = "3",
        ["type"] = "macro"
    },
    [5] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [6] = {
        ["macro"] = "4",
        ["type"] = "macro"
    },
    [7] = {
        ["macro"] = "5",
        ["type"] = "macro"
    },
    [8] = {
        ["macro"] = "x",
        ["type"] = "macro"
    }
}
commented
{
    ["Actions"] = {
        [1] = {
            ["macro"] = "1",
            ["type"] = "macro",
            ["Type"] = "Action"
        },
        [2] = {
            ["macro"] = "x",
            ["type"] = "macro",
            ["Type"] = "Repeat",
            ["Interval"] = "2"
        },
        [3] = {
            ["macro"] = "2",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [4] = {
            ["macro"] = "3",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [5] = {
            ["macro"] = "4",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [6] = {
            ["macro"] = "5",
            ["Type"] = "Action",
            ["type"] = "macro"
        },
        [7] = {
            [1] = {
                ["macro"] = "A",
                ["Type"] = "Action",
                ["type"] = "macro"
            },
            [2] = {
                ["macro"] = "B",
                ["Type"] = "Action",
                ["type"] = "macro"
            },
            [3] = {
                ["macro"] = "C",
                ["Type"] = "Action",
                ["type"] = "macro"
            },
            [4] = {
                ["macro"] = "D",
                ["Type"] = "Action",
                ["type"] = "macro"
            },
            [5] = {
                ["macro"] = "E",
                ["Type"] = "Action",
                ["type"] = "macro"
            },
            ["Type"] = "Loop",
            ["Repeat"] = 2,
            ["StepFunction"] = "ReversePriority"
        }
    },
    ["InbuiltVariables"] = {
        
    }
}

correctly inserts x in to the subtables

{
    [1] = {
        ["macro"] = "1",
        ["type"] = "macro"
    },
    [2] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [3] = {
        ["macro"] = "2",
        ["type"] = "macro"
    },
    [4] = {
        ["macro"] = "3",
        ["type"] = "macro"
    },
    [5] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [6] = {
        ["macro"] = "4",
        ["type"] = "macro"
    },
    [7] = {
        ["macro"] = "5",
        ["type"] = "macro"
    },
    [8] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [9] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [10] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [11] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [12] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [13] = {
        ["macro"] = "C",
        ["type"] = "macro"
    },
    [14] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [15] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [16] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [17] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [18] = {
        ["macro"] = "D",
        ["type"] = "macro"
    },
    [19] = {
        ["macro"] = "C",
        ["type"] = "macro"
    },
    [20] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [21] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [22] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [23] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [24] = {
        ["macro"] = "E",
        ["type"] = "macro"
    },
    [25] = {
        ["macro"] = "D",
        ["type"] = "macro"
    },
    [26] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [27] = {
        ["macro"] = "C",
        ["type"] = "macro"
    },
    [28] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [29] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [30] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [31] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [32] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [33] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [34] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [35] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [36] = {
        ["macro"] = "C",
        ["type"] = "macro"
    },
    [37] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [38] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [39] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [40] = {
        ["macro"] = "D",
        ["type"] = "macro"
    },
    [41] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [42] = {
        ["macro"] = "C",
        ["type"] = "macro"
    },
    [43] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [44] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [45] = {
        ["macro"] = "A",
        ["type"] = "macro"
    },
    [46] = {
        ["macro"] = "E",
        ["type"] = "macro"
    },
    [47] = {
        ["macro"] = "x",
        ["type"] = "macro"
    },
    [48] = {
        ["macro"] = "D",
        ["type"] = "macro"
    },
    [49] = {
        ["macro"] = "C",
        ["type"] = "macro"
    },
    [50] = {
        ["macro"] = "B",
        ["type"] = "macro"
    },
    [51] = {
        ["macro"] = "A",
        ["type"] = "macro"
    }
}