Files
strom/data/data.go
T

41 lines
938 B
Go

package data
import (
"embed"
"encoding/json"
"errors"
"fmt"
)
//go:generate ./download_minecraft_data.sh
//go:embed minecraft-data/pc minecraft-data/dataPaths.json
var MinecraftData embed.FS
func LoadJson(path string, data any) (err error) {
b, err := MinecraftData.ReadFile(path)
if err != nil {
return
}
err = json.Unmarshal(b, data)
return
}
func LoadVersionedJson(version, dataName string, data any) (err error) {
b, err := MinecraftData.ReadFile("minecraft-data/" + Paths.Data[version][dataName] + "/" + dataName + ".json")
if err != nil {
// If you get this error, you need to probably need to update the download script
return fmt.Errorf("minecraft-data/%s/%s/%s.json: %w", version, Paths.Data[version][dataName], dataName, err)
}
err = json.Unmarshal(b, data)
return
}
var UnknownMinecraftVersionError = errors.New("unknown minecraft version")
func must(err error) {
if err != nil {
panic(err)
}
}