"For each integer A/B" - what does that mean and how does it work?

tommerbob

Minecraft. :D
Reaction score
110
It represents an Integer. It is a loop action that runs through the specified number of loops. So if you are doing several actions with sequential numbers, you can use this action to make it easier. Example:

Trigger:
  • For Each Integer A (1 to 10) do Actions -
    • Loop - Actions
      • Set New_Integer = (Integer A)


That will set a new integer variable 10 times. It is the exact same thing as doing this:

Trigger:
  • Actions
    • Set New_Integer = 1
    • Set New_Integer = 2
    • Set New_Integer = 3
    • ...
    • Set New_Integer = 10


NOTE:
The only the thing to remember is that (Integer A) and (Integer B) are global variables, which means that if you use them several times in the same trigger, make sure they do not overlap or they will overwrite each other's data. That's what (Integer B) is for: You can use it inside an (Integer A) loop. Example:

Trigger:
  • For each Integer A (1 to 10) do Actions -
    • Loop - Actions
      • Set New_Integer = (Integer A)
      • For each Integer B (11 to 20) do Actions -
        • Loop - Actions
          • Set Brand_New_Integer = (Integer B)


With that you have 2 variables, one that is set ten times from 1 to 10, and the second is also set 10 times, from 11 to 20. Of course that would be completely useless, but its just an example.

They are especially useful when using arrays, because you can use one loop action to set multiple variables with an array.
 

tommerbob

Minecraft. :D
Reaction score
110
There isn't a point, it was just an example of how to use the (Integer A) function. They are useful when dealing with arrays, where you access certain integers that have data, such as Player Numbers, Unit Groups, etc.
 

keychup

Active Member
Reaction score
34
He means "What's the point of having integer A/B"

Well it makes it easier to do loops with specifications.

Example:
Player (Integer A)

If you use (For each Integer A from 1 to 12) the Editor will carry out the actions using:
Player (1), Player (2), Player (3), ..... Player (12).

Look for a GUI Mass Impale. It's a great example of how to use integer A/B loops.
 

johnnymra

New Member
Reaction score
14
As a quick example that states almost exactly what temmerbob and keychup said:

For each (Integer A) from 1 to 12
Loop
Player - Set property - Set gold for Player(Integer A) to X
 

Ioannes

Oh man, I shot Marvin in the face.
Reaction score
49
Trigger:
  • CreateRandom
    • Events
      • Player - Player 1 (Red) skips a cinematic sequence
    • Conditions
    • Actions
      • Set Count = 5
      • For each (Integer A) from 0 to 5, do (Actions)
        • Loop - Actions
          • Set Index[(Integer A)] = (Integer A)
      • For each (Integer B) from 0 to 1, do (Actions)
        • Loop - Actions
          • Set RandomInt = (Random integer number between 0 and Count)
          • Set Point = (Center of Region[Index[RandomInt]])
          • Special Effect - Create a special effect at Point using Abilities\Spells\Human\MarkOfChaos\MarkOfChaosTarget.mdl
          • Special Effect - Destroy (Last created special effect)
          • Custom script: call RemoveLocation(udg_Point)
          • Set Index[RandomInt] = Count
          • Set Count = (Count - 1)


This is script by Dinowc. Integer B is from 0 to 1, any1 know what that means? :)
 

Ryushi

"I will stand, or I will fall. I will not sit."
Reaction score
59
The (Integer B) from 0 to 1 means that the actions within the loop are going to run twice, the first time with Integer B having a value of 0 and the second time with Integer B having a value of 1. Since Integer B isn't used within the loop, it's simply running the set of actions twice.
 

Ioannes

Oh man, I shot Marvin in the face.
Reaction score
49
The (Integer B) from 0 to 1 means that the actions within the loop are going to run twice, the first time with Integer B having a value of 0 and the second time with Integer B having a value of 1. Since Integer B isn't used within the loop, it's simply running the set of actions twice.

Is it the same as
Code:
from 1 to 2
or 
from 5 to 6
?
 

Ryushi

"I will stand, or I will fall. I will not sit."
Reaction score
59
They would essentially be the same, they all cause the actions in the loop to be run twice. The only difference would be the value of the Integer B loop within the variable.
 

The Helper

Necromancy Power over 9000
Staff member
Reaction score
1,688
Need more help with this? Check out The Hive Workshop!


That is the absolute BEST resource for Warcraft 3 World Editor Help in 2023 and beyond. Everyone that was here is there.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top