Remember biome colors in local storage

This commit is contained in:
Misode
2020-08-27 18:59:09 +02:00
parent 5afc8ef1ed
commit b9e66dbd5e
2 changed files with 5 additions and 1 deletions

View File

@@ -69,6 +69,7 @@ const treeViewNodeInjector = (path: ModelPath, view: TreeView) => {
.map(v => {
const id = view.registerClick(() => {
views.visualizer.set(v, path)
views.visualizer.model.invalidate()
})
return `<button data-id=${id}>${locale('visualize')} <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" width="16" height="16"><path fill-rule="evenodd" d="M1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0zM8 0a8 8 0 100 16A8 8 0 008 0zM6.379 5.227A.25.25 0 006 5.442v5.117a.25.25 0 00.379.214l4.264-2.559a.25.25 0 000-.428L6.379 5.227z"></path></svg></button>`
})

View File

@@ -3,6 +3,7 @@ import { DataModel, Path, ModelPath } from "@mcschema/core"
import { Visualizer } from './Visualizer'
import { VisualizerView } from './VisualizerView'
const LOCAL_STORAGE_BIOME_COLORS = 'biome_colors'
export class BiomeNoiseVisualizer extends Visualizer {
static readonly noiseMaps = ['altitude', 'temperature', 'humidity', 'weirdness']
@@ -10,10 +11,11 @@ export class BiomeNoiseVisualizer extends Visualizer {
private offsetX: number = 0
private offsetY: number = 0
private viewScale: number = 0
private biomeColors: {[id: string]: number[]} = {}
private biomeColors: {[id: string]: number[]}
constructor() {
super()
this.biomeColors = JSON.parse(localStorage.getItem(LOCAL_STORAGE_BIOME_COLORS) ?? '{}')
this.noise = BiomeNoiseVisualizer.noiseMaps.map(e => new SimplexNoise())
}
@@ -106,6 +108,7 @@ export class BiomeNoiseVisualizer extends Visualizer {
setBiomeColor(biome: string, value: string) {
this.biomeColors[biome] = [parseInt(value.slice(1, 3), 16), parseInt(value.slice(3, 5), 16), parseInt(value.slice(5, 7), 16)]
localStorage.setItem(LOCAL_STORAGE_BIOME_COLORS, JSON.stringify(this.biomeColors))
}
getBiomeHex(biome: string): string {