Home Reference Source
import {SavegameManager} from 'shapez.io/js/savegame/savegame_manager.js'
public class | source

SavegameManager

Extends:

ReadWriteProxy → SavegameManager

Constructor Summary

Public Constructor
public

Member Summary

Public Members
public

Method Summary

Public Methods
public

Creates a new savegame

public

deleteSavegame(game: import("./savegame_typedefs").SavegameMetadata): *

Deletes a savegame

public

Helper method to generate a new internal savegame id

public
public

getDefaultData(): import("./savegame_typedefs").SavegamesData

public

getGameMetaDataByInternalId(id: string): import("./savegame_typedefs").SavegameMetadata

Returns a given games metadata by id

public

Returns if this manager has any savegame of a 1.1.19 version, which enables all levels

public
public

getSavegamesMetaData(): Array<import("./savegame_typedefs").SavegameMetadata>

public

Attempts to import a savegame

public

initialize(): *

public

migrate(data: import("./savegame_typedefs").SavegamesData): *

public

Sorts all savegames by their creation time descending

public

Hook after the savegames got changed

public

verify(data: *): *

Inherited Summary

From class ReadWriteProxy
public static
public static
public
public
public

Store a debounced handler to prevent double writes

public
public

deleteAsync(): Promise<void>

Deletes the file

public

Actually writes the data asychronously

public
public
public
public
public
public

readAsync(): *

public
public
public

writeAsync(): Promise<void>

Writes the data asychronously, fails if verify() fails.

Public Constructors

public constructor() source

Override:

ReadWriteProxy#constructor

Public Members

public currentData: * source

Override:

ReadWriteProxy#currentData

Public Methods

public createNewSavegame(): Savegame source

Creates a new savegame

Return:

Savegame

public deleteSavegame(game: import("./savegame_typedefs").SavegameMetadata): * source

Deletes a savegame

Params:

NameTypeAttributeDescription
game import("./savegame_typedefs").SavegameMetadata

Return:

*

public generateInternalId(): * source

Helper method to generate a new internal savegame id

Return:

*

public getCurrentVersion(): number source

Override:

ReadWriteProxy#getCurrentVersion

Return:

number

public getDefaultData(): import("./savegame_typedefs").SavegamesData source

Override:

ReadWriteProxy#getDefaultData

Return:

import("./savegame_typedefs").SavegamesData

public getGameMetaDataByInternalId(id: string): import("./savegame_typedefs").SavegameMetadata source

Returns a given games metadata by id

Params:

NameTypeAttributeDescription
id string

Return:

import("./savegame_typedefs").SavegameMetadata

public getHasAnyLegacySavegames(): * source

Returns if this manager has any savegame of a 1.1.19 version, which enables all levels

Return:

*

public getSavegameById(internalId: string): Savegame source

Params:

NameTypeAttributeDescription
internalId string

Return:

Savegame

public getSavegamesMetaData(): Array<import("./savegame_typedefs").SavegameMetadata> source

Return:

Array<import("./savegame_typedefs").SavegameMetadata>

public importSavegame(data: object): * source

Attempts to import a savegame

Params:

NameTypeAttributeDescription
data object

Return:

*

public initialize(): * source

Return:

*

public migrate(data: import("./savegame_typedefs").SavegamesData): * source

Override:

ReadWriteProxy#migrate

Params:

NameTypeAttributeDescription
data import("./savegame_typedefs").SavegamesData

Return:

*

public sortSavegames(): Promise<any> source

Sorts all savegames by their creation time descending

Return:

Promise<any>

public updateAfterSavegamesChanged(): * source

Hook after the savegames got changed

Return:

*

public verify(data: *): * source

Override:

ReadWriteProxy#verify

Params:

NameTypeAttributeDescription
data *

Return:

*