Skip to content

Draconic-Evolution ​

24 merged pull requests.

New Features ​

  • #103 Added GeneratorOverride.getNearestChaosIslandCenter(chunkX, chunkZ), which returns ChunkCoordinates at y 80 from ChaosWorldGenHandler.getClosestChaosSpawn. It returns null if chaos islands are disabled or the island is at (0, 0). - @Algent
    • Added: nearest Chaos Island API
  • #98 Adds ConfigHandler.disableEarthBlock; ModBlocks skips creating the Earth block and CommonProxy skips registering TileEarth when it is null. ClientProxy rendering registration is reformatted and RenderTileEarth uses pattern matching. - @Alexdoru
    • Added: Disable Earth block config option
  • #95 Modified TileDissEnchanter to accept redstone and hopper input/output; extended DissEnchanter block with automation capabilities. - @felixfour
    • Added: redstone automation, hopper automation, XP jar draining
  • #80 Extended ConfigHandler with magnet blacklist config strings, updated Magnet class to check blacklist before collecting items using same algorithm as AE2 magnet. - @SuperSoupr
    • Added: Magnet block blacklist config

Changes ​

  • #96 Added localization strings to en_US.lang and updated multiple GUI classes to display localized text; adjusted positioning and sizing in various GUIs including Dislocator Inhibitor and Player Detector. - @Ranzuu
    • Added: GUI localizations
  • #83 Edited 6 lines in zh_CN.lang to add line number prefixes to lore entries and update the translations. The diff was not shown. - @NealDeal34
    • Fixed: zh_CN lore lines missing NEI line number prefixes
  • #76 Removed ModHelper.isGregTechTileEntityOre and the TileEntityOres/BWMetaGeneratedOres reflection. MiningTool.breakAOEBlocks now treats any tile entity as a stop. GregTech detection now checks for the mod id gregtech_nh. Dependency versions bumped, including GT5-Unofficial 5.09.52.31. The block-change packet branch in MiningTool also got braces. - @RecursivePineapple
    • Removed: GregTech and BartWorks ore tile entity check in AOE mining

Bug Fixes ​

  • #104 Added required-after:gtnhlib@[0.9.47,) to the dependencies string of the @Mod annotation in DraconicEvolution.java. The enchanting automation PR (#95) added a GTNHLib dependency but did not declare it. - @felixfour
    • Fixed: missing GTNHLib dependency declaration in the mod annotation
  • #102 HudHandler skips the armor HUD when ArmorSummary has no max protection and no energy storage. A new IEnergyContainerBowItem interface extends IEnergyContainerWeaponItem. DraconicBow and WyvernBow implement it, and BowHandler and GUIToolConfig match on it instead of a name substring. The out-of-arrows key compared in GUIToolConfig changed from .name to .txt. - @ABKQPO
    • Added: Bow-specific energy container interface
    • Fixed: Shield HUD showing without shield armor, Bow detection by item name in tool config GUI
  • #100 Moved client proxy particle calls in EntityChaosBolt, EntityChaosVortex and TileEnergyTransceiver into @SideOnly(CLIENT) methods. Added tryRepositionPlayerOnMount to CommonProxy and made MountUpdatePacket call it through the common proxy. Also annotated ShieldRenderHandler.tickEnd and made changes to the remote energy tiles. - @Alexdoru
    • Fixed: Dedicated server crash from client-only calls in Chaos Guardian entities and energy tiles
    • Closes GTNH#24552
  • #97 Converted static collections to instance fields managed via ClientProxy and CommonProxy; nullified instances on server stop/client disconnect; fixed shield renderer, Dislocator Inhibitor world caching, CustomArmorHandler, DragonChunkLoader, and ParticleHandler; fixed armor step issue on removal. - @Alexdoru
    • Removed: static ShieldRenderHandler, KeyBindings static storage
    • Fixed: memory leaks in static caches, armor step retention, dimension-change memory bloat
  • #89 Edits en_US.lang: removes stray \n breaks in wyvernBoots and draconicBoots lore, and changes the leading colour code on draconicHelm lore from 2 to 3. - @tuodekun
    • Fixed: inconsistent line breaks in Wyvern and Draconic item lore
  • #88 Updated ModelDraconicArmor to apply vanilla rotation to the left arm when an offhand item is held; wrapped in soft dependency check via Loader.isModLoaded('backhand'). - @Roelof033
    • Added: ModHelper integration class
    • Fixed: draconic armor offhand rendering with backhand mod
    • Closes GTNH#23301
  • #87 TileReactorStabilizer.getInventoryStackLimit null-checks getMaster() and returns 0 when the core is null. setInventorySlotContents and decrStackSize still lack the same check. - @Georggi
    • Fixed: NullPointerException in the Reactor Stabilizer when the master core is missing
  • #81 Added the missing SPACE case returning "HazmatSpace" to the switch in ModHelper.getHazmatArmorConfigKey. Also bumps dependency versions, the settings convention plugin and gradle.properties comments. - @Alexdoru
    • Fixed: missing space hazard case in hazmat armor config key lookup

