1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2025-02-03 23:26:41 -05:00
OpenDiablo2/d2common/d2data/d2datadict/palette.go
Alex Yatskov a4efd41383
File format cleanup (#320)
* Configuration cleanup

* Cleanup

* cleanup file formats

* make palettes a proper fileformat
2020-02-26 08:39:38 -05:00

29 lines
740 B
Go

package d2datadict
import (
"github.com/OpenDiablo2/OpenDiablo2/d2common/d2enum"
"github.com/OpenDiablo2/OpenDiablo2/d2common/d2fileformats/d2dat"
)
// PaletteType represents a palette
type PaletteRec struct {
Name d2enum.PaletteType
Colors [256]d2dat.DATColor
}
var Palettes map[d2enum.PaletteType]PaletteRec
// CreatePalette creates a palette
func CreatePalette(name d2enum.PaletteType, data []byte) PaletteRec {
palette, _ := d2dat.LoadDAT(data)
return PaletteRec{Name: name, Colors: palette.Colors}
}
func LoadPalette(paletteType d2enum.PaletteType, file []byte) {
if Palettes == nil {
Palettes = make(map[d2enum.PaletteType]PaletteRec)
}
palette := CreatePalette(paletteType, file)
Palettes[paletteType] = palette
}