XmlNodeSetAttribute

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This function is used to edit an attribute of a node in a configuration file.

Syntax

bool xmlNodeSetAttribute ( xmlnode node, string name, string/float value )             

OOP Syntax Help! I don't understand this!

Method: xmlnode:setAttribute(...)
Counterpart: xmlNodeGetAttribute


Required Arguments

  • node: The node of which you wish to edit an attribute.
  • name: The name of the attribute.
  • value: The value which you wish to change the attribute to. (Note: nil will delete the attribute)

Returns

Returns true if the attribute was set successfully, false if the node and/or attribute do not exist, or if they're faulty.

Example

Click to collapse [-]
Server

In a gamemode, we want a command to change the marker color in the configuration file and remove a deprecated attribute.

config.xml:

<config>
    <markers color="255,100,0" foo="deprecated" />
</config>

Lua code:


function changeConfigMarkerColor(thePlayer, command, r, g, b)
    local config = xmlLoadFile("config.xml")
    local markernode = xmlFindChild(config, "markers", 0)
    xmlNodeSetAttribute(markernode, "color", r .. "," .. g .. "," .. b)
    xmlNodeSetAttribute(markernode, "foo", nil) -- remove 'foo' attribute
    xmlSaveFile(config)
    xmlUnloadFile(config)
end
addCommandHandler("markercolor", changeConfigMarkerColor)

See Also