Skip to content

v0.3.99 - ItemId移行 (PlayerInventory, GlobalInventory)

Choose a tag to compare

@GS-Bacon GS-Bacon released this 08 Jan 03:45
· 81 commits to master since this release

変更内容

ItemId移行

プレイヤーインベントリとグローバルインベントリをBlockTypeからItemIdベースに移行しました。これにより、将来のMod対応の基盤が整いました。

PlayerInventory

  • slots型を[Option<(ItemId, u32)>]に変更
  • 全メソッドをItemIdベースに再実装
  • BlockType互換APIを#[deprecated]で維持

GlobalInventory

  • 内部ストレージをHashMap<ItemId, u32>に変更
  • items_by_id() / set_items_by_id()を追加

UI型

  • HeldItem: Option<(ItemId, u32)>に変更
  • CreativeItemButton / CreativeItemImage: ItemIdに変更

ItemId拡張

  • color()メソッド追加(UI用)

移行状況

  • BlockType参照: 1008 → 1006箇所
  • ItemId使用: 335 → 344箇所

テスト

  • 全401テスト通過
  • Clippy警告0件