Performance ​

  • #111 ResourceHandler.init now calls getImagesFolder() and addRSPack() during pre-init, so the folder resource pack is registered before FML's final resource reload. The refresh call after the download finishes is removed. downloadedImages is now a ConcurrentHashMap and isFinished is volatile. - @boubou19
    • Removed: global resource refresh after manual image download
  • #109 Added a static VALUES array to the SelfPickUpMode enum in Magnet and used it in next() and getSelfPickupStatus instead of calling values(). - @boubou19
  • #108 Created PlacedItemDisplayListCache to cache OBJ model rendering, integrated with RenderTilePlacedItem and TilePlacedItem, optimized RenderMobSoul. Added dep on external caching library. - @boubou19
    • Added: PlacedItemDisplayListCache class, Display list caching system
  • #107 In ModelRenderOBJ, moved ResourceHandler.bindTexture(texture) out of compileDisplayList and into render and renderWithRotation, so the bind happens outside the GL display list. - @mitchej123
    • Fixed: texture lazily created and uploaded every render pass
  • #99 The tile renderers now keep one cached EntityItem per renderer and reuse it, setting the stack and world before rendering and clearing them afterwards. Removes the per-frame EntityItem allocation and stack copy. - @Alexdoru
    • Fixed: per-frame EntityItem allocation in tile renderers

Internal / Refactor ​

  • #86 Copies the BrandonsCore classes into Draconic Evolution and renames the utills packages to utils (LogHelper, DataUtils, ItemNBTHelper, GuiHelper). It drops the required-after:BrandonsCore dependency, adds GTNHLib as an api dependency, hardcodes the proxy class names and removes dead code and commented-out blocks. - @Connor-Colenso
    • Added: BrandonsCore code inside Draconic Evolution
    • Removed: BrandonsCore dependency
    • Migration: Addons that use BrandonsCore or the old utills packages from Draconic Evolution must switch to the com.brandon3055.draconicevolution utils packages.

Documentation ​

  • #84 Changed the description string for linearReactorFuelUsage in ConfigHandler.syncConfig and reformatted the call chain. - @StaffiX

Chores ​

  • #91 Synced zh_CN.lang with ParaTranz. Supersedes #83, which mishandled multi-line lores. - @tuodekun
    • Fixed: multi-line lore handling in the zh-CN translation
  • #82 Removed MinecraftForge.EVENT_BUS.register(instance) from DragonChunkLoader.init and switched explicit generic type arguments to diamond syntax. - @Alexdoru
    • Removed: unused event bus registration in the dragon chunk loader

Contributors ​

Everyone who authored, reviewed or co-authored a change on this page, with how many of them:

@Alexdoru (6), @boubou19 (5), @Algent (4), @Dream-Master (4), @Ruling-0 (4), @UltraProdigy (4), @Kogepan229 (3), @felixfour (2), @koolkrafter5 (2), @RecursivePineapple (2), @tuodekun (2), @ABKQPO (1), @Connor-Colenso (1), @Georggi (1), @Kiwi233 (1), @MalTeeez (1), @mitchej123 (1), @Nana-Sakura (1), @NealDeal34 (1), @Nikolay-Sitnikov (1), @Ranzuu (1), @Roelof033 (1), @sisyphussy (1), @StaffiX (1), @SuperSoupr (1), @tiffit (1)