Exemple #1
0
        /// <summary>
        /// Create and load the tax collector (IO)
        /// </summary>
        public TaxCollectorNpc(WorldMapTaxCollectorRecord record, int contextId)
        {
            m_record    = record;
            m_contextId = contextId;
            Bag         = new TaxCollectorBag(this);

            if (record.MapId == null)
            {
                throw new Exception("TaxCollector's map not found");
            }

            Position = new ObjectPosition(
                record.Map,
                record.Map.Cells[m_record.Cell],
                (DirectionsEnum)m_record.Direction);


            Guild = GuildManager.Instance.TryGetGuild(Record.GuildId);
            LoadRecord();
        }
Exemple #2
0
        /// <summary>
        /// Create a new tax collector with a new record (no IO)
        /// </summary>
        public TaxCollectorNpc(int globalId, int contextId, ObjectPosition position, Guild guild, Character caller)
        {
            m_contextId = contextId;
            Position    = position;
            Guild       = guild;
            Bag         = new TaxCollectorBag(this);
            m_record    = new WorldMapTaxCollectorRecord
            {
                Id          = globalId,
                Map         = Position.Map,
                Cell        = Position.Cell.Id,
                Direction   = (int)Position.Direction,
                FirstNameId = (short)TaxCollectorManager.Instance.GetRandomTaxCollectorFirstname(),
                LastNameId  = (short)TaxCollectorManager.Instance.GetRandomTaxCollectorName(),
                GuildId     = guild.Id,
                CallerName  = caller.Name,
                CallerId    = caller.Id,
                Date        = DateTime.Now
            };

            IsRecordDirty = true;
        }