Exemple #1
0
        public Map(short mapId, byte[] data)
        {
            _random = new Random();
            MapId   = mapId;
            Data    = data;
            LoadZone();
            MapTypes = new List <MapTypeDTO>();
            foreach (MapTypeMapDTO maptypemap in DaoFactory.MapTypeMapDao.LoadByMapId(mapId).ToList())
            {
                MapTypeDTO maptype = DaoFactory.MapTypeDao.LoadById(maptypemap.MapTypeId);
                MapTypes.Add(maptype);
            }

            if (MapTypes.Any())
            {
                if (MapTypes.ElementAt(0).RespawnMapTypeId != null)
                {
                    long?respawnMapTypeId = MapTypes.ElementAt(0).RespawnMapTypeId;
                    long?returnMapTypeId  = MapTypes.ElementAt(0).ReturnMapTypeId;
                    if (respawnMapTypeId != null)
                    {
                        DefaultRespawn = DaoFactory.RespawnMapTypeDao.LoadById((long)respawnMapTypeId);
                    }

                    if (returnMapTypeId != null)
                    {
                        DefaultReturn = DaoFactory.RespawnMapTypeDao.LoadById((long)returnMapTypeId);
                    }
                }
            }
        }
Exemple #2
0
        public Map(short mapId, Guid uniqueIdentifier, byte[] data)
        {
            _random           = new Random();
            MapId             = mapId;
            ShopAllowed       = true;
            _uniqueIdentifier = uniqueIdentifier;
            _monsters         = new ThreadSafeSortedList <long, MapMonster>();
            _mapMonsterIds    = new List <int>();
            Data = data;
            LoadZone();
            IEnumerable <PortalDTO> portals = DAOFactory.PortalDAO.LoadByMap(MapId).ToList();

            DroppedList = new ThreadSafeSortedList <long, MapItem>();

            MapTypes = new List <MapTypeDTO>();
            foreach (MapTypeMapDTO maptypemap in DAOFactory.MapTypeMapDAO.LoadByMapId(mapId).ToList())
            {
                MapTypeDTO maptype = DAOFactory.MapTypeDAO.LoadById(maptypemap.MapTypeId) as MapTypeDTO;
                MapTypes.Add(maptype);
            }

            _portals = new List <PortalDTO>();
            foreach (PortalDTO portal in portals)
            {
                _portals.Add(portal as PortalDTO);
            }

            UserShops = new Dictionary <long, MapShop>();
            _npcs     = new List <MapNpc>();
            _npcs.AddRange(ServerManager.Instance.GetMapNpcsByMapId(MapId).AsEnumerable <MapNpc>());
        }
Exemple #3
0
        public Map(short mapId, short gridMapId, byte[] data)
        {
            MapId     = mapId;
            GridMapId = gridMapId;
            Data      = data;
            loadZone();
            MapTypes = new List <MapTypeDTO>();
            foreach (MapTypeMapDTO maptypemap in DAOFactory.MapTypeMapDAO.LoadByMapId(mapId).ToList())
            {
                MapTypeDTO maptype = DAOFactory.MapTypeDAO.LoadById(maptypemap.MapTypeId);
                MapTypes.Add(maptype);
            }

            if (MapTypes.Count > 0 && MapTypes[0].RespawnMapTypeId != null)
            {
                long?respawnMapTypeId = MapTypes[0].RespawnMapTypeId;
                long?returnMapTypeId  = MapTypes[0].ReturnMapTypeId;
                if (respawnMapTypeId != null)
                {
                    DefaultRespawn = DAOFactory.RespawnMapTypeDAO.LoadById((long)respawnMapTypeId);
                }
                if (returnMapTypeId != null)
                {
                    DefaultReturn = DAOFactory.RespawnMapTypeDAO.LoadById((long)returnMapTypeId);
                }
            }
        }
