It is 2 of 5 <Group> subelements from an <Orbitals> block.
Code: Select all
<!-- Hagaron
Another inner world -->
<Group distance="160">
<Primary>
<Station type="&stDesertTerrestrialSizeH;" name="Hageron" showOrbit="true"/>
</Primary>
<Orbitals distance="1d8+8" angle="random">
<Lookup table="Stations1" probability="80"/>
</Orbitals>
</Group>
<!-- Raphael -->
<Group distance="270">
<Primary>
<Station type="&stRockyPlanetoidSizeG;" name="Raphael" showOrbit="true"/>
</Primary>
<Orbitals distance="1d8+8" angle="random">
<Lookup table="Stations1" probability="80"/>
</Orbitals>
NOTE: <Trojan/AntiTrojan> deleted from here.
</Group>
It is more difficult to select one of the <Group> blocks from the other four.
Code to get this far and set a list of all 5 <Group> subelements:
Code: Select all
;All the XML.
(setq EridaniXML (typGetXML &ssStartonEridani;))
;The SystemGroup XML.
(setq sysXML (xmlGetSubElement EridaniXML "SystemGroup"))
;The Orbitals XML.
(setq orbXML (xmlGetSubElement sysXML "Orbitals"))
;A list of "Group" XML subelements from the "Orbitals" XML.
(setq groupList (xmlGetSubElementList orbXML "Group"))
I've used the code below successfully to get the "distance="160"" element but it seems a bit long-winded.
Code: Select all
;Set the string to find in 'groupList'.
(setq find160 "<Group distance=\"160\">")
;Filter 'groupList' to select the relevant "Group" XML.
(setq group160XML (@ (filter groupList theXML (find theXML find160)) 0))