Verfasst: 29.01.2009 18:15
				
				oder die die's suchen
			Das deutsche PureBasic-Forum
https://www.purebasic.fr/german/
Dann würde ich den Link gleich mal mit anpassen, weniger ist manchmal mehr, auch ohne irgendwelchen Schnickschnack.Cabble hat geschrieben:hoppla ^^
so viel is das? xD
naja... hier is die xml: ftp://ftp.cabble.ca.funpic.de/Projekt%2 ... ts_eng.xml
Code: Alles auswählen
EnableExplicit
Structure unitdata
  unittype.l
  unitname.s
  mindam.l
  mindam2.l
  maxdam.l
  maxdam2.l
  hitpoints.l
  atttype.l
  atttype2.l
  cooldown.f
  cooldown2.f
  armtype.l
  armor.f
  regeneration.f
EndStructure
Global NewList Units.unitdata()
Procedure LoadUnitsXML(XmlPath.s) 
  
  Protected XML
  Protected UnitsNode
  Protected NodeCounter
  
  XML = LoadXML(#PB_Any, XmlPath)
  
  If XML
    
    Repeat
      
      UnitsNode = XMLNodeFromPath(RootXMLNode(XML), "dataroot/units[" + Str(NodeCounter) + "]")
      
      If UnitsNode = 0 
        Break
      EndIf
      
      NodeCounter + 1
      
      AddElement(Units())
      
      With Units()
        \unitname     = GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Unit"))
        \mindam       = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Minimal_Damage")))
        \mindam2      = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Minimal_Damage_2")))
        \maxdam       = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Maximal_Damage")))
        \maxdam2      = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Maximal_Damage_2")))
        \hitpoints    = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Hitpoints")))
        \atttype      = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Attack_Type")))
        \atttype2     = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Attack_Type_2")))
        \cooldown     = ValF(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Cooldown")))
        \cooldown2    = ValF(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Cooldown_2")))
        \armtype      = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Armor_Type")))
        \armor        = Val(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Armor")))
        \regeneration = ValF(GetXMLNodeText(XMLNodeFromPath(UnitsNode, "Regeneration")))
      EndWith
      
    ForEver
    
    FreeXML(XML)
    
  EndIf
  
EndProcedure
LoadUnitsXML("d:\units_eng.xml")
ForEach Units()
  With Units()
    Debug \unitname     
    Debug \mindam       
    Debug \mindam2      
    Debug \maxdam       
    Debug \maxdam2      
    Debug \hitpoints    
    Debug \atttype      
    Debug \atttype2     
    Debug \cooldown     
    Debug \cooldown2    
    Debug \armtype      
    Debug \armor        
    Debug \regeneration 
  EndWith
  Debug "--------"
Next