PoliceSA Posted July 2, 2014 Posted July 2, 2014 (edited) function SetTime() local mapMeta = xmlLoadFile("meta.xml") local value = xmlNodeGetAttribute(mapMeta, "value") local dotPos = string.find(value,":")-- The Problem local hours = string.sub(value,1,dotPos-1) local minutes = string.sub(value,dotPos+1,string.len(value)) setTime(tonumber(hours),tonumber(minutes)) setMinuteDuration(1000000000) outputChatBox("Time Setted") end Error : bad argument #1 to 'find' string expected got boolean Edited July 2, 2014 by Guest
PoliceSA Posted July 2, 2014 Author Posted July 2, 2014 Typos line 3 "valuer" no, i failed when i wrote that.. (look edit)
myonlake Posted July 2, 2014 Posted July 2, 2014 Because it makes no sense. A XML handle cannot have an XML attribute, you must first find a child and then get its attribute.
PoliceSA Posted July 2, 2014 Author Posted July 2, 2014 I tried with this script too : local file = xmlLoadFile("meta.xml") for i, v in ipairs(xmlNodeGetChildren(file)) do local name = xmlNodeGetName(v) if name == "settings" then local sname = xmlNodeGetAttribute(v,"name") if sname == "#time" then local value = xmlNodeGetAttribute(v, "value") if value then value = string.gsub(value, "%s+", "") value = string.gsub(value, "[%[%]]", "") setTime(value:match('(%d+)%d+)')) realtime = value else setTime(12,0) end end end end but still doesn't set the correct time
Et-win Posted July 4, 2014 Posted July 4, 2014 You first have to do xmlFindChild for settings. Then do xmlNodeGetChildren.
Et-win Posted July 7, 2014 Posted July 7, 2014 local fChild_Settings = xmlFindChild(mapMeta, "settings", 0) I bet you know the next code.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now