public static BuildingEntity Create(AccountModel creator, string name, decimal cost, Vector3 internalPosition, Vector3 externalPosition, bool spawnPossible, CharacterModel characterModel = null, GroupModel groupModel = null) { BuildingModel buildingModel = new BuildingModel() { Name = name, CurrentObjectCount = 0, Description = "", EnterCharge = null, InternalDimension = Utils.GetNextFreeDimension(), InternalPickupPositionX = internalPosition.X, InternalPickupPositionY = internalPosition.Y, InternalPickupPositionZ = internalPosition.Z, ExternalPickupPositionX = externalPosition.X, ExternalPickupPositionY = externalPosition.Y, ExternalPickupPositionZ = externalPosition.Z, ItemsInBuilding = new List <ItemModel>(), SpawnPossible = spawnPossible, CreatorId = creator.Id, HasCctv = false, HasSafe = false, MaxObjectCount = 10, Character = characterModel, Group = groupModel }; RoleplayContext ctx = Singletons.RoleplayContextFactory.Create(); using (BuildingsRepository repository = new BuildingsRepository(ctx)) { repository.Insert(buildingModel); repository.Save(); } return(new BuildingEntity(buildingModel)); }
public static void LoadBuildings() { RoleplayContext ctx = Singletons.RoleplayContextFactory.Create(); using (BuildingsRepository repository = new BuildingsRepository(ctx)) foreach (BuildingModel building in repository.GetAll()) { new BuildingEntity(building); } }
public ScheduleRepository(string connectionString) { Database.SetInitializer(new MigrateDatabaseToLatestVersion<ScheduleContext, Configuration>()); Auditoriums = new AuditoriumsRepository(); Buildings = new BuildingsRepository(); Calendars = new CalendarsRepository(); Disciplines = new DisciplinesRepository(); DisciplineNames = new DisciplineNameRepository(); Lessons = new LessonsRepository(this); Rings = new RingsRepository(); Students = new StudentsRepository(); StudentGroups = new StudentGroupsRepository(); StudentsInGroups = new StudentsInGroupsRepository(); Teachers = new TeachersRepository(); TeacherForDisciplines = new TeacherForDisciplinesRepository(); ConfigOptions = new ConfigOptionRepository(); AuditoriumEvents = new AuditoriumEventsRepository(); Faculties = new FacultiesRepository(); GroupsInFaculties = new GroupsInFacultiesRepository(); ScheduleNotes = new ScheduleNotesRepository(); LessonLogEvents = new LessonLogEventsRepository(); TeacherWishes = new TeacherWishesRepository(); CustomTeacherAttributes = new CustomTeacherAttributesRepository(); CustomDisciplineAttributes = new CustomDisciplineAttributesRepository(); CustomStudentGroupAttributes = new CustomStudentGroupAttributesRepository(); Shifts = new ShiftsRepository(); ShiftRings = new ShiftRingsRepository(); Exams = new ExamsRepository(); LogEvents = new LogEventsRepository(); CommonFunctions = new CommonFunctions(this); SetConnectionString(connectionString); }
public UnitOfWork(RoleplayContext context) { Context = context; AccountsRepository = new AccountsRepository(context); BuildingsRepository = new BuildingsRepository(context); CharactersRepository = new CharactersRepository(context); CrimeBotsRepository = new CrimeBotsRepository(context); GroupsRepository = new GroupsRepository(context); GroupWarehouseItemsRepository = new GroupWarehouseItemsRepository(context); GroupWarehouseOrdersRepository = new GroupWarehouseOrdersRepository(context); ItemsRepository = new ItemsRepository(context); PenaltiesRepository = new PenaltiesRepository(context); TelephoneContactsRepository = new TelephoneContactsRepository(context); TelephoneMessagesRepository = new TelephoneMessagesRepository(context); VehiclesRepository = new VehiclesRepository(context); WorkersRepository = new WorkersRepository(context); ZonesRepository = new ZonesRepository(context); GroupRanksRepository = new GroupRankRepository(context); TicketsRepository = new TicketsRepository(context); ItemTemplatesRepository = new ItemTemplatesRepository(context); }
public void DeleteBuilding(Client sender, long id = -1) { if (!sender.HasRank(ServerRank.AdministratorRozgrywki2)) { sender.SendWarning("Nie posiadasz uprawnień do usuwania drzwi."); return; } if (id == -1 && !sender.HasData("CurrentDoors")) { sender.SendError("Aby usunąć budynek musisz podać jego Id, lub znajdować się w jego drzwiach."); } RoleplayContext ctx = Singletons.RoleplayContextFactory.Create(); using (BuildingsRepository repository = new BuildingsRepository(ctx)) { if (sender.HasData("CurrentDoors")) { BuildingEntity building = (BuildingEntity)sender.GetData("CurrentDoors"); building.Dispose(); repository.Delete(building.DbModel.Id); repository.Save(); return; } if (id != -1 && EntityHelper.GetBuilding(id) != null) { BuildingEntity building = EntityHelper.GetBuilding(id); building.Dispose(); repository.Delete(building.DbModel.Id); repository.Save(); } } sender.SendError("Podany budynek nie istnieje."); }
static void Main(string[] args) { var repo = new BuildingsRepository(); repo.GetAllList(); }
public void Trade(bool bank) { if (Getter.HasMoney(Money, bank)) { if (_moneyToGroup && Sender.OnDutyGroup == null) { Sender.SendInfo("Musisz znajdować się na służbie grupy."); return; } if (ItemModel != null) { ChatScript.SendMessageToNearbyPlayers(Sender, $"{Sender.FormatName} podaje przedmiot {Getter.FormatName}", ChatMessageType.ServerMe); ItemModel.Character = Getter.DbModel; RoleplayContext ctx = Singletons.RoleplayContextFactory.Create(); using (ItemsRepository repository = new ItemsRepository(ctx)) { repository.Update(ItemModel); repository.Save(); } } else if (Vehicle != null) { ChatScript.SendMessageToNearbyPlayers(Sender, $"{Sender.FormatName} podaje klucze {Getter.FormatName}", ChatMessageType.ServerMe); Vehicle.Character = Getter.DbModel; RoleplayContext ctx = Singletons.RoleplayContextFactory.Create(); using (VehiclesRepository repository = new VehiclesRepository(ctx)) { repository.Update(Vehicle); repository.Save(); } } else if (Building != null) { ChatScript.SendMessageToNearbyPlayers(Sender, $"{Sender.FormatName} podaje klucze {Getter.FormatName}", ChatMessageType.ServerMe); Building.Character = Getter.DbModel; RoleplayContext ctx = Singletons.RoleplayContextFactory.Create(); using (BuildingsRepository repository = new BuildingsRepository(ctx)) { repository.Update(Building); repository.Save(); } } if (_moneyToGroup) { Sender.OnDutyGroup.AddMoney(Money); } else { Sender.AddMoney(Money, bank); } Getter.RemoveMoney(Money, bank); _action?.Invoke(Getter); } else { Getter.SendWarning(bank ? "Nie posiadasz wystarczającej ilości środków na karcie" : "Nie posiadasz wystarczającej ilości gotówki."); Sender.SendError("Wymiana zakończona niepowodzeniem."); } }