~starkingdoms/starkingdoms

ref: 7baddd1c84b0cf50d49ececd97ea631725533ad3 starkingdoms/starkingdoms-client/src/save.ts -rw-r--r-- 533 bytes
7baddd1c — ghostlyzsh squishy joints and fix thruster turning 1 year, 8 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { decode, encode } from "@msgpack/msgpack";

function base64ToBytes(base64: string) {
  const binString = atob(base64);
  // @ts-ignore
  return Uint8Array.from(binString, (m) => m.codePointAt(0));
}

function bytesToBase64(bytes: any) {
  const binString = String.fromCodePoint(...bytes);
  return btoa(binString);
}

export function unpack_save(data: string): any {
  // @ts-ignore
  return decode(decode(base64ToBytes(data))[0]);
}

export function pack_partial(data: any): string {
  return bytesToBase64(encode(data));
}