• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • 💡 We're thrilled to announce that our upcoming texturing contest is in the works, and we're eager to hear your suggestions! Please take this opportunity to share your ideas in this theme discussion thread for the Texturing Contest #34!
  • 🏆 Hive's 7th HD Modeling Contest: Icecrown Creature is now open! The frozen wastes of Icecrown are home to some of Azeroth’s most terrifying and resilient creatures. For this contest, your challenge is to design and model a HD 3D monster that embodies the cold, undead, and sinister essence of Icecrown! 📅 Submissions close on April 13, 2025. Don't miss this opportunity to let your creativity shine! Enter now and show us your frozen masterpiece! 🔗 Click here to enter!

[Solved] good indexing

Status
Not open for further replies.
Level 17
Joined
Jan 21, 2010
Messages
2,111
Which one is the good and efficient GUI/MUI indexing?
  • Set index_skip = (index_skip+1)
  • Set index_times = (index_times+1)
  • Set index_off[index_times] = true
Or
  • Set index1 = (index1+1)
  • Set index2 = (index2+1)
  • Set indexoff[index1] = true
Or this one
  • Set index[1] = (index[1]+1)
  • Set index[2] = (index[2]+1)
  • Set indexoff[index[2]] = true
 
Last edited:
Level 28
Joined
Jan 26, 2007
Messages
4,789
You'll have to explain your triggers a bit further, as I have trouble trying to see how you use these indices.
I assume "(index1 1)" means "index1 + 1"? (You haven't used the symbol "+").

This is Hanky's system (and honestly, if I ever index: I use this. Though I don't index often anymore).
It's a very good, dynamic indexing system.
  • Set indexSize = indexSize + 1
  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
    • If - Conditions
      • indexSize Greater than indexMaxSize
    • Then - Actions
      • Set index[indexSize] = indexSize
      • Set indexMaxSize = indexSize
    • Else - Actions
And to recycle an index:
  • Set tempInt = index[loopInt]
  • Set index[loopInt] = index[indexSize]
  • Set index[indexSize] = tempInt
  • Set indexSize = indexSize - 1
  • set loopInt = loopInt - 1
Where "loopInt" is used to loop through all indices (the spell/system loop).
 
Status
Not open for further replies.
Top