private ConfigurationData() { // set default values for level configs levelsConfig = new LevelConfig[2]; LevelConfig levelConfig = new LevelConfig("Level01"); // set default values for spaceships configs SpaceShipConfig[] spaceShipsConfig = new SpaceShipConfig[2]; // set default values for player configs PlayerShipConfig playerShipConfig = new PlayerShipConfig("Player", "Player"); playerShipConfig.health = new HealthConfig(100); playerShipConfig.movement = new MovementConfig(80); playerShipConfig.attack = new AttackConfig(200, 0.5f); // set default values for player bolt config BoltConfig playerBoltConfig = new BoltConfig("Player Bolt", "Bolt"); playerBoltConfig.movement = new MovementConfig(100); playerBoltConfig.attack = new AttackConfig(50); playerShipConfig.boltConfig = playerBoltConfig; spaceShipsConfig.SetValue(playerShipConfig, 0); // set default values for enemy config EnemyShipConfig enemyShipConfig = new EnemyShipConfig("Enemy", "SpaceItems/Enemy"); enemyShipConfig.health = new HealthConfig(50); enemyShipConfig.movement = new MovementConfig(60, 1.0f, 10.0f, 30.0f); enemyShipConfig.attack = new AttackConfig(70, 1.0f); enemyShipConfig.scoreValue = 150; // set default values for enemy bolt config BoltConfig enemyBoltConfig = new BoltConfig("Enemy Bolt", "Bolt"); enemyBoltConfig.movement = new MovementConfig(90); enemyBoltConfig.attack = new AttackConfig(30); enemyShipConfig.boltConfig = enemyBoltConfig; spaceShipsConfig.SetValue(enemyShipConfig, 1); levelConfig.spaceShipsConfig = spaceShipsConfig; // set default values for obstacles ObstacleConfig[] obstaclesConfig = new ObstacleConfig[1]; // set default values for asteroid config ObstacleConfig asteroidConfig = new ObstacleConfig("Red Asteroid", "SpaceItems/Red Asteroid"); asteroidConfig.health = new HealthConfig(100); asteroidConfig.movement = new MovementConfig(60, 0.25f); asteroidConfig.scoreValue = 100; asteroidConfig.attack = new AttackConfig(1000); obstaclesConfig.SetValue(asteroidConfig, 0); levelConfig.obstaclesConfig = obstaclesConfig; // set default values for collectible config CollectibleConfig[] collectiblesConfig = new CollectibleConfig[2]; // collectibleConfig.speed = 55; collectiblesConfig[0] = new CollectibleConfig("Health Powerup", "SpaceItems/Health Powerup"); collectiblesConfig[0].movement = new MovementConfig(55); collectiblesConfig.SetValue(new CollectibleConfig("FireRate Powerup", "SpaceItems/FireRate Powerup"), 1); collectiblesConfig[1].movement = new MovementConfig(60); levelConfig.collectiblesConfig = collectiblesConfig; // set default values for wave config WaveConfig waveConfig = new WaveConfig(); waveConfig.startWait = 0.5f; waveConfig.spawnWaveWait = 3.0f; waveConfig.spawnMessageDelay = 1.0f; waveConfig.spawnItemWait = 1.0f; waveConfig.itemsNumber = 5; levelConfig.waveConfig = waveConfig; levelsConfig.SetValue(levelConfig, 0); }