update spirit
This commit is contained in:
@@ -134,6 +134,22 @@ export interface ILevelObjective {
|
||||
bossId?: string;
|
||||
}
|
||||
|
||||
/** Reinforcement rule — enemies that jump in from screen edges during gameplay. */
|
||||
export interface IReinforcementRule {
|
||||
/** Which enemy type to spawn as reinforcement. */
|
||||
type: EnemyType;
|
||||
/** Minimum interval (seconds) between two reinforcement waves of this rule. */
|
||||
intervalSec: number;
|
||||
/** How many enemies to spawn per reinforcement wave. */
|
||||
count: number;
|
||||
/** Maximum total reinforcements of this rule per level (0 = unlimited). */
|
||||
maxTotal?: number;
|
||||
/** Which edge(s) the enemies appear from. */
|
||||
edge: 'left' | 'right' | 'both';
|
||||
/** Minimum elapsed seconds before this rule becomes active. */
|
||||
delaySec?: number;
|
||||
}
|
||||
|
||||
export interface ILevelConfig {
|
||||
id: string; // e.g. '1-1'
|
||||
chapter: 1 | 2 | 3;
|
||||
@@ -150,6 +166,8 @@ export interface ILevelConfig {
|
||||
bgm: string;
|
||||
/** Enemy spawn list evaluated by the LevelMgr. */
|
||||
enemySpawns: Array<{ type: EnemyType; atPx: number; count?: number }>;
|
||||
/** Dynamic reinforcement rules — enemies jump in from screen edges. */
|
||||
reinforcements?: IReinforcementRule[];
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user