Introduction
Inspired by some recent help given to @slickdeath97 and @Flannery I decided to compile it with some extras into this little extension plugin.
This plugin adds several bits of functionality to Yanfly's Class Change Core and Subclass plugins. This will have no effect unless both of those plugins are also installed.
The various options are described in the plugin parameter and notetags.
I have tested the basic functionality, please let me know if you encounter any errors. I will consider making compatibility patches if the other plugin is free to use (or one I own, such as a Yanfly product) and unobfuscated. Otherwise, other authors are free to modify this code to make it compatible with theirs so long as I am still credited.
Spoiler: Features
Using this plugin, you will be able to further customize your use of subclasses and how the menu displays the class change list. You can declare subclasses to be only usable if you have a specific primary class, and clean up the class/subclass lists by not showing classes you've declared to be primary/subclass only.
This also adds subclass functionality to Yanfly's Victory Aftermath and Aftermath Level Up plugins. You can now see experience gains, level ups, and skill gains for subclasses after battle.
Spoiler: How to Use
Class notetag:
<classRequired: class names>
Example: <classRequired: Wizard Fighter Rogue>
A class with this notetag can only be set as a subclass if the actor's primary class is listed in the notetag. This does not affect the ability to set the class as a primary class. You would need to use the separate <Subclass Only> notetag if desired.
Note that changing the primary class to one that doesn't meet the subclass' requirements will unequip the subclass.
Terms and Credits
Free for non-commercial and commercial use. Credit ATT_Turan.