Exemple #4
0
        public Map(short mapId, byte[] data)
        {
            _random = new Random();
            MapId   = mapId;
            Data    = data;
            LoadZone();
            MapTypes = new List <MapTypeDTO>();
            foreach (MapTypeMapDTO maptypemap in DAOFactory.MapTypeMapDAO.Where(s => s.MapId == mapId).ToList())
            {
                MapTypeDTO maptype = DAOFactory.MapTypeDAO.FirstOrDefault(s => s.MapTypeId == maptypemap.MapTypeId);
                MapTypes.Add(maptype);
            }

            if (MapTypes.Any())
            {
                if (MapTypes.ElementAt(0).RespawnMapTypeId != null)
                {
                    long?respawnMapTypeId = MapTypes.ElementAt(0).RespawnMapTypeId;
                    long?returnMapTypeId  = MapTypes.ElementAt(0).ReturnMapTypeId;
                    if (respawnMapTypeId != null)
                    {
                        DefaultRespawn = DAOFactory.RespawnMapTypeDAO.FirstOrDefault(s => s.RespawnMapTypeId == respawnMapTypeId);
                    }
                    if (returnMapTypeId != null)
                    {
                        DefaultReturn = DAOFactory.RespawnMapTypeDAO.FirstOrDefault(s => s.RespawnMapTypeId == returnMapTypeId);
                    }
                }
            }
        }
Exemple #5
0
        public Map(short mapId, Guid uniqueIdentifier, byte[] data)
        {
            _random           = new Random();
            MapId             = mapId;
            _uniqueIdentifier = uniqueIdentifier;
            _monsters         = new ThreadSafeSortedList <long, MapMonster>();
            _mapMonsterIds    = new List <int>();
            Data = data;
            LoadZone();
            IEnumerable <PortalDTO> portals = DAOFactory.PortalDAO.LoadByMap(MapId).ToList();

            _portals    = new List <PortalDTO>();
            DroppedList = new ConcurrentDictionary <long, MapItem>();

            MapTypes = new List <MapTypeDTO>();
            foreach (MapTypeMapDTO maptypemap in DAOFactory.MapTypeMapDAO.LoadByMapId(mapId).ToList())
            {
                MapTypeDTO MT = DAOFactory.MapTypeDAO.LoadById(maptypemap.MapTypeId);

                // Replace by MAPPING
                MapTypeDTO maptype = new MapTypeDTO()
                {
                    MapTypeId   = MT.MapTypeId,
                    MapTypeName = MT.MapTypeName,
                    PotionDelay = MT.PotionDelay
                };
                ///////////////
                MapTypes.Add(maptype);
            }

            UserShops = new Dictionary <long, MapShop>();
            foreach (PortalDTO portal in portals)
            {
                // Replace by MAPPING
                _portals.Add(new PortalDTO()
                {
                    DestinationMapId = portal.DestinationMapId,
                    SourceMapId      = portal.SourceMapId,
                    SourceX          = portal.SourceX,
                    SourceY          = portal.SourceY,
                    DestinationX     = portal.DestinationX,
                    DestinationY     = portal.DestinationY,
                    Type             = portal.Type,
                    PortalId         = portal.PortalId,
                    IsDisabled       = portal.IsDisabled
                });
                //////////////////
            }

            foreach (MapMonsterDTO monster in DAOFactory.MapMonsterDAO.LoadFromMap(MapId).ToList())
            {
                _monsters[monster.MapMonsterId] = new MapMonster(monster, this);
                _mapMonsterIds.Add(monster.MapMonsterId);
            }
            IEnumerable <MapNpcDTO> npcsDTO = DAOFactory.MapNpcDAO.LoadFromMap(MapId).ToList();

            _npcs = new List <MapNpc>();
            npcsDTO.ToList().ForEach(s => _npcs.Add(new MapNpc(s)));
        }
Exemple #6
0
 public MapTypeDTO Insert(ref MapTypeDTO mapType)
 {
     using (var context = DataAccessHelper.CreateContext())
     {
         MapType entity = _mapper.Map <MapType>(mapType);
         context.MapType.Add(entity);
         context.SaveChanges();
         return(_mapper.Map <MapTypeDTO>(entity));
     }
 }
