XmlNodeSetAttribute: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(Fix oop syntax) |
||
(11 intermediate revisions by 8 users not shown) | |||
Line 5: | Line 5: | ||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
bool xmlNodeSetAttribute ( xmlnode | bool xmlNodeSetAttribute ( xmlnode node, string name, string/float value ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
{{OOP||[[xmlnode]]:setAttribute||xmlNodeGetAttribute}} | |||
===Required Arguments=== | ===Required Arguments=== | ||
*''' | *'''node:''' The node of which you wish to edit an attribute. | ||
*'''name:''' The name of the attribute. | *'''name:''' The name of the attribute. | ||
*'''value:''' The value which you wish to change the attribute to. | *'''value:''' The value which you wish to change the attribute to. ('''Note:''' ''nil'' will delete the attribute) | ||
===Returns=== | ===Returns=== | ||
Returns ''true'' if | Returns ''true'' if the attribute was set successfully, ''false'' if the node and/or attribute do not exist, or if they're faulty. | ||
==Example== | ==Example== | ||
In a gamemode, we want a command to change the marker color in the configuration file. | <section name="Server" class="server" show="true"> | ||
In a gamemode, we want a command to change the marker color in the configuration file and remove a deprecated attribute. | |||
config.xml: | config.xml: | ||
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
<config> | <config> | ||
<markers color="255,100,0" /> | <markers color="255,100,0" foo="deprecated" /> | ||
</config> | </config> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 28: | Line 30: | ||
Lua code: | Lua code: | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
function changeConfigMarkerColor( | function changeConfigMarkerColor(thePlayer, command, r, g, b) | ||
markernode = | local config = xmlLoadFile("config.xml") | ||
local markernode = xmlFindChild(config, "markers", 0) | |||
xmlNodeSetAttribute(markernode, "color", r .. "," .. g .. "," .. b) | xmlNodeSetAttribute(markernode, "color", r .. "," .. g .. "," .. b) | ||
xmlNodeSetAttribute(markernode, "foo", nil) -- remove 'foo' attribute | |||
xmlSaveFile(config) | |||
xmlUnloadFile(config) | |||
end | end | ||
addCommandHandler("markercolor", changeConfigMarkerColor) | addCommandHandler("markercolor", changeConfigMarkerColor) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | |||
==See Also== | ==See Also== | ||
{{XML_functions}} | {{XML_functions}} | ||
[[ | [[ru:xmlNodeSetAttribute]] |
Latest revision as of 14:50, 6 August 2016
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 [-]
ServerIn 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)