View Single Post
02/18/23, 08:37 AM   #4
sinnereso
AddOn Author - Click to view addons
Join Date: Oct 2022
Posts: 245
Originally Posted by FlatBadger View Post
I'm not sure how you're setting the font for the nameplate, but font face and size changes do not require a ui refresh of any kind. They happen instantly when you use the :SetFont(...) function on the relevant control.

For example, if you type the following into the chat window:
Code:
/script ZO_ChatWindowTextEntryLabel:SetFont("ZoFontCallout")
The 'Say:' text will instantly change to something far too big. You can change it back with:

Code:
/script ZO_ChatWindowTextEntryLabel:SetFont("ZoFontChat")
I'd have to agree with you that I was expecting it to be instant. I've even peeked inside a couple big nameplate adds and tested them and they were instant with no apparent code making it instant BUT they had control panel controls and I'm wondering if thats why. Or maybe the callback?

Im setting it like this as its just an on/off function:

Code:
function RidinDirty.PlayerActivated()
	local fontBoost = RidinDirty.savedVariables.fontBoost
	if fontBoost == "enabled" then
		local fontString = string.format("%s|%d", "EsoUI/Common/Fonts/Univers67.otf", "26")
		SetNameplateKeyboardFont( fontString, 1)
		SetNameplateGamepadFont( fontString, 1)
	else
		local fontString = string.format("%s|%d", "EsoUI/Common/Fonts/Univers57.otf", "20")
		SetNameplateKeyboardFont( fontString, 1)
		SetNameplateGamepadFont( fontString, 1)
	end
  Reply With Quote