[Turn on line numbering]
arg name, attr, value;
var info;
(> .perms(sender()) <);
if (!defined_settings || !dict_contains(defined_settings, name))
throw(~setnf, "Setting \"" + name + "\" is not defined on " + this());
if (value && !(> .valid_setting_attr(attr, value) <))
return;
info = defined_settings[name];
if (!value)
info = dict_del(info, attr);
else
info = dict_add(info, attr, value);
defined_settings = dict_add(defined_settings, name, info);
["// Created as a part of ColdCore, see: @help Credit"]