using System; using System.Collections.Generic; using WingsAPI.Scripting.Attribute; using WingsAPI.Scripting.Enum; using WingsAPI.Scripting.Event; using WingsAPI.Scripting.Object.Common.Map; using WingsAPI.Scripting.Object.Timespace; namespace WingsAPI.Scripting.Object.Common { /// /// Object used to represent a map in a script /// [ScriptObject] public sealed class SMap { /// /// Randomly generated id /// public Guid Id { get; set; } public SMapType MapType { get; set; } /// /// Vnum or Id of the map /// public int MapIdVnum { get; set; } public int NameId { get; set; } public int MusicId { get; set; } /// /// Used for TimeSpace minimap /// public byte MapIndexX { get; set; } /// /// Used for TimeSpace minimap /// public byte MapIndexY { get; set; } /// /// Contains all the flags needed to define a map via VNum /// public IEnumerable Flags { get; set; } /// /// Contains all monsters who need to be spawned in this map /// public IEnumerable Monsters { get; set; } public IEnumerable Npcs { get; set; } /// /// Contains all buttons who need to be added to this map /// public IEnumerable Objects { get; set; } /// /// Contains all portals who need to be added to this map /// public IEnumerable Portals { get; set; } public IDictionary> Events { get; set; } /// /// Spawn x monsters every y seconds /// public IEnumerable MonsterWaves { get; set; } public STimeSpaceTask TimeSpaceTask { get; set; } } }