Commit Graph

16 Commits

Author SHA1 Message Date
Jacobwasbeast
788b7167a2 feat(models): add block model boxes + picking 2026-03-11 15:12:35 -05:00
Jacobwasbeast
15c02e14ae refactor(runtime): group symbol resolver 2026-03-10 18:40:35 -05:00
Jacobwasbeast
70dbff3fac feat(api/runtime): java-style assets and localization sync 2026-03-10 14:36:23 -05:00
Jacobwasbeast
480abcafd2 fix(runtime): rework atlas merging and texture pack hooks 2026-03-10 04:33:12 -05:00
Jacobwasbeast
4027ee4ef2 fix(runtime): fix chunk remap setTile crashes and use missing block fallback
- Clear invalid block IDs before setTile to prevent setTileAndData crashes
- Add CompressedTileStorage::set for direct block write when Tile::tiles[old] is null
- Use missing block placeholder with API-resolved IDs instead of bedrock
- Work around raw_pdb GetRecordAtOffset removal via ForEachSymbol iteration
2026-03-08 23:50:21 -05:00
Jacobwasbeast
887d75eb79 fix(runtime): remap modded block ids using save hooks 2026-03-08 22:35:05 -05:00
Jacobwasbeast
656693ad95 fix(runtime): remap modded item ids using namespace tags 2026-03-08 20:53:45 -05:00
Jacobwasbeast
c6aac86e69 feat(modloader): add managed block callbacks and ruby block examples 2026-03-08 18:24:51 -05:00
Jacobwasbeast
d2be935ada feat(pickaxe): implement Hooked_PickaxeItemGetDestroySpeed and Hooked_PickaxeItemCanDestroySpecial
- Add hook implementations for custom pickaxe tier support
- Hooked_PickaxeItemGetDestroySpeed: use CustomPickaxeRegistry destroy speed for configured pickaxes when mining effective blocks
- Hooked_PickaxeItemCanDestroySpecial: use CustomPickaxeRegistry effective blocks and harvest level (obsidian requires level 3)
- Add TryReadItemIdFromPickaxe and TryReadTileId helpers for reading item/tile IDs from native pointers
2026-03-08 00:16:15 -06:00
Jacobwasbeast
b924105102 fix(runtime): guard animated texture crashes 2026-03-07 21:21:41 -06:00
Jacobwasbeast
ed78317b96 fix(runtime): route dropped item billboard atlas binds 2026-03-07 20:54:17 -06:00
Jacobwasbeast
0b4c87acbc feat(modloader): add item use and summon APIs
Add managed item use hooks, server-authoritative summon support, and side-aware use item context.

Include IdHelper mappings, example ruby wand usage, and related runtime/crash-handler updates.
2026-03-07 19:54:52 -06:00
Jacobwasbeast
eabf8fe858 Implement virtual atlas routing and multi-page mod texture support
- add runtime hooks for texture bind/load and stitched UV sampling

- extend symbol resolution for texture and atlas entry points

- add per-icon atlas page routing and pending-page state

- build mod block/item atlas pages and virtual atlas outputs

- route terrain/item atlas requests through virtual paths for mod icons

- keep creative injection changes and hook plumbing in sync with new routing
2026-03-07 15:27:19 -06:00
Jacobwasbeast
6464263d12 feat(items): add managed custom item callbacks and native pickaxe support
Introduce a managed custom item API with mine-block callbacks and cancellation semantics, plus native runtime support for registering pickaxe items.

Key changes:

- add WeaveLoader.API Item base/PickaxeItem and dispatcher plumbing

- register managed item instances in ItemRegistry

- add native export for pickaxe registration and wire through GameObjectFactory

- resolve/hook item mineBlock paths (ItemInstance/Item/DiggerItem) and dispatch to managed host

- expose managed OnItemMineBlock entry in WeaveLoader.Core and DotNetHost

- add Ruby Pickaxe example item + placeholder texture

- keep logger usable even before managed handler setup via native fallback
2026-03-07 13:42:46 -06:00
Jacobwasbeast
4119522cde Add runtime furnace recipe registration support 2026-03-07 02:55:24 -06:00
Jacobwasbeast
fa195fdc2e Rebrand LegacyForge to Weave Loader
Rename across entire codebase:
- LegacyForge -> WeaveLoader (identifiers, namespaces, classes, DLLs)
- LegacyForgeRuntime -> WeaveLoaderRuntime (C++ project)
- LegacyForge.API/Core/Launcher -> WeaveLoader.API/Core/Launcher (C# projects)
- [LegacyForge] -> [WeaveLoader] (log prefixes)
- legacyforge -> weaveloader (config files, log files, backup suffixes)
- Display name "Weave Loader" in README, CONTRIBUTING, LICENSE
2026-03-06 23:31:18 -06:00