Localization
TBE uses Unity Localization. Unity Localization has somewhat of a learning curve, because it demands the use of Adressables.
TBE makes it easy for you to localize your game - especially if you started via the Quickstart.
So what does TBE do regarding localization?
-
It creates a new String Table entry when you create an instance of any of the BaseData classes that are localized. Which classes are localized is laid down here.
-
There is an extension method that you can use to programmatically translate (in your Editor code):
public static void Translate(this LocalizedNamed me, string locale, string content, bool setDirty = false)
-
TBE also has some buttons in the editor by which you can create a new string table entry. These buttons are not displayed if there is already a string table entry present. They are creating new localized strings. Creating new localized strings can also be done programmatically:
/// The first 3 arguments to this method are only here for locating (=identifying) the string.
TbeEditorUtil.NewLocalizedString(Type ty, string key, string property, string content)