

SkinExtender
Extends skin support and adds scrolling.Details
Skin Extender
|  |  | 
|---|
Attempts to extend current skins.
Changes (User)
- Adds scrolling support to character skin selection.
- Increases max amount of shown skins from 6 to 12.
- Character skin defaults if selected custom skin is missing
- Shows where the skin comes from (config)
Changes (Dev)
- Adds UnityAction onCreateSkinswhich is called afterGlobals_CreateGameContentand before auto-adding skins from a dictionary.
- Adds method CreateSkinDatato simplify initialization of creating a ScriptableObject instance of SkinData.
- Overrides CharPopup.DoSkinsto only show specific amounts of skins per 'page'. Also fixes out of range exception.- UnityActions Pre_onCharPopupDoSkinsandPost_onCharPopupDoSkinsare made to substitute regular orig() calls.
- If you know IL, submit a PR to override it.
 
- UnityActions 
- Adds post-fix to On.HeroSelectionManager.Startto check through all skins, choosing the base skin (or first skin if no base skins) to prevent a Nullref from the game trying to use a null SkinData.
Simple Implementation (Dev)
- In your mod's Awake, create your SkinData manually or by AtOSkinExtender.Assets.CreateSkinData
- Subscribe to AtOSkinExtender.Plugin.onCreateSkinsto ensure your SkinData gets added and recognized by the mod.
- Within your subscription, add your SkinData to the packlist via AtOSkinExtender.Assets.AddSkinDataToPack2.1. Use the name of your mod for the identifier 2.2. The identifier is used to autosort based on client's configuration settings and to show skin mod origin
Written with StackEdit.