Exemple #7
0
 public static bool ToMapTypeDTO(MapType input, MapTypeDTO output)
 {
     if (input == null)
     {
         return(false);
     }
     output.MapTypeId        = input.MapTypeId;
     output.MapTypeName      = input.MapTypeName;
     output.PotionDelay      = input.PotionDelay;
     output.RespawnMapTypeId = input.RespawnMapTypeId;
     output.ReturnMapTypeId  = input.ReturnMapTypeId;
     return(true);
 }
 public IEnumerable <MapTypeDTO> LoadAll()
 {
     using (OpenNosContext context = DataAccessHelper.CreateContext())
     {
         List <MapTypeDTO> result = new List <MapTypeDTO>();
         foreach (MapType MapType in context.MapType)
         {
             MapTypeDTO dto = new MapTypeDTO();
             Mapper.Mapper.Instance.MapTypeMapper.ToMapTypeDTO(MapType, dto);
             result.Add(dto);
         }
         return(result);
     }
 }
        public Map(short mapId, Guid uniqueIdentifier, byte[] data)
        {
            _isSleeping       = true;
            LastUserShopId    = 0;
            _random           = new Random();
            MapId             = mapId;
            ShopAllowed       = true;
            _uniqueIdentifier = uniqueIdentifier;
            _monsters         = new ThreadSafeSortedList <long, MapMonster>();
            _mapMonsterIds    = new List <int>();
            Data = data;
            LoadZone();
            IEnumerable <PortalDTO> portals = DAOFactory.PortalDAO.LoadByMap(MapId).ToList();

            DroppedList = new ThreadSafeSortedList <long, MapItem>();
            MapTypes    = new List <MapTypeDTO>();
            foreach (MapTypeMapDTO maptypemap in DAOFactory.MapTypeMapDAO.LoadByMapId(mapId).ToList())
            {
                MapTypeDTO maptype = DAOFactory.MapTypeDAO.LoadById(maptypemap.MapTypeId);
                MapTypes.Add(maptype);
            }

            if (MapTypes.Any())
            {
                if (MapTypes.ElementAt(0).RespawnMapTypeId != null)
                {
                    long?respawnMapTypeId = MapTypes.ElementAt(0).RespawnMapTypeId;
                    long?returnMapTypeId  = MapTypes.ElementAt(0).ReturnMapTypeId;
                    if (respawnMapTypeId != null)
                    {
                        DefaultRespawn = DAOFactory.RespawnMapTypeDAO.LoadById((long)respawnMapTypeId);
                    }
                    if (returnMapTypeId != null)
                    {
                        DefaultReturn = DAOFactory.RespawnMapTypeDAO.LoadById((long)returnMapTypeId);
                    }
                }
            }
            _portals = new List <PortalDTO>();
            foreach (PortalDTO portal in portals)
            {
                _portals.Add(portal);
            }

            UserShops = new Dictionary <long, MapShop>();
            _npcs     = new List <MapNpc>();
            _npcs.AddRange(ServerManager.Instance.GetMapNpcsByMapId(MapId).AsEnumerable());
        }
Exemple #10
0
 public MapTypeDTO Insert(ref MapTypeDTO mapType)
 {
     try
     {
         using (var context = DataAccessHelper.CreateContext())
         {
             MapType entity = _mapper.Map <MapType>(mapType);
             context.MapType.Add(entity);
             context.SaveChanges();
             return(_mapper.Map <MapTypeDTO>(entity));
         }
     }
     catch (Exception e)
     {
         Logger.Error(e);
         return(null);
     }
 }
        public MapTypeDTO LoadById(short maptypeId)
        {
            try
            {
                using (OpenNosContext context = DataAccessHelper.CreateContext())
                {
                    MapTypeDTO dto = new MapTypeDTO();
                    if (Mapper.Mapper.Instance.MapTypeMapper.ToMapTypeDTO(context.MapType.FirstOrDefault(s => s.MapTypeId.Equals(maptypeId)), dto))
                    {
                        return(dto);
                    }

                    return(null);
                }
            }
            catch (Exception e)
            {
                Logger.Error(e);
                return(null);
            }
        }
        public MapTypeDTO Insert(ref MapTypeDTO mapType)
        {
            try
            {
                using (OpenNosContext context = DataAccessHelper.CreateContext())
                {
                    MapType entity = new MapType();
                    Mapper.Mapper.Instance.MapTypeMapper.ToMapType(mapType, entity);
                    context.MapType.Add(entity);
                    context.SaveChanges();
                    if (Mapper.Mapper.Instance.MapTypeMapper.ToMapTypeDTO(entity, mapType))
                    {
                        return(mapType);
                    }

                    return(null);
                }
            }
            catch (Exception e)
            {
                Logger.Error(e);
                return(null);
            }
        }
