示例#1
0
文件: MapNpc.cs 项目: pzaps/Server
        public MapNpc(string mapID, DataManager.Maps.MapNpc rawNpc)
            : base(rawNpc)
        {
            SpeedLimit = Enums.Speed.Running;

            Moves = new Players.RecruitMove[4];
            for (int i = 0; i < Moves.Length; i++) {
                Moves[i] = new Players.RecruitMove(RawNpc.Moves[i]);
            }

            //if (RawNpc.HeldItem == null) {
            //    HeldItem = null;
            //} else {
            //    HeldItem = new InventoryItem(RawNpc.HeldItem);
            //}
            heldItem = new InventoryItem(RawNpc.HeldItem);

            VolatileStatus = new ExtraStatusCollection();
            for (int i = 0; i < RawNpc.VolatileStatus.Count; i++) {
                VolatileStatus.Add(new ExtraStatus(RawNpc.VolatileStatus[i]));
            }
            MapID = mapID;
            ActiveItems = new List<int>();

            //CalculateOriginalSprite();
            //CalculateOriginalStats();
            //CalculateOriginalType();
            //CalculateOriginalAbility();
            //CalculateOriginalMobility();
            if (Num > 0) {
                LoadActiveItemList();
            }
        }
示例#2
0
        public Recruit(Client owner)
        {
            this.owner = owner;

            recruitData = new RecruitData();

            HeldItemSlot = -1;
            Mobility = new bool[16];
            Darkness = -2;
            TimeMultiplier = 1000;
            ActiveItems = new List<int>();
            VolatileStatus = new ExtraStatusCollection();
        }
示例#3
0
文件: MapNpc.cs 项目: pzaps/Server
        public MapNpc(string mapID, int mapSlot)
            : base(new DataManager.Maps.MapNpc(mapSlot))
        {
            SpeedLimit = Enums.Speed.Running;

            Moves = new Players.RecruitMove[4];
            for (int i = 0; i < Moves.Length; i++) {
                Moves[i] = new Players.RecruitMove(RawNpc.Moves[i]);
            }

            //if (RawNpc.HeldItem == null) {
            //    HeldItem = null;
            //} else {
            //    HeldItem = new InventoryItem(RawNpc.HeldItem);
            //}
            heldItem = new InventoryItem(RawNpc.HeldItem);

            VolatileStatus = new ExtraStatusCollection();
            for (int i = 0; i < RawNpc.VolatileStatus.Count; i++) {
                VolatileStatus.Add(new ExtraStatus(RawNpc.VolatileStatus[i]));
            }
            MapID = mapID;
            ActiveItems = new List<int>();

            SpeedLimit = Enums.Speed.Running;
        }