XmlNodeSetAttribute: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
mNo edit summary
(Fix oop syntax)
 
(12 intermediate revisions by 8 users not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__
{{Server client function}}
This function is used to edit an attribute of a node in a configuration file.
This function is used to edit an attribute of a node in a configuration file.


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
bool xmlNodeSetAttribute ( xmlnode xmlnode, string name, var value )             
bool xmlNodeSetAttribute ( xmlnode node, string name, string/float value )             
</syntaxhighlight>  
</syntaxhighlight>  
{{OOP||[[xmlnode]]:setAttribute||xmlNodeGetAttribute}}


===Required Arguments===  
===Required Arguments===  
*'''xmlnode:''' The node in which you wish to edit the attribute.
*'''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 edit was successful, ''false'' if the node and/or attribute do not exist, or if they're faulty.
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==
This example does...
<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:
<syntaxhighlight lang="xml">
<config>
    <markers color="255,100,0" foo="deprecated" />
</config>
</syntaxhighlight>
 
Lua code:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
--This line does...
 
blabhalbalhb --abababa
function changeConfigMarkerColor(thePlayer, command, r, g, b)
--This line does this...
    local config = xmlLoadFile("config.xml")
mooo
    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)
</syntaxhighlight>
</syntaxhighlight>
</section>


==See Also==
==See Also==
{{FunctionArea_Functions}}
{{XML_functions}}
{{XML_functions}}
[[Category:Incomplete]]
[[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 [-]
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