Skip to content

Module-oriented api #6

@DDShadowRU

Description

@DDShadowRU

Variant 1

  BackpackRegistry.register(ItemID.testBackpack, {
    extend: ItemID.silkBackpack,
    modules: [
      BackpackModules.CONTAINER({
        capacity: 20,
        accept: [
          "^ore.*$",
        ]
      }),
      BackpackModules.TOOLTIP_CONTENTS({
        each(item) {
          return "${Native.ChatColor.Green}-> ${Item.getName(item.id)}";
        }
      }),
      BackpackModules.UI({
        row: 5,
        spacing: 10
      }),
      BackpackModules.UI_ACTIONS()
    ]
  })

Variant 2

  BackpackModules.add("container", ContainerModule);
  BackpackModules.add("tooltipContents", TooltipModule);
  BackpackModules.add("ui", UiModule);
  BackpackModules.add("uiActions", UiActionsModule);
  //...
  BackpackRegistry.register(ItemID.testBackpack, {
    extend: ItemID.silkBackpack,
    modules: {
      container: {
        capacity: 20,
        accept: [
          "^ore.*$",
        ]
      },
      tooltipContents: {
        each(item) {
          return "${Native.ChatColor.Green}-> ${Item.getName(item.id)}";
        }
      },
      ui: {
        row: 5,
        spacing: 10
      },
      uiActions: {}
    }
  });
  //...
  const container = BackpackModules.get("container").findFor(ItemID.silkBackpack);

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions