---==================================================================================================================--- --- --- --- Original Author(s) : RavenAscendant --- --- Edited : N/A --- --- Date : 06/01/2022 --- --- License : Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported --- --- --- --- Dynamic tint for anomaly inventory. --- --- --- ---==================================================================================================================--- function pr(txt, ...) -- printf("RAXPH: "..txt, ...) end local icon_colors = {} --functor should return an ARGB for the tint color. recomend low alpha values. there is no unregister, just register nil function register(name, functor) if not name then return end icon_colors[name] = functor end local base_Colorize = utils_ui.UICellItem.Colorize function utils_ui.UICellItem:Colorize(clr_id) base_Colorize(self, clr_id) if clr_id ~= "def" then return end -- only gong to change it when not changed by base script local clr for _, functor in pairs(icon_colors) do clr = functor(self) or clr end if not clr then return end if self.ico then self.ico:SetTextureColor( clr ) end if self.ico_scope then self.ico_scope:SetTextureColor( clr ) end if self.ico_sil then self.ico_sil:SetTextureColor( clr ) end if self.ico_gl then self.ico_gl:SetTextureColor( clr ) end if self.layer then for i=1,#self.layer do self.layer[i]:SetTextureColor( clr ) end end end --[[ Use local table_of_itmes_to_tint = {vodka = true} local bags = {actor_bag = true,actor_trade_bag= true} --player inv in normal/looting and in the merchant UI. full list in ui_inventory.script function tinter(cell) if not bags[cell.container.ID] then return end -- if you only want this to be applied in the inventory UI and then only certine parts if table_of_itmes_to_tint[cell.section] then --for object id use cell.ID ID not used in all UIs return GetARGB(100, 0, 255, 0) end end function on_game_start() rax_icon_tint.register("my_tint", tinter) end --]]