Remove outdated nbt library readme document
This commit is contained in:
@ -4,75 +4,3 @@ This package implement the [Named Binary Tag](https://wiki.vg/NBT) format of Min
|
|||||||
|
|
||||||
The API is very similar to the standard library `encoding/json`. If you (high probability) have used that, it is easy to
|
The API is very similar to the standard library `encoding/json`. If you (high probability) have used that, it is easy to
|
||||||
use this.
|
use this.
|
||||||
|
|
||||||
## Basic Usage
|
|
||||||
|
|
||||||
For the following NBT tag:
|
|
||||||
|
|
||||||
```
|
|
||||||
TAG_Compound("hello world") {
|
|
||||||
TAG_String("name"): "Bananrama"
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
To read and write would look like:
|
|
||||||
|
|
||||||
```go
|
|
||||||
package main
|
|
||||||
|
|
||||||
import "github.com/Tnze/go-mc/nbt"
|
|
||||||
|
|
||||||
type Compound struct {
|
|
||||||
Name string `nbt:"name"` // The field must be started with the capital letter
|
|
||||||
}
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
banana := Compound{Name: "Bananrama"}
|
|
||||||
data, _ := nbt.Marshal(banana)
|
|
||||||
|
|
||||||
var rama Compound
|
|
||||||
_ = nbt.Unmarshal(data, &rama)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Struct field tags
|
|
||||||
|
|
||||||
There are two tags supported:
|
|
||||||
|
|
||||||
- nbt
|
|
||||||
- nbt_type
|
|
||||||
|
|
||||||
The `nbt` tag is used to change the name of the NBT Tag field, whereas the `nbt_type`
|
|
||||||
tag is used to enforce a certain NBT Tag type when it is ambiguous.
|
|
||||||
|
|
||||||
For example:
|
|
||||||
|
|
||||||
```go
|
|
||||||
type Compound struct {
|
|
||||||
LongArray []int64
|
|
||||||
LongList []int64 `nbt_type:"list"` // forces a long list instead of a long array
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Stringified NBT
|
|
||||||
|
|
||||||
You can transform SNBT string into binary NBT by using go-mc, which could be useful when parsing command, but the
|
|
||||||
reverse conversion is not supported at the moment.
|
|
||||||
|
|
||||||
```go
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"bytes"
|
|
||||||
"github.com/Tnze/go-mc/nbt"
|
|
||||||
)
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
var buf bytes.Buffer
|
|
||||||
e := nbt.NewEncoder(&buf)
|
|
||||||
err := e.WriteSNBT(`{Tnze: 1, 'sp ace': [I;1,2,3]}`)
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
Reference in New Issue
Block a user