• Hail, we're RedGuides. We want you to play six (yes, 6!) EverQuest characters at once. We have scripts and a friendly community to help, please join our playstyle and say hello! 👋

Question - Looping in a maco . . .

There are a few ways. A for loop (easiest, most convenient for this scenario), a while loop, and adding an iterator to your alreadymade goto.

For Loop:
for loop
Code:
Sub Main
    /declare i int local 0
    /for i 1 to 8
        /whateveryouwanttodo8times
    /next i
    /code after
/return

While Loop:
while loop
INI:
Sub Main
    /declare i int local 0
    /while (${i} < 8) {
        /docode8times
        /varcalc i ${i} + 1
    }
    /code after
/return

Adding an iterator to what you have already
goto
INI:
Sub Main
    /declare i int local 0
    :loop
        /dowhatever you want here
        /varcalc i ${i} + 1
    /if (${i} < 8) /goto :loop
    /code after
/return

Standard coding practices say to use a for loop for this scenario. While loops are also acceptable (like if you want to create 8 of an item but fail once, you can say while(item I want < 8). Goto loops make your code look a little sloppy and once you start calling subs and trying to navigate your subs with gotos, it can (and probably will) get really messy really quick.
 
Question - Looping in a maco . . .

Users who are viewing this thread

Back
Top
Cart