Exemple #13
0
        internal void InsertMapTypes()
        {
            var list = DAOFactory.MapTypeDAO.LoadAll().ToList();
            var mt1  = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act1,
                MapTypeName      = "Act1",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt1.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt1);
            }

            var mt2 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act2,
                MapTypeName      = "Act2",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt2.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt2);
            }

            var mt3 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act3,
                MapTypeName      = "Act3",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt3.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt3);
            }

            var mt4 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.Act4,
                MapTypeName = "Act4",
                PotionDelay = 5000
            };

            if (list.All(s => s.MapTypeId != mt4.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt4);
            }

            var mt5 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act51,
                MapTypeName      = "Act5.1",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct5,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct5
            };

            if (list.All(s => s.MapTypeId != mt5.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt5);
            }

            var mt6 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act52,
                MapTypeName      = "Act5.2",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct5,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct5
            };

            if (list.All(s => s.MapTypeId != mt6.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt6);
            }

            var mt7 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act61,
                MapTypeName      = "Act6.1",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct6,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt7.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt7);
            }

            var mt8 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act62,
                MapTypeName      = "Act6.2",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct6,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt8.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt8);
            }

            var mt9 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act61A,
                MapTypeName      = "Act6.1a", // angel camp
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct6,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt9.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt9);
            }

            var mt10 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Act61D,
                MapTypeName      = "Act6.1d", // demon camp
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct6,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt10.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt10);
            }

            var mt11 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.CometPlain,
                MapTypeName      = "CometPlain",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt11.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt11);
            }

            var mt12 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Mine1,
                MapTypeName      = "Mine1",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt12.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt12);
            }

            var mt13 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Mine2,
                MapTypeName      = "Mine2",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt13.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt13);
            }

            var mt14 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.MeadowOfMine,
                MapTypeName      = "MeadownOfPlain",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt14.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt14);
            }

            var mt15 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.SunnyPlain,
                MapTypeName      = "SunnyPlain",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt15.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt15);
            }

            var mt16 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Fernon,
                MapTypeName      = "Fernon",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt16.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt16);
            }

            var mt17 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.FernonF,
                MapTypeName      = "FernonF",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt17.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt17);
            }

            var mt18 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Cliff,
                MapTypeName      = "Cliff",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultAct1,
                ReturnMapTypeId  = (long)RespawnType.ReturnAct1
            };

            if (list.All(s => s.MapTypeId != mt18.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt18);
            }

            var mt19 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.LandOfTheDead,
                MapTypeName = "LandOfTheDead",
                PotionDelay = 300
            };

            if (list.All(s => s.MapTypeId != mt19.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt19);
            }

            var mt20 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.Act32,
                MapTypeName = "Act 3.2",
                PotionDelay = 300
            };

            if (list.All(s => s.MapTypeId != mt20.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt20);
            }

            var mt21 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.CleftOfDarkness,
                MapTypeName = "Cleft of Darkness",
                PotionDelay = 300
            };

            if (list.All(s => s.MapTypeId != mt21.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt21);
            }

            var mt23 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.CitadelAngel,
                MapTypeName = "AngelCitadel",
                PotionDelay = 300
            };

            if (list.All(s => s.MapTypeId != mt23.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt23);
            }

            var mt24 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.CitadelDemon,
                MapTypeName = "DemonCitadel",
                PotionDelay = 300
            };

            if (list.All(s => s.MapTypeId != mt24.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt24);
            }

            var mt25 = new MapTypeDTO
            {
                MapTypeId        = (short)MapTypeEnum.Oasis,
                MapTypeName      = "Oasis",
                PotionDelay      = 300,
                RespawnMapTypeId = (long)RespawnType.DefaultOasis,
                ReturnMapTypeId  = (long)RespawnType.DefaultOasis
            };

            if (list.All(s => s.MapTypeId != mt25.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt25);
            }

            var mt26 = new MapTypeDTO
            {
                MapTypeId   = (short)MapTypeEnum.Act42,
                MapTypeName = "Act42",
                PotionDelay = 5000
            };

            if (list.All(s => s.MapTypeId != mt26.MapTypeId))
            {
                DAOFactory.MapTypeDAO.InsertOrUpdate(ref mt26);
            }

            Logger.Log.Info(LogLanguage.Instance.GetMessageFromKey(LanguageKey.MAPTYPES_PARSED));
        }
 public MapTypeDTO Insert(ref MapTypeDTO mapType)
 {
     throw new NotImplementedException();
 }