TeamREPENTOGON / REPENTOGON

Script extender for The Binding of Isaac: Repentance
https://repentogon.com/
GNU General Public License v2.0
106 stars 11 forks source link

playerforms.xml and modded playerforms support #225

Open dpower12 opened 6 months ago

dpower12 commented 6 months ago

Transformations are a mechanic present in isaac since the flash era giving modders the ability to add new playerforms and the tools to add playerform progress to existing items/items from other mods for cross compatibility are needed to make any vanilla-like transformation focused mod and help general content packs include their own seamlessly.

features requested:

xml: playerforms.xml working in the content folder to add modded playerforms similiarly to how items.xml works Assign the same "id" to a type="null" item in items.xml to have that playerform apply automatically the "null" item collectibles and trinkets in items.xml having the same tag as a modded playerform grant progress towards the playerform when held optional: ability to define playerform milestone to reach instead of being hardcoded to 3

Functions: Isaac.GetPlayerFormIdByName(string PlayerFormName) returning the real Id of the PlayerForm Isaac.GetConfigTagByName(string ItemConfigTag) returning the tag's bitflag ItemConfigItem:AddTags(int Tags) to add transformation tags to items with lua, so mods can add their own tags to vanilla items/modded items from other mods

namishere commented 6 months ago

Will need some amount of reimplementation, player forms belong to a fixed-length array whose size we cannot change.