So, here is the relevant part of this array’s structure:
[CODE]+–Animation
+–Arrays
+–Buttons
+–Cookies
+–Desctags
+–Dice
+–Directions–SubCats–+–DirectionsAbsolute
| +–DirectionsRelative
|
+–Dream——-SubCats–+–DreamArrival
| +–DreamLeaving
| +–DreamUpload
+–Effects
+–Floors
+–Furres——SubCats–+–FurresActions—–SubCats–+–FurresActionsIdle
| | +–FurresActionsInteract
| | +–FurresActionsMessage
| | +–FurresActionsMove
| | +–FurresActionsOrient
| | +–FurresActionsPosture
| | +–FurresActionsTurn
| |
| +–FurresAppearance–SubCats–+–FurresAppearanceGender
| | +–FurresAppearanceSpecies
| |
| +–FurresDreams
| +–FurreSelect
|
+–Kitterdust
+–Locations—SubCats–+–LocationsAbsolute
| +–LocationsRegions
| +–LocationsRelative
|
+–Messages
+–Objects
+–PhoenixSpeak
+–Request
+–Sound
+–Time
+–Variables
+–Walls
+–Window
+–ZZOther
All the words here are array [i]keys
[LIST=1][*]
Select an array key
See if the array that key is in has a parent array
Get the [I]grand
Repeat to top-level array
Have all returned values in an array
For example, if I select FurresAppearanceGender, the array would have three values: “FurresAppearanceGender”, “FurresAppearance” and “Furres”. If I select “Furres” then the array would have only one value: “Furres” itself, since that has no parent array.
How can I do this?