using MongoDB.Bson; using MongoDB.Bson.Serialization.Attributes; using System.Collections.Generic; namespace GameAuthApi.Models; public class Spawnable { [BsonId] [BsonRepresentation(BsonType.ObjectId)] public string Id { get; set; } public string Name { get; set; } public int SpawnRate { get; set; } // Action required by the player to collect this spawnable item public string CollectAction { get; set; } // Possible outcomes of collecting this item public List CollectResults { get; set; } = []; // If true, the spawnable item is removed after a successful action public bool ConsumeOnSuccess { get; set; } = false; // Number of times this spawnable can be successfully acted upon // before it is removed. A value of 0 means unlimited uses. public int Uses { get; set; } = 0; }