2022-01-14 06:18:25 +00:00
|
|
|
/* typehints:start */
|
|
|
|
|
import { BaseHUDPart } from "../game/hud/base_hud_part";
|
2022-01-14 18:01:38 +00:00
|
|
|
import { GameRoot } from "../game/root";
|
2022-01-14 18:07:37 +00:00
|
|
|
import { GameState } from "../core/game_state";
|
|
|
|
|
import { InGameState } from "../states/ingame";
|
2022-01-14 06:18:25 +00:00
|
|
|
/* typehints:end */
|
|
|
|
|
|
2022-01-14 18:01:38 +00:00
|
|
|
import { Signal } from "../core/signal";
|
|
|
|
|
|
2022-01-14 06:18:25 +00:00
|
|
|
// Single file to avoid circular deps
|
|
|
|
|
|
|
|
|
|
export const MOD_SIGNALS = {
|
2022-01-15 12:59:38 +00:00
|
|
|
// Called when the application has booted and instances like the app settings etc are available
|
|
|
|
|
appBooted: new Signal(),
|
2022-01-14 06:37:26 +00:00
|
|
|
|
2022-01-14 06:18:25 +00:00
|
|
|
modifyLevelDefinitions: /** @type {TypedSignal<[Array[Object]]>} */ (new Signal()),
|
2022-01-14 06:37:26 +00:00
|
|
|
modifyUpgrades: /** @type {TypedSignal<[Object]>} */ (new Signal()),
|
2022-01-14 06:18:25 +00:00
|
|
|
|
|
|
|
|
hudElementInitialized: /** @type {TypedSignal<[BaseHUDPart]>} */ (new Signal()),
|
|
|
|
|
hudElementFinalized: /** @type {TypedSignal<[BaseHUDPart]>} */ (new Signal()),
|
2022-01-14 18:01:38 +00:00
|
|
|
|
2022-01-18 09:13:25 +00:00
|
|
|
hudInitializer: /** @type {TypedSignal<[GameRoot]>} */ (new Signal()),
|
|
|
|
|
|
2022-01-14 18:07:37 +00:00
|
|
|
gameInitialized: /** @type {TypedSignal<[GameRoot]>} */ (new Signal()),
|
|
|
|
|
gameLoadingStageEntered: /** @type {TypedSignal<[InGameState, string]>} */ (new Signal()),
|
|
|
|
|
|
2022-01-14 18:01:38 +00:00
|
|
|
gameStarted: /** @type {TypedSignal<[GameRoot]>} */ (new Signal()),
|
2022-01-14 18:07:37 +00:00
|
|
|
|
|
|
|
|
stateEntered: /** @type {TypedSignal<[GameState]>} */ (new Signal()),
|
2022-01-14 06:18:25 +00:00
|
|
|
};
|