70 lines
No EOL
2.4 KiB
Markdown
70 lines
No EOL
2.4 KiB
Markdown
# prismarine-registry
|
|
[](http://npmjs.com/package/prismarine-registry)
|
|
[](https://github.com/PrismarineJS/prismarine-registry/actions?query=workflow%3A%22CI%22)
|
|
[](https://discord.gg/GsEFRM8)
|
|
[](https://gitpod.io/#https://github.com/PrismarineJS/prismarine-registry)
|
|
|
|
Creates an dynamic instance of node-minecraft-data.
|
|
|
|
## Usage
|
|
|
|
```js
|
|
const registry = require('prismarine-registry')('1.18')
|
|
|
|
registry.blocksByName['stone'] // See information about stone
|
|
```
|
|
|
|
## API
|
|
|
|
[See minecraft-data API](https://github.com/PrismarineJS/node-minecraft-data/blob/master/doc/api.md)
|
|
|
|
### mcpc
|
|
|
|
#### loadDimensionCodec / writeDimensionCodec
|
|
|
|
* loads/writes data from dimension codec in login packet
|
|
|
|
#### .chatFormattingByName, .chatFormattingById (1.19+)
|
|
|
|
Contains mapping from chat type ID (numeric or string) to information about how the
|
|
chat type should be formatted and what the relevant parameters are.
|
|
|
|
```js
|
|
{
|
|
'minecraft:chat': { formatString: '<%s> %s', parameters: [ 'sender', 'content' ] },
|
|
'minecraft:say_command': { formatString: '[%s] %s', parameters: [ 'sender', 'content' ] },
|
|
'minecraft:msg_command': { formatString: '%s whispers to you: %s', parameters: [ 'sender', 'content' ] },
|
|
'minecraft:team_msg_command': { formatString: '%s <%s> %s', parameters: [ 'team_name', 'sender', 'content' ] },
|
|
'minecraft:emote_command': { formatString: '* %s %s', parameters: [ 'sender', 'content' ] }
|
|
}
|
|
```
|
|
|
|
#### .dimensionsById, dimensionsByName (1.19+)
|
|
|
|
Mapping to dimension data object containing dimension `name`, `minY` and `height`.
|
|
|
|
### mcpe
|
|
|
|
#### loadItemStates / writeItemStates
|
|
|
|
* loads/writes data from an item states array inside the bedrock start game packet.
|
|
|
|
```js
|
|
// In a client
|
|
const { createClient } = require('bedrock-protocol');
|
|
const registry = require('prismarine-registry')('bedrock_1.19.50');
|
|
|
|
const client = createClient({
|
|
'host': '127.0.0.1'
|
|
})
|
|
|
|
client.on('start_game', ({ itemstates }) => {
|
|
registry.loadItemStates(itemstates);
|
|
})
|
|
|
|
// In a server
|
|
server.on('connect', (client) => {
|
|
const itemstates = registry.writeItemStates()
|
|
client.write('start_game', { ...startGamePacket, itemstates })
|
|
})
|
|
``` |