//################################# // Constructor //################################# public TutorialScreen() { voice = false; explosionParticles = new ShipExplosionSettings(); TransitionOnTime = TimeSpan.FromSeconds(1.5); TransitionOffTime = TimeSpan.FromSeconds(0.5); //actual gameplay objects _station = new Station(new Vector3(0, _stationHeight, 0), 0); _planet = new Planet(new Vector3(-1000, -2000, -1000), 0); _sphere = new Sphere(new Vector3(0, _stationHeight / 2, 0), 0); _droneFleet = new DroneBuilder(); movementAllowed = false; Global.Money = 1000; _sphereAlpha = 0.1f; //UI + Frame + BG _ui = new InGameOverlay(_station); _back = new Background(); _frame = new Frame(); dustParticles = new DustParticleSystem(); tutorialDialog = new Dialog(0, 0, 80, 400, 8, false, true); captainDialog = new Dialog(0, 0, 160, 400, 8, false, true); captain = new UIItem(); borderParticles = new BorderParticleSettings(); _asteroidField = new AsteroidBuilder(40); TutorialText.Add(TutorialText.Count, "Do you want to skip the tutorial? (Y/N)\n\nYour mission will begin immediately if \nyou choose to skip."); TutorialText.Add(TutorialText.Count, "This is your drone!\nPress [Space] to continue!"); TutorialText.Add(TutorialText.Count, "You can go back with (Back)!\nTry it!"); TutorialText.Add(TutorialText.Count, "You have to defend the station against\nwaves of enemys!"); TutorialText.Add(TutorialText.Count, "The alien threat is deploying multiple\nclasses of fighters and bombers."); TutorialText.Add(TutorialText.Count, "The Fighters attack your drone and try\nto distract you while the bombers\ndestroy your station."); TutorialText.Add(TutorialText.Count, "If your station dies, the mission is\nover. So you need to keep your drone\nand our station alive."); TutorialText.Add(TutorialText.Count, "The red bar is your dronehull \nand the blue bar is your shield!"); TutorialText.Add(TutorialText.Count, "The green bar is the stationhull.\nThe white bar is the stationshield!"); TutorialText.Add(TutorialText.Count, "The armor icon shows your\ncurrent amount of armor!\nArmor reduces incoming damage."); TutorialText.Add(TutorialText.Count, "The Number next to the rocket icon\nis the amount of your BIG rockets.\nUse them wisely."); TutorialText.Add(TutorialText.Count, "Your score is your combat rating!\nShooting stuff increases\nyour score!"); TutorialText.Add(TutorialText.Count, "Fragments are the common\ncurrency on this station."); TutorialText.Add(TutorialText.Count, "You can buy upgrades in the station\nshop in exchange for fragments."); TutorialText.Add(TutorialText.Count, "Press B to open the shop and\nnavigate through it with the arrow keys."); TutorialText.Add(TutorialText.Count, "But beware! \nYou need to be near the station \nto open the shop."); TutorialText.Add(TutorialText.Count, "W ] fly up\nA ] fly left\nS ] fly down\nD ] fly right"); TutorialText.Add(TutorialText.Count, "Left mouse button\n] Shoots your laser\nRight mouse button\n] Shoots your missile\n"); TutorialText.Add(TutorialText.Count, "If you search for close enemys, watch\nat the red dot on your Drone."); TutorialText.Add(TutorialText.Count, "I also heard of incoming asteroids.\nThe comets with the blue trail\noffer a nice income."); TutorialText.Add(TutorialText.Count, "Before you start, visit the shop\nand buy something with that loaned\nmoney we gave you!"); TutorialText.Add(TutorialText.Count, "I'll now give you your controls back!\nBut stay in radio range."); TutorialText.Add(TutorialText.Count, "Press (X) to start your mission!"); TutorialText.TryGetValue(0, out tutorialMessage); }
//################################# // Constructor //################################# public GameplayScreen() { TransitionOnTime = TimeSpan.FromSeconds(1.5); TransitionOffTime = TimeSpan.FromSeconds(0.5); //actual gameplay objects _station = new Station(new Vector3(0, _stationHeight, 0), 0); _sphere = new Sphere(new Vector3(0, _stationHeight / 2, 0), 0); _asteroidField = new AsteroidBuilder(40); _droneFleet = new DroneBuilder(); _sphereAlpha = 0.1f; _waveBuilder = new WaveBuilder(10000, 15); Global.Money = 0; //UI + Frame + BG _ui = new InGameOverlay(_station); _back = new Background(); _frame = new Frame(); Global.HighScorePoints = 0; Global.Money = 0; Global.DroneDmg = 10; Global.NumberOfRockets = 1; _input = new InputState(); _planet = new Planet(new Vector3(-1000, -2000, -1000), 0); _soundEngine = new ISpaceSoundEngine(SoundOutputDriver.AutoDetect, SoundEngineOptionFlag.LoadPlugins | SoundEngineOptionFlag.MultiThreaded | SoundEngineOptionFlag.MuteIfNotFocused | SoundEngineOptionFlag.Use3DBuffers); // Construct Particles borderParticles = new BorderParticleSettings(); dustParticles = new DustParticleSystem(); hitmarkerParticles = new HitMarkerParticleSystem(); captainDialog = new Dialog(0, 0, 320, 400, 8, false, true); captain = new UIItem(); deadTime = 17000; voice = false; Global.SpeakerVolume = 2; }