internal static CheckpointData GetCheckpointData(CheckpointEntity checkpointEntity) { return(new CheckpointData( checkpointEntity.Offset, checkpointEntity.LastFailedRevivalTime.HasValue ? Option.Some(checkpointEntity.LastFailedRevivalTime.Value) : Option.None <DateTime>(), checkpointEntity.UnhealthySince.HasValue ? Option.Some(checkpointEntity.UnhealthySince.Value) : Option.None <DateTime>())); }
// *** Set initial game state *** public override void Initialize(bool addToManagers) { // Set the screen up here instead of in the Constructor to avoid // exceptions occurring during the constructor. TimeManager.CurrentTime = 0f; timeLimit = 200f; #region farseer_world_init // *** Farseer world initialisation *** // float gravity = -10; farWorld = new World(new Vector2(0f, gravity)); // // *** #endregion // >>> Remove cursor for WP. #region ui_init // *** UI initialisation *** // // *** Cursor *** (not required for WP) // frbCursor = new CursorEntity("CursorSprite"); frbCursor.Initialize(); // frbRGripButton = new RGripButton("RGripButtonSprite"); frbRGripButton.Initialize(); frbLGripButton = new LGripButton("LGripButtonSprite"); frbLGripButton.Initialize(); // // frbRSwingButton = new RSwingButton("RSwingButtonSprite"); //frbRSwingButton.Initialize(); // frbLSwingButton = new LSwingButton("LSwingButtonSprite"); // frbLSwingButton.Initialize(); // frbPullUpButton = new PullUpButton("PullUpButtonSprite"); // frbPullUpButton.Initialize(); frbTut = new TutorialBubble("TutorialBubble"); frbTut.Initialize(); // *** #endregion #region entity_init // *** Create & initialise entities for game start *** // // *** Player character *** // frbClimber = new ClimberEntity(farWorld, new Vector2(0f, 0f)); frbClimber.Initialize(); // // #region grip_entites // *** Grips *** frbGrips = new PositionedObjectList <GripEntity>(); // frbGrip1 = new GripEntity("GripSprite1", farWorld); frbGrip1.Initialize(new Vector2(-10f, 0f), false, 0); frbGrips.Add(frbGrip1); // frbGrip2 = new GripEntity("GripSprite2", farWorld); frbGrip2.Initialize(new Vector2(5f, 0f), false, 0); frbGrips.Add(frbGrip2); // frbGrip3 = new GripEntity("GripSprite3", farWorld); frbGrip3.Initialize(new Vector2(20f, 0f), false, 0); frbGrips.Add(frbGrip3); // frbGrip4 = new GripEntity("GripSprite4", farWorld); frbGrip4.Initialize(new Vector2(30f, 5f), false, 0); frbGrips.Add(frbGrip4); // frbGrip5 = new GripEntity("GripSprite5", farWorld); frbGrip5.Initialize(new Vector2(40f, 10f), false, 0); frbGrips.Add(frbGrip5); // frbGrip6 = new GripEntity("GripSprite6", farWorld); frbGrip6.Initialize(new Vector2(30f, 15f), false, 0); frbGrips.Add(frbGrip6); // frbGrip7 = new GripEntity("GripSprite7", farWorld); frbGrip7.Initialize(new Vector2(40f, 20f), false, 0); frbGrips.Add(frbGrip7); // frbGrip8 = new GripEntity("GripSprite8", farWorld); frbGrip8.Initialize(new Vector2(45f, 30f), false, 0); frbGrips.Add(frbGrip8); // frbGrip9 = new GripEntity("GripSprite9", farWorld); frbGrip9.Initialize(new Vector2(40f, 40f), false, 0); frbGrips.Add(frbGrip9); // frbGrip10 = new GripEntity("GripSprite10", farWorld); frbGrip10.Initialize(new Vector2(45f, 55f), false, 0); frbGrips.Add(frbGrip10); // frbGrip11 = new GripEntity("GripSprite11", farWorld); frbGrip11.Initialize(new Vector2(40f, 70f), false, 0); frbGrips.Add(frbGrip11); // frbGrip12 = new GripEntity("GripSprite12", farWorld); frbGrip12.Initialize(new Vector2(45f, 85f), true, 15); frbGrips.Add(frbGrip12); // frbGrip13 = new GripEntity("GripSprite13", farWorld); frbGrip13.Initialize(new Vector2(60f, 85f), true, 15); frbGrips.Add(frbGrip13); // frbGrip14 = new GripEntity("GripSprite14", farWorld); frbGrip14.Initialize(new Vector2(75f, 85f), true, 8); frbGrips.Add(frbGrip14); // frbGrip15 = new GripEntity("GripSprite15", farWorld); frbGrip15.Initialize(new Vector2(90f, 85f), false, 0); frbGrips.Add(frbGrip15); // #endregion // // // *** Scenery *** // // platform = new Platform(farWorld, new Vector2(100f, 1.5f), new Vector2(0f, -40f)); // frbCheckpoints = new PositionedObjectList <CheckpointEntity>(); // frbCheckpoint1 = new CheckpointEntity("CheckPointSprite1"); frbCheckpoint1.Initialize(new Vector2(82.5f, 82.5f), 120f); frbCheckpoints.Add(frbCheckpoint1); #endregion // AddToManagers should be called LAST in this method: if (addToManagers) { AddToManagers(); } }