- Made Schematics load into RAM as byte arrays at the start of game instead of as NBT (saves +- 1GB of RAM) (SH)
- Added checks for non-default schematics to make sure they contain valid NBT at game start (SH)
- Made sure that invalid templates/schematics aren't even added to the array (SH)
- Made sure that PocketTemplate loads Schematic from byte array before it tries to place it (PT)
- Made sure that PocketTemplate unloads Schematic after placinf it (PT)
- Made sure that TileEntityRift doesn't check its Location while PocketTemplate is replacing placeholders in Schematics (otherwise it will try to use null worlds and shizzle) (TER and PT)
- Added functionality when saving a Schematic, this should put the Schematic in memory as a byte array (SH)
- Fixed little bug, where Schematics that would be too big, would only be loaded when configured not to (SH)
- Added functionality to keep the Schematics that are placed most loaded in RAM as NBT (combination of usageList and usageMap) (SH and PT)
- Added config option to set the maximum number of Schematics that will be cached as NBT (MC and SH)
- Made sure that Dimdoors.log is consistently used (SH)
- Added check for .json file extension for files in the json config folder (SH)
- Schematic files in the jar have had the .schem extension for a while now. Generalised a bit. (SH)
-Fixed length and height being swapped in Cubic Chunks Schematic Placement (stumbled upon this
-Fixed gateways partially generating at y level 16 if the (cubic) chunk they *should* be in was totally empty / 100% air (storage = null), because yBase wasn't taken into account.
- Read through most of the code, fixing small issues, renaming variables to clearer names, explaining less clear things
- Remove many fixed todos and remove feature-suggestion todos in favor of the Github issue tracker
- class CommonProxy -> interface IProxy (even the name CommonProxy makes no sense, why would you need to proxy something common to both the client and the server!)
- Match minecraft naming convention
- Autoformat classes
A few issues fixed:
- Make rift work in both top and bottom door block
- Change transient portal material to "portal" for correct vanilla logic
- Make doors ignore closeAfterPassThrough (that made no sense lore-wise, dimensional portals close because they are fragile and the player passing through breaks them)
* Fix dimensional door and trapdoor arm swing
* Make trapdoor animation render above the ground rather than below
* Allow rift signatures to replace any replaceable source block
* Send message when rift signature fails because the block at the stored location is no longer replaceable
* Fix hand not swinging for all items
* Fix dimensional trapdoor being registered client-side
* Make rift blade teleport near the entity rather than on it
* Rift jitter adjustment and config option
* Remove "In" suffixes and "par" prefixes from remaining parameters
- Highlight rift core when trying to place a door next to a rift, and warn player about instability (place again to confirm placing next to rift)
- Clean up LSystem class
- Make rifts jitter less
- Stop rift particle flicker, lower max age
- Make rifts grow a bit slower
- Replace option to use old animation with option to highlight the rift core
- Make rift render yaw match teleport target yaw
* Remove defaults from config strings, forge adds these automatically
* Inline default options constatns to make changing the defaults easier
* Reformat config
* Finish renaming all the door blocks in the code to their material (iron, oak, quartz, gold)
* Have the item set up the rift
* Remove the chaos door block
* Remove rotation from entrance rift, and add rotation (teleportTargetPitch/Yaw) to floating rifts (fixes relative rotation in dungeons)
* Add get(Source/Destination)(Pitch/Yaw) abstract methods to the base rift class
* Move tpOffset into a config option rather than a per-rift setting
* Simplify the rift tile entity fields
* Remove unused imports