Introduction
A Key Feature
None of the TpLib TMDB and query functions, and none of the Event, Messaging, Persistence, and most other TilePlus functionality would work without the special TilePlusBase class.
Here's a class diagram generated in Rider which shows the basic class structure for all the TilePlus tiles in the Runtime library:
The lines show the various dependencies.
TilePlusBase is divided into several partial classes just for organizational purposes:
- TilePlusBase
- TilePlusBaseData
- TilePlusBaseEnums
- TilePlusBaseStubs
- TilePlusBaseZoneEditor
- (Editor Folder) TilePlusBaseEditor.
Name the most powerful boss from any game you like: you would rather meet that boss in unarmed naked combat then mess with this code. Seriously, read-only!
But unless you're deep into coding, you can ignore it. You can create a TilePlusBase tile asset and Paint it on a Tilemap but there's limited use for such an asset.
All the useful TPT tile types are derived from TilePlusBase, which, aside from supporting the use of cloned tiles properly, provides many properties and methods for the derived classes to use including basic animation support features.
Two important notes:
- Overidden methods generally should have their base classes invoked.
- StartUp should call the base class before doing anything else and return false if the base class returns false.