/// <summary> /// Initializes a new instance of the <see cref="Barrier"/> class. /// </summary> /// <param name="info">The sprite information.</param> public Barrier(SpriteInfo info) : base(info) { var setting = info.Settings.FirstOrDefault(s => s.Key.Equals("Shape", StringComparison.OrdinalIgnoreCase)); this.SourceRectangle = Utils.RectangleUtils.Parse(setting.Value); setting = info.Settings.FirstOrDefault(s => s.Key.Equals("Color", StringComparison.OrdinalIgnoreCase)); this._color = Utils.ColorUtils.Parse(setting.Value); }
/// <summary> /// Initializes a new instance of the <see cref="CollidableSprite"/> class. /// </summary> /// <param name="info">The sprite information.</param> public CollidableSprite(SpriteInfo info) : base(info) { var setting = info.Settings.FirstOrDefault(s => s.Key.Equals("CollidableType", StringComparison.OrdinalIgnoreCase)); if ((setting == null) || !Enum.TryParse(setting.Value, out this._collidableType)) { this._collidableType = CollidableType.Passable; } if (CollisionManager.Collection != null) { CollisionManager.Collection.Insert(this); } }
/// <summary> /// Initializes a new instance of the <see cref="Player"/> class. /// </summary> /// <param name="info">The sprite information.</param> public Player(SpriteInfo info) : base(info, CollidableType.Impassable) { var setting = info.Settings.FirstOrDefault(s => s.Key.Equals("CharacterName", StringComparison.OrdinalIgnoreCase)); this._characterName = string.IsNullOrWhiteSpace(setting.Value) ? "Player1" : setting.Value; setting = info.Settings.FirstOrDefault(s => s.Key.Equals("PlayerIndex", StringComparison.OrdinalIgnoreCase)); var index = int.Parse(setting.Value); switch (index) { case 1: this._playerIndex = PlayerIndex.One; break; case 2: this._playerIndex = PlayerIndex.One; break; case 3: this._playerIndex = PlayerIndex.One; break; case 4: this._playerIndex = PlayerIndex.One; break; } this.Velocity = Vector2.Zero; this._nextPosition = info.Position; }
/// <summary> /// Initializes a new instance of the <see cref="SoftProDollar"/> class. /// </summary> /// <param name="info">The sprite information.</param> public SoftProDollar(SpriteInfo info) : base(info, CollidableType.Passable) { this._basePosition = info.Position; }
/// <summary> /// Initializes a new instance of the <see cref="Exit"/> class. /// </summary> /// <param name="info">The sprite information.</param> public Exit(SpriteInfo info) : base(info, CollidableType.Passable) { // Intentionally left blank }
/// <summary> /// Initializes a new instance of the <see cref="Barrier"/> class. /// </summary> /// <param name="info">The sprite information.</param> public PatrolMarker(SpriteInfo info) : base(info) { // Intentionally left blank }