0.1.5 • Published 5 years ago

minecraft-id v0.1.5

Weekly downloads
14
License
MIT
Repository
github
Last release
5 years ago

Minecraft ID

npm npm (tag) npm docs

Collections and definition of IDs from Minecraft.

In Minecraft, many resources can be referenced by an (optional) namespace and a path, such as blocks and items (e.g. minecraft:stone/stone). This library provides an ID class, which represents one of these references.

Additionally, it exposes three collections for IDs:

  • IDMap<T> is a simple mapping from ID to T;
  • IDSet is a Set of IDs;
  • ResolvedIDMap<T, R> is a mapping from ID to T, but with support for lazy, cached 'resolving' from that value of T to an R. For example, this could be used to resolve a tag such as #minecraft:skeletons into its actual values, even if it contains references to other tags.

N.B. In most cases it is likely to be more useful to perform this resolving stage when the T values are first submitted, for cases such as error reporting. However, ResolvedIDMap may still be useful in these cases as it tracks dependents, so if an item is later modified only its dependents need to be re-resolved. ResolvedIDMap::resolveDeps should be called.

This package is part of the mcfunction-langserver project. It is published automatically - see the publishing strategy.

Examples

import { ID } from "minecraft-id";
import * as assert from "assert";

const myID = new ID("stone");
assert.strictEqual(`This is ${myID}`, "This is minecraft:stone");
assert.strictEqual(`This is ${myID}`, "This is minecraft:stone");
0.1.5

5 years ago

0.1.5-alpha.1

5 years ago

0.1.5-alpha.0

5 years ago

0.1.4

5 years ago

0.1.4-alpha.2

5 years ago

0.1.4-alpha.1

5 years ago

0.1.4-alpha.0

5 years ago

0.1.3

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago