Dependencies: alter_effect, ds, lib_2da, lib_2daq, lib_anon, lib_array, lib_class, lib_cre, lib_data, lib_eff, lib_fn, lib_ids, lib_ietool, lib_ini, lib_kit, lib_script, lib_sfo, lib_spl, lib_splconv, lib_ssl, lib_struct, lib_sugar, lib_tools, lib_ui, lib_vtable, resolve_spell, ui_add_subraces, ui_bonus_spells, ui_deolvynize, ui_detect_class_kit, ui_dual_class_kits, ui_externalize_hlas, ui_extra_spells, ui_on_open, ui_shared_code, ui_spell_system, ui_system_call, ui_virtual_class
The various functions here externalize the proficiency system, using UI edits to permit finer-grained control of that system than the core engine permits.
externalize_profsmax()=() action
This moves the functionality of profsmax.2da to the LUA, permitting control of maximum proficiencies at a finer grain than the engine permits (in particular, this is required for libraries like ui_add_subraces that use proficiencies to signal).
externalize_weapprof()=() action
This moves the functionality of weapprof.2da to the LUA, permitting control of allowed proficiencies at a finer grain than the core engine permits.
get_weapprof_path()=(weapprof_path:s) action
This returns either 'override/weapprof.2da' or '[data_loc_shared]/weapprof.2da', depending on whether the weapprof system has been externalized.
hide_proficiency(id:i)=() action
This hides the proficiency with id 'id' so that it is not displayed on the proficiency select screen.
set_dual_class_kit_components_for_proficiencies(kit:s, components:s)=() action
I don't 100% recall what this does. It's described in my notes like this: 'set the single-class kits that override multiclass kit proficiencies for dc purposes'.
set_signalling_stat(stat:i)=() action
This sets up the stat 'stat' to be used by other UI libraries to send a signal from the chargen screen to the main game. Don't use unless you're confident you know what you're doing.
set_signalling_stat_helper(stat:i)=() patch
set_up_externalized_proficiencies()=() action
This function is a general setup for the ui_externalize_proficiency functions.
These should not be called from outside the library itself.
externalize_prof_function_patch()=() patch
externalize_prof_patch()=() patch
wipe_weapprof()=() action