<?xml version="1.0" standalone="yes" ?>
<?xml-stylesheet href="x2script.xsl" type="text/xsl" ?>
<script>
<name>setup.hraban.pathfinder</name>
<version>30</version>
<engineversion>25</engineversion>
<description>finde alle nachbarsektoren und schreibe diese in eine LocalVar typ array</description>
<arguments>
</arguments>
<sourcetext>
<line linenr="001" indent=""><comment><text>*&#160;</text><var>Autor&#160;-&#160;hraban&#160;-&#160;Ralf&#160;Beck</var></comment></line>
<line linenr="002" indent=""><comment><text>*&#160;</text><var>Version&#160;-&#160;3.0</var></comment></line>
<line linenr="003" indent=""><comment><text>*&#160;</text><var>Dankeschoen&#160;an&#160;ticaki&#160;und&#160;XeHonk</var></comment></line>
<line linenr="004" indent=""></line>
<line linenr="005" indent=""><comment><text>*&#160;</text><var>GlobVar&#160;keine&#160;ausfuehrung&#160;des&#160;pathfinders&#160;solange&#160;null</var></comment></line>
<line linenr="006" indent=""><text>set&#160;global&#160;variable:&#160;name=</text><var>'PathfinderOK'</var><text>&#160;value=</text><var>null</var></line>
<line linenr="007" indent=""><comment><text>*&#160;</text><var>init&#160;fuer&#160;das&#160;array&#160;der&#160;nachbarn</var></comment></line>
<line linenr="008" indent=""><var>$ObjectNeighbour&#160;=&#160;</var><text>&#160;array&#160;alloc:&#160;size=</text><var>0</var></line>
<line linenr="009" indent=""><text>write&#160;to&#160;player&#160;logbook:&#160;printf:&#160;fmt=</text><var>'Initial&#160;routing&#160;started&#160;...'</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var></line>
<line linenr="010" indent=""><comment><text>*&#160;</text><var>lese&#160;die&#160;x&#160;groesse&#160;des&#160;universums</var></comment></line>
<line linenr="011" indent=""><var>$SectorCurrentX&#160;=&#160;</var><text>get&#160;max&#160;sectors&#160;in&#160;x&#160;direction</text></line>
<line linenr="012" indent=""><comment><text>*&#160;</text><var>hauptschleife&#160;fuer&#160;x&#160;und&#160;&#160;y&#160;von&#160;aktuellen&#160;sektorn</var></comment></line>
<line linenr="013" indent=""><var>while&#160;</var><var>$SectorCurrentX</var></line>
<line linenr="014" indent="&#160;"><text>dec&#160;</text><var>$SectorCurrentX&#160;=&#160;</var></line>
<line linenr="015" indent="&#160;"><var>$SectorCurrentY&#160;=&#160;</var><text>get&#160;max&#160;sectors&#160;in&#160;y&#160;direction</text></line>
<line linenr="016" indent="&#160;"><var>while&#160;</var><var>$SectorCurrentY</var></line>
<line linenr="017" indent="&#160;&#160;"><text>dec&#160;</text><var>$SectorCurrentY&#160;=&#160;</var></line>
<line linenr="018" indent=""><comment><text>*&#160;</text><var>lese&#160;den&#160;naechsten&#160;aktuellen&#160;sektor</var></comment></line>
<line linenr="019" indent="&#160;&#160;"><var>$SectorCurrent&#160;=&#160;</var><text>get&#160;sector&#160;from&#160;universe&#160;index:&#160;x=</text><var>$SectorCurrentX</var><text>,&#160;y=</text><var>$SectorCurrentY</var></line>
<line linenr="020" indent="&#160;&#160;"><var>skip&#160;if&#160;</var><var>$SectorCurrent</var></line>
<line linenr="021" indent="&#160;&#160;&#160;"><text>continue</text></line>
<line linenr="022" indent="&#160;&#160;"><var>$SectorExamineX&#160;=&#160;</var><text>get&#160;max&#160;sectors&#160;in&#160;x&#160;direction</text></line>
<line linenr="023" indent=""><comment><text>*&#160;</text><var>innere&#160;schleife&#160;fuer&#160;x&#160;und&#160;y&#160;despotentiellen&#160;nachbarsektors</var></comment></line>
<line linenr="024" indent="&#160;&#160;"><var>while&#160;</var><var>$SectorExamineX</var></line>
<line linenr="025" indent="&#160;&#160;&#160;"><text>dec&#160;</text><var>$SectorExamineX&#160;=&#160;</var></line>
<line linenr="026" indent="&#160;&#160;&#160;"><var>$SectorExamineY&#160;=&#160;</var><text>get&#160;max&#160;sectors&#160;in&#160;x&#160;direction</text></line>
<line linenr="027" indent="&#160;&#160;&#160;"><var>while&#160;</var><var>$SectorExamineY</var></line>
<line linenr="028" indent="&#160;&#160;&#160;&#160;"><text>dec&#160;</text><var>$SectorExamineY&#160;=&#160;</var></line>
<line linenr="029" indent=""><comment><text>*&#160;</text><var>lese&#160;naechsten&#160;potentiellen&#160;nachbarsektor</var></comment></line>
<line linenr="030" indent="&#160;&#160;&#160;&#160;"><var>$SectorExamine&#160;=&#160;</var><text>get&#160;sector&#160;from&#160;universe&#160;index:&#160;x=</text><var>$SectorExamineX</var><text>,&#160;y=</text><var>$SectorExamineY</var></line>
<line linenr="031" indent="&#160;&#160;&#160;&#160;"><var>skip&#160;if&#160;</var><var>$SectorExamine</var></line>
<line linenr="032" indent="&#160;&#160;&#160;&#160;&#160;"><text>continue</text></line>
<line linenr="033" indent=""><comment><text>*&#160;</text><var>ermittle&#160;die&#160;distanz&#160;vom&#160;aktuellen-&#160;zum&#160;nachbarsektor</var></comment></line>
<line linenr="034" indent="&#160;&#160;&#160;&#160;"><var>$SectorDistance&#160;=&#160;</var><text>get&#160;jumps&#160;from&#160;sector&#160;</text><var>$SectorCurrent</var><text>&#160;to&#160;sector&#160;</text><var>$SectorExamine</var></line>
<line linenr="035" indent=""><comment><text>*&#160;</text><var>es&#160;ist&#160;ein&#160;nachbar&#160;wenn&#160;die&#160;distanz&#160;1&#160;betraegt</var></comment></line>
<line linenr="036" indent="&#160;&#160;&#160;&#160;"><var>if&#160;</var><var>$SectorDistance</var><text>&#160;</text><var>==</var><text>&#160;</text><var>1</var><text>&#160;</text><var>AND</var><text>&#160;</text><var>$SectorCurrent</var><text>&#160;</text><var>!=</var><text>&#160;</text><var>null</var><text>&#160;</text><var>AND</var><text>&#160;</text><var>$SectorExamine</var><text>&#160;</text><var>!=</var><text>&#160;</text><var>null</var></line>
<line linenr="037" indent="&#160;&#160;&#160;&#160;&#160;"><text>append&#160;</text><var>$SectorExamine</var><text>&#160;to&#160;array&#160;</text><var>$ObjectNeighbour</var></line>
<line linenr="038" indent="&#160;&#160;&#160;&#160;"><text>end</text></line>
<line linenr="039" indent="&#160;&#160;&#160;"><text>end</text></line>
<line linenr="040" indent="&#160;&#160;"><text>end</text></line>
<line linenr="041" indent=""><comment><text>*&#160;</text><var>das&#160;nachbar-array&#160;per&#160;LocaVar&#160;an&#160;den&#160;aktuellen&#160;sektor&#160;anhaengen</var></comment></line>
<line linenr="042" indent="&#160;&#160;"><var>if&#160;</var><var>$SectorCurrent</var><text>&#160;</text><var>!=</var><text>&#160;</text><var>null</var></line>
<line linenr="043" indent="&#160;&#160;&#160;"><var>$count&#160;=&#160;</var><text>&#160;size&#160;of&#160;array&#160;</text><var>$ObjectNeighbour</var></line>
<line linenr="044" indent="&#160;&#160;&#160;"><var>$sectorarray&#160;=&#160;</var><text>&#160;array&#160;alloc:&#160;size=</text><var>$count</var></line>
<line linenr="045" indent="&#160;&#160;&#160;"><text>dec&#160;</text><var>$count&#160;=&#160;</var></line>
<line linenr="046" indent="&#160;&#160;&#160;"><var>$sectorarray&#160;=&#160;</var><text>&#160;clone&#160;array&#160;</text><var>$ObjectNeighbour</var><text>&#160;:&#160;index&#160;</text><var>0</var><text>&#160;...&#160;</text><var>$count</var></line>
<line linenr="047" indent="&#160;&#160;&#160;"><text>set&#160;global&#160;variable:&#160;name=</text><var>$SectorCurrent</var><text>&#160;value=</text><var>$sectorarray</var></line>
<line linenr="048" indent=""><comment><text>*&#160;</text><var>reinitialisiere&#160;das&#160;nachbar-array</var></comment></line>
<line linenr="049" indent="&#160;&#160;&#160;"><text>write&#160;to&#160;log&#160;file&#160;#</text><var>3005</var><text>&#160;&#160;append=</text><var>1</var><text>&#160;&#160;printf:&#160;fmt=</text><var>'%s'</var><text>,&#160;</text><var>$sectorarray</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var></line>
<line linenr="050" indent="&#160;&#160;&#160;"><var>$sectorarray&#160;=&#160;</var><text>&#160;array&#160;alloc:&#160;size=</text><var>0</var></line>
<line linenr="051" indent="&#160;&#160;"><text>end</text></line>
<line linenr="052" indent=""><comment><text>*&#160;</text><var>Clear&#160;array</var></comment></line>
<line linenr="053" indent="&#160;&#160;"><var>$ObjectNeighbour&#160;=&#160;</var><text>&#160;array&#160;alloc:&#160;size=</text><var>0</var></line>
<line linenr="054" indent="&#160;"><text>end</text></line>
<line linenr="055" interruptable="@" indent="&#160;"><var>$return.Wait&#160;=&#160;</var><text>wait&#160;randomly&#160;from&#160;</text><var>100</var><text>&#160;to&#160;</text><var>200</var><text>&#160;ms</text></line>
<line linenr="056" indent=""><text>end</text></line>
<line linenr="057" indent=""><text>write&#160;to&#160;player&#160;logbook:&#160;printf:&#160;fmt=</text><var>'...&#160;routing&#160;succesfull'</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var><text>,&#160;</text><var>null</var></line>
<line linenr="058" indent=""><comment><text>*&#160;</text><var>Set&#160;GlobVar&#160;when&#160;Job&#160;is&#160;done</var></comment></line>
<line linenr="059" indent=""><text>set&#160;global&#160;variable:&#160;name=</text><var>'PathfinderOK'</var><text>&#160;value=</text><var>[TRUE]</var></line>
<line linenr="060" indent=""><text>return&#160;</text><var>null</var></line>
</sourcetext>
<codearray>
<sval type="array" size="10"><sval type="string" val="setup.hraban.pathfinder" /><sval type="int" val="25" /><sval type="string" val="finde alle nachbarsektoren und schreibe diese in eine LocalVar typ array" /><sval type="int" val="30" /><sval type="int" val="0" /><sval type="array" size="11"><sval type="string" val="ObjectNeighbour" /><sval type="string" val="SectorCurrentX" /><sval type="string" val="SectorCurrentY" /><sval type="string" val="SectorCurrent" /><sval type="string" val="SectorExamineX" /><sval type="string" val="SectorExamineY" /><sval type="string" val="SectorExamine" /><sval type="string" val="SectorDistance" /><sval type="string" val="count" /><sval type="string" val="sectorarray" /><sval type="string" val="return.Wait" /></sval><sval type="array" size="41"><sval type="array" size="5"><sval type="int" val="157" /><sval type="int" val="5" /><sval type="string" val="PathfinderOK" /><sval type="int" val="0" /><sval type="int" val="0" /></sval><sval type="array" size="4"><sval type="int" val="128" /><sval type="int" val="0" /><sval type="int" val="4" /><sval type="int" val="0" /></sval><sval type="array" size="13"><sval type="int" val="402" /><sval type="int" val="5" /><sval type="string" val="Initial routing started ..." /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /></sval><sval type="array" size="2"><sval type="int" val="801" /><sval type="int" val="1" /></sval><sval type="array" size="7"><sval type="int" val="104" /><sval type="int" val="-1610602999" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="1" /><sval type="int" val="1" /><sval type="int" val="-1" /></sval><sval type="array" size="2"><sval type="int" val="143" /><sval type="int" val="1" /></sval><sval type="array" size="2"><sval type="int" val="802" /><sval type="int" val="2" /></sval><sval type="array" size="7"><sval type="int" val="104" /><sval type="int" val="-1610603511" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="2" /><sval type="int" val="1" /><sval type="int" val="-1" /></sval><sval type="array" size="2"><sval type="int" val="143" /><sval type="int" val="2" /></sval><sval type="array" size="6"><sval type="int" val="800" /><sval type="int" val="3" /><sval type="int" val="131074" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="2" /></sval><sval type="array" size="7"><sval type="int" val="104" /><sval type="int" val="-536867833" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="3" /><sval type="int" val="1" /><sval type="int" val="-1" /></sval><sval type="array" size="2"><sval type="int" val="112" /><sval type="int" val="7" /></sval><sval type="array" size="2"><sval type="int" val="801" /><sval type="int" val="4" /></sval><sval type="array" size="7"><sval type="int" val="104" /><sval type="int" val="-1610606071" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="4" /><sval type="int" val="1" /><sval type="int" val="-1" /></sval><sval type="array" size="2"><sval type="int" val="143" /><sval type="int" val="4" /></sval><sval type="array" size="2"><sval type="int" val="801" /><sval type="int" val="5" /></sval><sval type="array" size="7"><sval type="int" val="104" /><sval type="int" val="-1610606327" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="5" /><sval type="int" val="1" /><sval type="int" val="-1" /></sval><sval type="array" size="2"><sval type="int" val="143" /><sval type="int" val="5" /></sval><sval type="array" size="6"><sval type="int" val="800" /><sval type="int" val="6" /><sval type="int" val="131074" /><sval type="int" val="4" /><sval type="int" val="131074" /><sval type="int" val="5" /></sval><sval type="array" size="7"><sval type="int" val="104" /><sval type="int" val="-536865529" /><sval type="int" val="1" /><sval type="int" val="131074" /><sval type="int" val="6" /><sval type="int" val="1" /><sval type="int" val="-1" /></sval><sval type="array" size="2"><sval type="int" val="112" /><sval type="int" val="16" /></sval><sval type="array" size="6"><sval type="int" val="711" /><sval type="int" val="7" /><sval type="int" val="131074" /><sval type="int" val="3" /><sval type="int" val="131074" /><sval type="int" val="6" /></sval><sval type="array" size="37"><sval type="int" val="104" /><sval type="int" val="-1610606589" /><sval type="int" val="11" /><sval type="int" val="131074" /><sval type="int" val="7" /><sval type="int" val="4" /><sval type="int" val="1" /><sval type="int" val="15" /><sval type="int" val="0" /><sval type="int" val="131074" /><sval type="int" val="3" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="15" /><sval type="int" val="1" /><sval type="int" val="15" /><sval type="int" val="9" /><sval type="int" val="131074" /><sval type="int" val="6" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="15" /><sval type="int" val="1" /><sval type="int" val="15" /><sval type="int" val="9" /><sval type="int" val="11" /><sval type="int" val="-1" /><sval type="int" val="0" /><sval type="int" val="-2" /><sval type="int" val="9" /><sval type="int" val="-4" /><sval type="int" val="1" /><sval type="int" val="-5" /><sval type="int" val="9" /><sval type="int" val="-8" /><sval type="int" val="1" /><sval type="int" val="-9" /></sval><sval type="array" size="5"><sval type="int" val="135" /><sval type="int" val="131074" /><sval type="int" val="0" /><sval type="int" val="131074" /><sval type="int" val="6" /></sval><sval type="array" size="2"><sval type="int" val="112" /><sval type="int" val="16" /></sval><sval type="array" size="2"><sval type="int" val="112" /><sval type="int" val="13" /></sval><sval type="array" size="13"><sval type="int" val="104" /><sval type="int" val="-1610604029" /><sval type="int" val="3" /><sval type="int" val="131074" /><sval type="int" val="3" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="15" /><sval type="int" val="1" /><sval type="int" val="3" /><sval type="int" val="-1" /><sval type="int" val="1" /><sval type="int" val="-2" /></sval><sval type="array" size="4"><sval type="int" val="131" /><sval type="int" val="8" /><sval type="int" val="131074" /><sval type="int" val="0" /></sval><sval type="array" size="4"><sval type="int" val="128" /><sval type="int" val="9" /><sval type="int" val="131074" /><sval type="int" val="8" /></sval><sval type="array" size="2"><sval type="int" val="143" /><sval type="int" val="8" /></sval><sval type="array" size="8"><sval type="int" val="132" /><sval type="int" val="9" /><sval type="int" val="131074" /><sval type="int" val="0" /><sval type="int" val="4" /><sval type="int" val="0" /><sval type="int" val="131074" /><sval type="int" val="8" /></sval><sval type="array" size="5"><sval type="int" val="157" /><sval type="int" val="131074" /><sval type="int" val="3" /><sval type="int" val="131074" /><sval type="int" val="9" /></sval><sval type="array" size="17"><sval type="int" val="405" /><sval type="int" val="4" /><sval type="int" val="3005" /><sval type="int" val="4" /><sval type="int" val="1" /><sval type="int" val="5" /><sval type="string" val="%s" /><sval type="int" val="131074" /><sval type="int" val="9" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /></sval><sval type="array" size="4"><sval type="int" val="128" /><sval type="int" val="9" /><sval type="int" val="4" /><sval type="int" val="0" /></sval><sval type="array" size="4"><sval type="int" val="128" /><sval type="int" val="0" /><sval type="int" val="4" /><sval type="int" val="0" /></sval><sval type="array" size="2"><sval type="int" val="112" /><sval type="int" val="7" /></sval><sval type="array" size="6"><sval type="int" val="107" /><sval type="int" val="10" /><sval type="int" val="4" /><sval type="int" val="100" /><sval type="int" val="4" /><sval type="int" val="200" /></sval><sval type="array" size="2"><sval type="int" val="112" /><sval type="int" val="4" /></sval><sval type="array" size="13"><sval type="int" val="402" /><sval type="int" val="5" /><sval type="string" val="... routing succesfull" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /><sval type="int" val="0" /></sval><sval type="array" size="5"><sval type="int" val="157" /><sval type="int" val="5" /><sval type="string" val="PathfinderOK" /><sval type="int" val="131075" /><sval type="int" val="10" /></sval><sval type="array" size="3"><sval type="int" val="103" /><sval type="int" val="0" /><sval type="int" val="0" /></sval></sval><sval type="int" val="0" /><sval type="array" size="25"><sval type="array" size="3"><sval type="int" val="0" /><sval type="int" val="1" /><sval type="string" val="Autor - hraban - Ralf Beck" /></sval><sval type="array" size="3"><sval type="int" val="0" /><sval type="int" val="1" /><sval type="string" val="Version - 3.0" /></sval><sval type="array" size="3"><sval type="int" val="0" /><sval type="int" val="1" /><sval type="string" val="Dankeschoen an ticaki und XeHonk" /></sval><sval type="array" size="2"><sval type="int" val="0" /><sval type="int" val="2" /></sval><sval type="array" size="3"><sval type="int" val="0" /><sval type="int" val="1" /><sval type="string" val="GlobVar keine ausfuehrung des pathfinders solange null" /></sval><sval type="array" size="3"><sval type="int" val="1" /><sval type="int" val="1" /><sval type="string" val="init fuer das array der nachbarn" /></sval><sval type="array" size="3"><sval type="int" val="3" /><sval type="int" val="1" /><sval type="string" val="lese die x groesse des universums" /></sval><sval type="array" size="3"><sval type="int" val="4" /><sval type="int" val="1" /><sval type="string" val="hauptschleife fuer x und  y von aktuellen sektorn" /></sval><sval type="array" size="3"><sval type="int" val="9" /><sval type="int" val="1" /><sval type="string" val="lese den naechsten aktuellen sektor" /></sval><sval type="array" size="2"><sval type="int" val="12" /><sval type="int" val="6" /></sval><sval type="array" size="3"><sval type="int" val="13" /><sval type="int" val="1" /><sval type="string" val="innere schleife fuer x und y despotentiellen nachbarsektors" /></sval><sval type="array" size="3"><sval type="int" val="18" /><sval type="int" val="1" /><sval type="string" val="lese naechsten potentiellen nachbarsektor" /></sval><sval type="array" size="2"><sval type="int" val="21" /><sval type="int" val="6" /></sval><sval type="array" size="3"><sval type="int" val="21" /><sval type="int" val="1" /><sval type="string" val="ermittle die distanz vom aktuellen- zum nachbarsektor" /></sval><sval type="array" size="3"><sval type="int" val="22" /><sval type="int" val="1" /><sval type="string" val="es ist ein nachbar wenn die distanz 1 betraegt" /></sval><sval type="array" size="2"><sval type="int" val="24" /><sval type="int" val="4" /></sval><sval type="array" size="2"><sval type="int" val="25" /><sval type="int" val="4" /></sval><sval type="array" size="2"><sval type="int" val="26" /><sval type="int" val="4" /></sval><sval type="array" size="3"><sval type="int" val="26" /><sval type="int" val="1" /><sval type="string" val="das nachbar-array per LocaVar an den aktuellen sektor anhaengen" /></sval><sval type="array" size="3"><sval type="int" val="32" /><sval type="int" val="1" /><sval type="string" val="reinitialisiere das nachbar-array" /></sval><sval type="array" size="2"><sval type="int" val="34" /><sval type="int" val="4" /></sval><sval type="array" size="3"><sval type="int" val="34" /><sval type="int" val="1" /><sval type="string" val="Clear array" /></sval><sval type="array" size="2"><sval type="int" val="36" /><sval type="int" val="4" /></sval><sval type="array" size="2"><sval type="int" val="38" /><sval type="int" val="4" /></sval><sval type="array" size="3"><sval type="int" val="39" /><sval type="int" val="1" /><sval type="string" val="Set GlobVar when Job is done" /></sval></sval><sval type="int" val="0" /></sval>
</codearray>
</script>
