mirror of
https://github.com/MartinKral/Slash-The-Hordes
synced 2025-04-22 06:49:24 +00:00
61 lines
1.8 KiB
TypeScript
61 lines
1.8 KiB
TypeScript
export class GameSettings {
|
|
public player: PlayerSettings = new PlayerSettings();
|
|
public upgrades: UpgradeSettings = new UpgradeSettings();
|
|
public enemyManager: EnemyManagerSettings = new EnemyManagerSettings();
|
|
}
|
|
|
|
export class PlayerSettings {
|
|
public defaultHP = 0;
|
|
public requiredXP: number[] = [];
|
|
public regenerationDelay = 0;
|
|
public collisionDelay = 0;
|
|
public weapon: WeaponSettings = new WeaponSettings();
|
|
public haloLauncher: HaloLauncherSettings = new HaloLauncherSettings();
|
|
public horizontalLauncher: WaveLauncherSettings = new WaveLauncherSettings();
|
|
public diagonalLauncher: WaveLauncherSettings = new WaveLauncherSettings();
|
|
}
|
|
|
|
export class WeaponSettings {
|
|
public strikeDelay = 0;
|
|
public damage = 0;
|
|
}
|
|
|
|
export class WaveLauncherSettings {
|
|
public wavesToShootPerUpgrade = 0;
|
|
public launcher = new ProjectileLauncherSettings();
|
|
}
|
|
|
|
export class HaloLauncherSettings {
|
|
public projectilesToSpawn = 0;
|
|
public cooldownDivisorPerUpgrade = 0;
|
|
public launcher = new ProjectileLauncherSettings();
|
|
}
|
|
|
|
export class ProjectileLauncherSettings {
|
|
public projectileLifetime = 0;
|
|
public projectileSpeed = 0;
|
|
public wavesToShoot = 0;
|
|
public wavesDelayMs = 0;
|
|
public cooldown = 0;
|
|
}
|
|
|
|
export class UpgradeSettings {
|
|
public maxWeaponLengthUpgrades = 0;
|
|
public maxWeaponDamageUpgrades = 0;
|
|
public maxHorizontalProjectileUpgrades = 0;
|
|
public maxDiagonalProjectileUpgrades = 0;
|
|
public maxHaloProjectileUpgrades = 0;
|
|
public maxRegenerationUpgrades = 0;
|
|
}
|
|
|
|
export class EnemyManagerSettings {
|
|
public waveEnemySpawner = new WaveEnemySpawnerSettings();
|
|
}
|
|
|
|
export class WaveEnemySpawnerSettings {
|
|
public cooldown = 0;
|
|
public enemiesPerWave = 0;
|
|
public waveLifetime = 0;
|
|
public enemyType = "";
|
|
}
|