Dank erstmal... Fragen tauchen bestimmt noch auf... Ich kenn mich doch

Edit: jo begriffen hab ichs

Kann man auch so wie man die daten ausliest, daten einfügen, die dann im File dementsprechend gespeichert werden ?
Code: Alles auswählen
<?xml version="1.0"?>
<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by Alex Mantzaris (Firaxis Games) -->
<!-- Sid Meier's Civilization 4 -->
<!-- Copyright Firaxis Games 2005 -->
<!-- -->
<!-- UnitClass Schema -->
<Civ4UnitClassInfos xmlns="x-schema:CIV4UnitSchema.xml">
<UnitClassInfos>
<UnitClassInfo>
<Type>UNITCLASS_GUMMIBAER</Type>
<Description>TXT_KEY_UNIT_SCOUT</Description>
<iMaxGlobalInstances>-122</iMaxGlobalInstances>
<iMaxTeamInstances>-13</iMaxTeamInstances>
<iMaxPlayerInstances>-14</iMaxPlayerInstances>
<iInstanceCostModifier>15</iInstanceCostModifier>
<DefaultUnit>UNIT_SCOUT</DefaultUnit>
</UnitClassInfo>
<UnitClassInfo>
<Type>UNITCLASS_LAKRITZ</Type>
<Description>TXT_KEY_UNIT_LION</Description>
<iMaxGlobalInstances>-123</iMaxGlobalInstances>
<iMaxTeamInstances>-16</iMaxTeamInstances>
<iMaxPlayerInstances>-17</iMaxPlayerInstances>
<iInstanceCostModifier>18</iInstanceCostModifier>
<DefaultUnit>UNIT_LION</DefaultUnit>
</UnitClassInfo>
<UnitClassInfo>
<Type>UNITCLASS_BROETCHEN</Type>
<Description>TXT_KEY_UNIT_BEAR</Description>
<iMaxGlobalInstances>-125</iMaxGlobalInstances>
<iMaxTeamInstances>-12</iMaxTeamInstances>
<iMaxPlayerInstances>-17</iMaxPlayerInstances>
<iInstanceCostModifier>500</iInstanceCostModifier>
<DefaultUnit>UNIT_BEAR</DefaultUnit>
</UnitClassInfo>
</UnitClassInfos>
</Civ4UnitClassInfos>
Code: Alles auswählen
Structure Civ4UnitClassInfos
Wert.s[7]
EndStructure
Global Dim Civ4UnitClassInfosPfad.s(6)
Global NewList Civ4UnitClassInfos.Civ4UnitClassInfos()
Civ4UnitClassInfosPfad(0)="Type"
Civ4UnitClassInfosPfad(1)="Description"
Civ4UnitClassInfosPfad(2)="iMaxGlobalInstances"
Civ4UnitClassInfosPfad(3)="iMaxTeamInstances"
Civ4UnitClassInfosPfad(4)="iMaxPlayerInstances"
Civ4UnitClassInfosPfad(5)="iInstanceCostModifier"
Civ4UnitClassInfosPfad(6)="DefaultUnit"
oXML = LoadXML(#PB_Any, "C:\CIV4.xml")
If oXML
NodeCounter = 0
Repeat
oNodes = XMLNodeFromPath(RootXMLNode(oXML), "Civ4UnitClassInfos/UnitClassInfos/UnitClassInfo[" + Str(NodeCounter) + "]")
If oNodes = 0
Break
EndIf
AddElement(Civ4UnitClassInfos())
For i=0 To 6
oNode = XMLNodeFromPath(oNodes, Civ4UnitClassInfosPfad(i))
If oNode
Civ4UnitClassInfos()\Wert[i] = GetXMLNodeText(oNode)
EndIf
Next i
NodeCounter + 1
ForEver
FreeXML(oXML)
EndIf
ForEach Civ4UnitClassInfos()
Debug Civ4UnitClassInfos()\Wert[0]
Next
Debug CountList(Civ4UnitClassInfos())
Code: Alles auswählen
<Type>UNIT_LION</Type>
<UniqueNames/>
<Special>NONE</Special>
<Capture>NONE</Capture>
Code: Alles auswählen
<Civ4UnitInfos>
<UnitInfos>
<UnitInfo>
<Type>UNIT_COLONIST</Type>
<Class>UNITCLASS_COLONIST</Class>
<UnitAIs>
<UnitAI>
<UnitAIType>UNITAI_COLONIST</UnitAIType>
<bUnitAI>1</bUnitAI>
</UnitAI>
<UnitAI>
<UnitAIType>UNITAI_WORKER</UnitAIType>
<bUnitAI>2</bUnitAI>
</UnitAI>
</UnitAIs>
</UnitInfo>
<UnitInfo>
<Type>UNIT_INDENTURED_SERVANT</Type>
<Class>UNITCLASS_INDENTURED_SERVANT</Class>
<UnitAIs>
<UnitAI>
<UnitAIType>UNITAI_COLONIST</UnitAIType>
<bUnitAI>3</bUnitAI>
</UnitAI>
<UnitAI>
<UnitAIType>UNITAI_WORKER</UnitAIType>
<bUnitAI>4</bUnitAI>
</UnitAI>
</UnitAIs>
</UnitInfo>
</UnitInfos>
</Civ4UnitInfos>
Code: Alles auswählen
Rootnode.s = "Civ4UnitInfos/UnitInfos/UnitInfo"
node1.s = "Type"
ident1.s = "UNIT_INDENTURED_SERVANT"
node2.s = "UnitAIs/UnitAI/UnitAIType"
ident2.s = "UNITAI_WORKER"
changenode.s = "bUnitAI"
oXML = LoadXML(#PB_Any,"c:\xmlfile.xml")
If oXML
WurzelKnoten = RootXMLNode(oXML)
NodeCounter = 1
NodeCounter2 = 1
Repeat
Knoten = XMLNodeFromPath(WurzelKnoten, Rootnode+"[" + Str(NodeCounter) + "]")
;Debug "Knoten "+Rootnode+"[" + Str(NodeCounter) + "]"
If Knoten=0
Break
EndIf
Knoten1 = XMLNodeFromPath(Knoten, node1)
If GetXMLNodeText(Knoten1) = ident1
Debug "Inhalt Knoten1 ("+node1+")= "+GetXMLNodeText(Knoten1)
Knoten2 = XMLNodeFromPath(Knoten, node2)
Debug GetXMLNodeText(Knoten2)
EndIf
NodeCounter + 1
ForEver
FreeXML(oXML)
EndIf