//Here's the stupid method for setting the info of a specific card in the grid public void SetCardInfo(int ColumnNumber, int RowNumber, LibraryCard thisCard) { Initialize(); if (thisCard == null) { Debug.LogError("what the f**k"); } cardGrid[ColumnNumber][RowNumber].SetInfo(thisCard); }
public void FindCards() { UnlockedCardNames = new List<string> (); for(int i = 0; i < SaveDataControl.UnlockedCards.Count; i++) { UnlockedCardNames.Add(SaveDataControl.UnlockedCards[i].CardName); } StartingDeckCardNames = new List<string> (); for(int i = 0; i < SaveDataControl.StartingDeckCards.Count; i++) { StartingDeckCardNames.Add(SaveDataControl.StartingDeckCards[i].CardName); } allCards = new List<LibraryCard>[ShopControl.AllGods.Count]; for(int i = 0; i < allCards.Length; i++) { allCards[i] = new List<LibraryCard>(); } LibraryCard[] bunch = new LibraryCard[CardLibrary.Lib.Count]; CardLibrary.Lib.Values.CopyTo (bunch, 0); for(int i = 0; i < bunch.Length; i++) { if(bunch[i].God == ShopControl.Gods.none) continue; int appropriateGod = ShopControl.AllGods.IndexOf(bunch[i].God); allCards[appropriateGod].Add(bunch[i]); //VV add it again if it's paper. if(bunch[i].CardName == "Iron Macana" | bunch[i].CardName == "Wooden Pike" | bunch[i].CardName == "Coffee") allCards[appropriateGod].Add(bunch[i]); } for(int i = 0; i < allCards.Length; i++) { if(allCards[i].Count > longestLength) { longestLength = allCards[i].Count; } } goldSpotTaken = ""; silverSpotTaken = ""; BronzeSpotTaken = ""; for(int k = 0; k < SaveDataControl.StartingDeckCards.Count; k++) { if(SaveDataControl.StartingDeckCards[k].ThisRarity == Card.Rarity.Paper) continue; else if(SaveDataControl.StartingDeckCards[k].ThisRarity == Card.Rarity.Bronze) BronzeSpotTaken = SaveDataControl.StartingDeckCards[k].CardName; else if(SaveDataControl.StartingDeckCards[k].ThisRarity == Card.Rarity.Silver) silverSpotTaken = SaveDataControl.StartingDeckCards[k].CardName; else if(SaveDataControl.StartingDeckCards[k].ThisRarity == Card.Rarity.Gold) goldSpotTaken = SaveDataControl.StartingDeckCards[k].CardName; } }
// GET: LibraryCards/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } LibraryCard libraryCard = db.LibraryCards.Find(id); if (libraryCard == null) { return(HttpNotFound()); } return(View(libraryCard)); }
public void Get_Current_Holds() { var options = new DbContextOptionsBuilder <LibraryContext>() .UseInMemoryDatabase("Gets_current_holds") .Options; using (var context = new LibraryContext(options)) { var book = new Book { Id = 2319, Title = "Ulysses", NumberOfCopies = 99 }; var card = new LibraryCard { Id = 16 }; context.Books.Add(book); context.LibraryCards.Add(card); context.SaveChanges(); var patron = new Patron { Id = 118, LibraryCard = card }; var hold = new Hold { Id = 41, LibraryAsset = book, LibraryCard = card }; context.Patrons.Add(patron); context.Holds.Add(hold); context.SaveChanges(); } using (var context = new LibraryContext(options)) { var sut = new CheckoutService(context); var result = sut.GetCurrentHolds(2319).ToList(); result.Should().Contain(a => a.Id == 41); } }
public IActionResult CreateLibraryCard(LibraryCardViewModel model) { if (ModelState.IsValid) { var newCard = new LibraryCard { Id = model.Id, Created = model.TimeCreated, Fees = model.Fees }; _CardServices.Add(newCard); return(RedirectToAction("Index")); } return(View()); }
private void CheckoutToEarlistHold(int assetId, IEnumerable <Hold> currentHolds) { Hold earliestHold = currentHolds.OrderBy(item => item.HoldPlaced).FirstOrDefault(); if (earliestHold == null) { return; } LibraryCard card = earliestHold.LibraryCard; _context.Remove(earliestHold); _context.SaveChanges(); CheckOutItem(assetId, card.Id); }
public IActionResult SubmitRegister(Patron patron) { LibraryCard libCard = new LibraryCard(); var now = DateTime.Now; libCard.Fees = 0; libCard.Created = now; var idCard = _patronService.AddNewLibraryCard(libCard); patron.LibraryCardId = idCard; patron.HomeLibraryBranchId = 1; patron.RoleID = 3; _patronService.AddNewPatron(patron); return(View("Login")); }
public ActionResult ReceptionBook(LibraryCard Card) { if (ModelState.IsValid) { db.Books.Find(Card.ID).ReaderID = 0; db.Books.Find(Card.reservedBook).Availabe = true; db.Entry(db.Books.Find(Card.reservedBook)).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(Card)); }
public bool UpdateLibCard(LibraryCard libCard) { var _libCard = _context.LibraryCards.Find(libCard.Id); try { _libCard.Fees = libCard.Fees; //Update Author or Director _context.SaveChanges(); return(true); } catch { return(false); } }
public async Task AddItem(Book book, int quantity) { // получить читателя, если нет создать, создать для него карточку если нет и в карточку добавить запись var user = await userService.GetCurrentUserAsync(); var reader = user.Reader; if (user.Reader == null) { reader = new Reader { User = user }; context.Readers.Add(reader); } var cardReader = await context.LibraryCards .Include(card => card.Books) .Include(card => card.Reader) .FirstOrDefaultAsync(card => card.Reader != null && card.Reader.Id == reader.Id); if (cardReader == null) { cardReader = new LibraryCard { Reader = reader }; context.LibraryCards.Add(cardReader); } var cardLine = cardReader.Books?.FirstOrDefault(cardLineItem => cardLineItem.Book?.Id == book.Id && cardLineItem.Status == LibraryCartLineStatus.BookOnBasket); if (cardLine == null) { context.LibraryCardLines.Add(new LibraryCardLine { Book = book, Card = cardReader, Count = quantity, Status = LibraryCartLineStatus.BookOnBasket }); } else { cardLine.Count += quantity; } await context.SaveChangesAsync(); }
public void Get_Current_Patron() { var options = new DbContextOptionsBuilder <LibraryContext>() .UseInMemoryDatabase("Gets_current_patron") .Options; using (var context = new LibraryContext(options)) { var card = new LibraryCard { Id = 3233 }; var patron = new Patron { FirstName = "Kevin", LastName = "Shields", LibraryCard = card }; context.Patrons.Add(patron); var checkout = new Checkout { Id = 1999, LibraryAsset = new Video { Id = 9, Title = "Stranger Things 2" }, LibraryCard = card }; context.Checkouts.Add(checkout); context.SaveChanges(); } using (var context = new LibraryContext(options)) { var sut = new CheckoutService(context); var result = sut.GetCurrentPatron(9); result.Should().Be("Kevin Shields"); } }
/// <summary> /// Проверка совпадения условий поиска /// </summary> /// <param name="card">Ссылка на издание</param> /// <param name="info">Строка для поиска</param> private void Check(LibraryCard card, string info) { if (_regexCheckBox.Checked) { Regex regex = new Regex(_findTextBox.Text, RegexOptions.IgnoreCase); if (regex.Match(info).Success) { _resultListBox.Items.Add(card); } } else { if (info.ToLower().Contains(_findTextBox.Text.ToLower())) { _resultListBox.Items.Add(card); } } }
void FindCards() { UnlockedCardNames = new List<string> (); for(int i = 0; i < SaveDataControl.UnlockedCards.Count; i++) { UnlockedCardNames.Add(SaveDataControl.UnlockedCards[i].CardName); } shownCards = new List<LibraryCard> (); LibraryCard[] bunch = new LibraryCard[CardLibrary.Lib.Count]; CardLibrary.Lib.Values.CopyTo (bunch, 0); for(int i = 0; i < bunch.Length; i++) { if(bunch[i].God == ShopControl.AllGods[SelectedGod]) { shownCards.Add(bunch[i]); } } }
public IActionResult Create(PatronDetailModel patronDetailModel) { var duplicate = _context.Patrons.Any(p => p.FirstName == patronDetailModel.FirstName && p.LastName == patronDetailModel.LastName && p.DateOfBirth == patronDetailModel.DateOfBirth); if (duplicate) { var date = DateTime.Now; LibraryCard libraryCard = new LibraryCard() { Fees = patronDetailModel.Fees, FirstName = patronDetailModel.FirstName, LastName = patronDetailModel.LastName, Created = date }; _context.Add(libraryCard); _context.SaveChanges(); var patronLibrarycard = _context.LibraryCards.Where(l => l.FirstName == patronDetailModel.FirstName && l.LastName == patronDetailModel.LastName && l.Created == date).FirstOrDefault(); if (patronLibrarycard != null) { Patron patron = new Patron() { FirstName = patronDetailModel.FirstName, LastName = patronDetailModel.LastName, Address = patronDetailModel.Address, DateOfBirth = patronDetailModel.DateOfBirth, TelePhoneNumber = patronDetailModel.TelePhoneNumber, HomeLibraryBranchId = patronDetailModel.HomeLibraryBranchId, LibraryCardId = patronLibrarycard.Id }; _context.Add(patron); _context.SaveChanges(); return(RedirectToAction("PatronList")); } } else { TempData["ErrorMessage"] = "Patron is already exist"; } return(View()); }
public void PlaceHold(int assetId, int libraryCardId) { LibraryAsset libraryAsset = context.LibraryAssets.FirstOrDefault(e => e.Id == assetId); LibraryCard libraryCard = context.LibraryCards.FirstOrDefault(e => e.Id == libraryCardId); if (libraryAsset.Status.Name == "Available") { UpdateStatus(assetId, "On Hold"); } Hold hold = new Hold { HoldPlaced = DateTime.Now, LibraryAsset = libraryAsset, LibraryCard = libraryCard }; context.Add(hold); context.SaveChanges(); }
private void ListBoxClientBookCollection_SelectedValueChanged(object sender, EventArgs e) { if (listBoxClientBookCollection.SelectedItem != null) { int inventoryCode = Convert.ToInt32(listBoxClientBookCollection.SelectedItem); LibraryCard currentCard = workspaceLibrarian.LibraryCardRegister.GetLibraryCardByInventoryCode(inventoryCode); dateTimePickerGiveBook.Visible = true; dateTimePickerGiveBook.Value = currentCard.DateRentBook; if (currentCard.DateReturnBook.HasValue) { dateTimePickerReturn.Visible = true; dateTimePickerReturn.Value = currentCard.DateReturnBook.Value; } else { dateTimePickerReturn.Visible = false; } } }
public void CheckoutItem(int assetId, int libraryCardId) { if (IsCheckedOut(assetId)) { return; // Add logic here to handle feedback to the user } //Get the library item LibraryAsset item = _context.LibraryAssets .FirstOrDefault(a => a.Id == assetId); UpdateAssetStatus(assetId, "Checked Out"); //Get the library Card LibraryCard libraryCard = _context.LibraryCards .Include(card => card.Checkouts) .FirstOrDefault(card => card.Id == libraryCardId); //Create a new checkout DateTime now = DateTime.Now; var checkout = new Checkout { LibraryAsset = item, LibraryCard = libraryCard, Since = now, Until = GetDefaultCheckoutTime(now) }; _context.Add(checkout); //Update checkout history - this could be done using an sql trigger var checkoutHistory = new CheckoutHistory { CheckedOut = now, LibraryAsset = item, LibraryCard = libraryCard }; _context.Add(checkoutHistory); _context.SaveChanges(); }
void FindCards() { UnlockedCardNames = new List <string> (); for (int i = 0; i < SaveDataControl.UnlockedCards.Count; i++) { UnlockedCardNames.Add(SaveDataControl.UnlockedCards[i].CardName); } shownCards = new List <LibraryCard> (); LibraryCard[] bunch = new LibraryCard[CardLibrary.Lib.Count]; CardLibrary.Lib.Values.CopyTo(bunch, 0); for (int i = 0; i < bunch.Length; i++) { if (bunch[i].God == ShopControl.AllGods[SelectedGod]) { shownCards.Add(bunch[i]); } } }
/// <summary> /// Конструктор формы /// </summary> /// <param name="card">Карточка издания для редактирования</param> public ModifyForm(LibraryCard card) { InitializeComponent(); Card = card; _titleTextBox.Text = card.Title; _yearTextBox.Text = card.Year.ToString(); _pagesTextBox.Text = card.Pages.ToString(); if (card is Book) { _bookRadioButton.Checked = true; _magazineRadioButton.Enabled = false; _authorsTextBox.Text = ((Book)card).Authors; _publishingTextBox.Text = ((Book)card).Publisher; } else { _magazineRadioButton.Checked = true; _bookRadioButton.Enabled = false; _numberTextBox.Text = ((Magazine)card).Number.ToString(); } }
public void Get_Patron_Holds() { var options = new DbContextOptionsBuilder <LibraryDbContext>() .UseInMemoryDatabase("Gets_patron_holds") .Options; using (var context = new LibraryDbContext(options)) { var card = new LibraryCard { Id = 83 }; var hold = new Hold { Id = 56, LibraryAsset = new Book { Id = 1 }, LibraryCard = card }; var patron = new Patron { Id = 8, LibraryCard = card }; context.Patrons.Add(patron); context.Holds.Add(hold); context.SaveChanges(); } using (var context = new LibraryDbContext(options)) { var sut = new PatronService(context); var result = sut.GetHolds(8); result.Count().Should().Be(1); } }
public IActionResult Create([Bind] Patron patrons) { if (!ModelState.IsValid) { var viewModel = new PatronModel { }; } if (patrons.Id == 0) { var card = new LibraryCard { Created = DateTime.Now, Fees = 0 }; patron.AddCard(card); patron.Complete(); patrons.LibraryCardId = patron.GetCard(); patrons.HomeLibraryBranch = patron.GetBranch(); patron.Add(patrons); } else { var patronInDb = patron.Get(patrons.Id); patronInDb.Address = patrons.Address; patronInDb.DateOfBirth = patrons.DateOfBirth; patronInDb.FirstName = patrons.FirstName; patronInDb.LastName = patrons.LastName; patronInDb.LibraryCard = patrons.LibraryCard; patronInDb.TelephoneNumber = patrons.TelephoneNumber; } patron.Complete(); return(RedirectToAction("Index", "Patron")); }
public void PlaceHold(int assetId, int libraryCardId) { LibraryAsset item = _context.LibraryAssets .Include(asset => asset.Status) .FirstOrDefault(asset => asset.Id == assetId); LibraryCard card = _context.LibraryCards.FirstOrDefault(lc => lc.Id == libraryCardId); if (item.Status.Name == "Available") { UpdateAssetStatus(assetId, "On Hold"); } Hold newHold = new Hold() { LibraryAsset = item, LibraryCard = card, HoldPlaced = DateTime.Now }; _context.Holds.Add(newHold); _context.SaveChanges(); }
public void Get_Library_Card_By_Asset_Id() { var options = new DbContextOptionsBuilder <LibraryContext>() .UseInMemoryDatabase("Gets_library_card_for_asset") .Options; using (var context = new LibraryContext(options)) { var card = new LibraryCard { Id = 16, Created = new DateTime(1999, 1, 1), Fees = 0M }; var checkout = new Checkout { Id = 87, LibraryAsset = new Book { Id = 300 }, LibraryCard = card }; context.Checkouts.Add(checkout); context.SaveChanges(); } using (var context = new LibraryContext(options)) { var sut = new LibraryAssetService(context); var result = sut.GetById(300); result.Should() .BeEquivalentTo(new LibraryCard { Id = 16, Created = new DateTime(1999, 1, 1), Fees = 0M }); } }
public override void Write(object obj, ES2Writer writer) { LibraryCard data = (LibraryCard)obj; // Add your writer.Write calls here. writer.Write(data.CardName); writer.Write(data.DisplayName); writer.Write(data.IconPath); writer.Write(data.Tooltip); writer.Write(data.DisplayText); writer.Write(data.MiniDisplayText); writer.Write(data.RangeTargetType); writer.Write(data.rangeMin); writer.Write(data.rangeMax); writer.Write(data.AoeTargetType); writer.Write(data.aoeMinRange); writer.Write(data.aoeMaxRange); writer.Write(data.ThisRarity); writer.Write(data.CardAction); writer.Write(data.God); writer.Write(data.Cost); writer.Write(data.UnlockCost); }
public override void Read(ES2Reader reader, object c) { LibraryCard data = (LibraryCard)c; // Add your reader.Read calls here to read the data into the object. data.CardName = reader.Read <System.String>(); data.DisplayName = reader.Read <System.String>(); data.IconPath = reader.Read <System.String>(); data.Tooltip = reader.Read <System.String>(); data.DisplayText = reader.Read <System.String>(); data.MiniDisplayText = reader.Read <System.String>(); data.RangeTargetType = reader.Read <GridControl.TargetTypes>(); data.rangeMin = reader.Read <System.Int32>(); data.rangeMax = reader.Read <System.Int32>(); data.AoeTargetType = reader.Read <GridControl.TargetTypes>(); data.aoeMinRange = reader.Read <System.Int32>(); data.aoeMaxRange = reader.Read <System.Int32>(); data.ThisRarity = reader.Read <Card.Rarity>(); data.CardAction = reader.Read <Card.CardActionTypes>(); data.God = reader.Read <ShopControl.Gods>(); data.Cost = reader.Read <System.Int32>(); data.UnlockCost = reader.Read <System.Int32>(); }
private void showCards_Load(object sender, EventArgs e) { try { //MessageBox.Show("n"); LibraryCard lc = db.showCard(ID); //MessageBox.Show("m"); //lc = db.showCard(ID); idLabel.Text = lc.ID.ToString(); cardLabel.Text = lc.cardNumber.ToString(); issueDateLabel.Text = lc.issueDate; deadLineLabel.Text = lc.deadline; numberOfBooksLabel.Text = lc.numberOfBook.ToString(); //if (LibraryCard.k > 1) k = LibraryCard.k - 1; //else // k = 10; } catch (Exception el) { this.Close(); } }
public void CheckOutItem(int assetId, int libraryCardId) { if (IsCheckedOut(assetId)) { return; } LibraryAsset libraryAsset = context.LibraryAssets.FirstOrDefault(e => e.Id == assetId); UpdateStatus(assetId, "Checked Out"); LibraryCard libraryCard = context.LibraryCards .Include(card => card.Id == libraryCardId) .FirstOrDefault(card => card.Id == libraryCardId); DateTime now = DateTime.Now; CheckOut checkout = new CheckOut { LibraryAsset = libraryAsset, LibraryCard = libraryCard, Since = now, Until = GetDefaultCheckoutTime(now) }; context.Add(checkout); CheckOutHistory checkOutHistory = new CheckOutHistory { LibraryAsset = libraryAsset, LibraryCard = libraryCard, CheckedOut = now }; context.Add(checkOutHistory); context.SaveChanges(); }
public void CheckOutItem(int assetId, int libraryCardId) { if (IsCheckedOut(assetId)) { return; } LibraryAsset item = _context.LibraryAssets.FirstOrDefault(asset => asset.Id == assetId); UpdateAssetStatus(assetId, "Checked Out"); LibraryCard libraryCard = _context.LibraryCards .Include(card => card.Checkouts) .FirstOrDefault(card => card.Id == libraryCardId); DateTime now = DateTime.Now; Checkout checkout = new Checkout() { LibraryAsset = item, LibraryCard = libraryCard, Since = now, Until = GetDefaultcheckoutTime(now) }; _context.Checkouts.Add(checkout); CheckoutHistory checkoutHistory = new CheckoutHistory() { CheckedOut = now, LibraryAsset = item, LibraryCard = libraryCard }; _context.CheckoutHistories.Add(checkoutHistory); _context.SaveChanges(); }
public void Add(LibraryCard newLibraryCard) { _context.Add(newLibraryCard); _context.SaveChanges(); }
public static LibraryCard GetLibraryCardIdInfo(String libraryCardID) { LibraryCard card = LibraryCardIfo.QueryLibraryCardIfo(libraryCardID); return(card); }
public async Task <IActionResult> OnPostAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("~/"); if (ModelState.IsValid) { LibraryModel lib = LibraryModel.getLib(); LibraryCard userCard = new LibraryCard(); userCard.Name = Input.LastName + " " + Input.Name + " " + Input.FatherName; userCard.Email = Email; userCard.Birthday = Input.BDay; userCard.Adress = Input.Address; userCard.Telephone = Input.Phone; var user = new IdentityUser { UserName = Email, Email = Email, PhoneNumber = Input.Phone }; if (SecretKey == "KH_2286879_Library_key") { var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { lib.Library.LibraryCard.Add(userCard); lib.Library.SaveChanges(); await _userManager.AddToRoleAsync(user, "Librarian"); _logger.LogInformation("{0} зарегистривован как библиотекарь."); var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); var callbackUrl = Url.Page( "/Account/ConfirmEmail", pageHandler: null, values: new { userId = user.Id, code = code }, protocol: Request.Scheme); await _emailSender.SendEmailAsync(Email, "Библиотека", "Здравствуйте, " + userCard.Name + "! Наша библиотека рада новому библиотекарю!"); await _signInManager.SignInAsync(user, isPersistent : false); return(LocalRedirect(returnUrl)); } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } else if (SecretKey == null) { var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { lib.Library.LibraryCard.Add(userCard); lib.Library.SaveChanges(); await _userManager.AddToRoleAsync(user, "User"); _logger.LogInformation("{0} зарегистривован как пользователь."); var code = await _userManager.GenerateEmailConfirmationTokenAsync(user); var callbackUrl = Url.Page( "/Account/ConfirmEmail", pageHandler: null, values: new { userId = user.Id, code = code }, protocol: Request.Scheme); await _emailSender.SendEmailAsync(Email, "Библиотека", "Здравствуйте, " + userCard.Name + "! Наша библиотека рада новому пользоватею!"); await _signInManager.SignInAsync(user, isPersistent : false); return(LocalRedirect(returnUrl)); } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } } // If we got this far, something failed, redisplay form return(Page()); }
void OnGUI() { GUI.depth = 1; GUI.Box(new Rect(0, 0, Screen.width, Screen.height), "", S.GUIStyleLibraryInst.MainStyles.BlackBackground); GUI.depth = 0; GUI.BeginGroup (new Rect (Screen.width * .1f, Screen.height * .05f, Screen.width * .9f, Screen.height * .9f)); if(allCards.Length == 0) { FindCards(); } for(int i = 0; i < ShopControl.AllGods.Count-2; i++) { if(SaveDataControl.UnlockedGods.Contains(ShopControl.AllGods[i])) { GUI.Box(new Rect(seventh*i, 0f, seventh, Screen.height*.1f), new GUIContent(S.ShopControlGUIInst.GodIcons[i]), GUIStyle.none); } else { GUI.Box(new Rect(seventh*i, 0f, seventh, Screen.height*.1f), new GUIContent(S.ShopControlGUIInst.GodIcons[7]), GUIStyle.none); } } scrollPos = GUI.BeginScrollView(new Rect(0, Screen.height*.1f, Screen.width*.9f, Screen.height*.47f), scrollPos, new Rect(0, Screen.height*.1f, Screen.width*.795f, Screen.height*.1f*longestLength)); for(int i = 0; i < ShopControl.AllGods.Count; i++) { for(int j = 0; j < allCards[i].Count; j++) { LibraryCard thisCard = allCards[i][j]; Texture2D Rarity = S.ShopControlGUIInst.PaperTexture; if(thisCard.ThisRarity == Card.Rarity.Bronze) Rarity = S.ShopControlGUIInst.BronzeTexture; else if(thisCard.ThisRarity == Card.Rarity.Silver) Rarity = S.ShopControlGUIInst.SilverTexture; else if(thisCard.ThisRarity == Card.Rarity.Gold) Rarity = S.ShopControlGUIInst.GoldTexture; GUIContent name = new GUIContent(thisCard.CardName, Rarity); //if this isn't unlocked, don't display it.... if(!UnlockedCardNames.Contains(thisCard.CardName) | (thisCard.ThisRarity != Card.Rarity.Paper && !SaveDataControl.UnlockedGods.Contains(thisCard.God))) { if(GUI.Button(new Rect(seventh*i, Screen.height*.1f*(j+1), seventh, Screen.height*.1f), "???", S.GUIStyleLibraryInst.CustomizeStyles.CardToggleOff)) { } } //if this is in your starting deck, show a CardToggleRemove button, which removes it else if (StartingDeckCardNames.Contains(thisCard.CardName)) { GUIStyle UnlockedStyle = new GUIStyle(S.GUIStyleLibraryInst.CustomizeStyles.CardToggleRemove); if(thisCard.ThisRarity == Card.Rarity.Paper) { UnlockedStyle.normal = S.GUIStyleLibraryInst.CustomizeStyles.CardNeutral.normal; } if(GUI.Button(new Rect(seventh*i, Screen.height*.1f*(j+1), seventh, Screen.height*.1f), name, UnlockedStyle)) { selectedCard = thisCard; selectedGod = i; if(thisCard.ThisRarity == Card.Rarity.Paper) { return; } for(int k = 0; k < SaveDataControl.StartingDeckCards.Count; k++) { if(SaveDataControl.StartingDeckCards[k].CardName == thisCard.CardName) { SaveDataControl.StartingDeckCards.RemoveAt(k); } } FindCards(); } } //if this isn't in your starting deck, show a CardToggleAdd button, //which adds it to your starting deck if you haven't added your Bronze or silver card else { if(GUI.Button(new Rect(seventh*i, Screen.height*.1f*(j+1), seventh, Screen.height*.1f), name, S.GUIStyleLibraryInst.CustomizeStyles.CardToggleAdd)) { selectedCard = thisCard; selectedGod = i; if (thisCard.ThisRarity == Card.Rarity.Paper) { return; } else { Card.Rarity thisRarity = thisCard.ThisRarity; for (int k = 0; k < SaveDataControl.StartingDeckCards.Count; k++) { if (SaveDataControl.StartingDeckCards[k].ThisRarity == thisRarity) { SaveDataControl.StartingDeckCards.RemoveAt(k); break; } } SaveDataControl.StartingDeckCards.Add(thisCard); } FindCards(); } } } } GUI.EndScrollView (); GUI.BeginGroup (new Rect (Screen.width*.4f, Screen.height * .585f, Screen.width * .4f, Screen.height * .3f), ""); if (BronzeSpotTaken != "") { if (GUI.Button(new Rect(0, 0, Screen.width * .4f, Screen.height * .1f), new GUIContent("Your added Bronze card is " + BronzeSpotTaken + " ", S.ShopControlGUIInst.BronzeTexture), S.GUIStyleLibraryInst.CustomizeStyles.RarityToggleOn)) selectedCard = CardLibrary.Lib[BronzeSpotTaken]; } else { GUI.Box(new Rect(0, 0, Screen.width * .4f, Screen.height * .1f), new GUIContent("You haven't chosen a Bronze card to add to your deck."), S.GUIStyleLibraryInst.CustomizeStyles.RarityToggleOff); } if (silverSpotTaken != "") { if (GUI.Button(new Rect(0, Screen.height * .1f, Screen.width * .4f, Screen.height * .1f), new GUIContent("Your added Silver card is " + silverSpotTaken + " ", S.ShopControlGUIInst.SilverTexture), S.GUIStyleLibraryInst.CustomizeStyles.RarityToggleOn)) selectedCard = CardLibrary.Lib[silverSpotTaken]; } else { GUI.Box(new Rect(0, Screen.height * .1f, Screen.width * .4f, Screen.height * .1f), new GUIContent("You haven't chosen a silver card to add to your deck."), S.GUIStyleLibraryInst.CustomizeStyles.RarityToggleOff); } if (goldSpotTaken != "") { if (GUI.Button(new Rect(0, Screen.height * .2f, Screen.width * .4f, Screen.height * .1f), new GUIContent("Your added Gold card is " + goldSpotTaken + " ", S.ShopControlGUIInst.GoldTexture), S.GUIStyleLibraryInst.CustomizeStyles.RarityToggleOn)) selectedCard = CardLibrary.Lib[goldSpotTaken]; } else { GUI.Box(new Rect(0, Screen.height * .2f, Screen.width * .4f, Screen.height * .1f), new GUIContent("You haven't chosen a gold card to add to your deck."), S.GUIStyleLibraryInst.CustomizeStyles.RarityToggleOff); } GUI.EndGroup (); if(selectedCard.CardName != null) { GUI.BeginGroup (new Rect (Screen.width * 0f, Screen.height * .585f, Screen.width * .35f, Screen.height * .3f), ""); if (S.ShopControlGUIInst.CardTextures[selectedGod] != null) { GUI.DrawTexture(new Rect(Screen.width*.0f, Screen.height*.0f, Screen.width*.35f, Screen.height*.3f), S.ShopControlGUIInst.CardTextures[selectedGod]); } GUIStyle cardNameStyle = new GUIStyle(S.GUIStyleLibraryInst.CustomizeStyles.CardNameStyle); cardNameStyle.fontSize = S.GUIStyleLibraryInst.CustomizeStyles.CustomizeCardNameFontSize; cardNameStyle.alignment = TextAnchor.UpperLeft; GUIStyle cardTextStyle = new GUIStyle(S.GUIStyleLibraryInst.CustomizeStyles.CardTextStyle); cardTextStyle.fontSize = S.GUIStyleLibraryInst.CustomizeStyles.CustomizeCardTextFontSize; cardTextStyle.alignment = TextAnchor.UpperLeft; if(selectedCard.God == ShopControl.Gods.Akan | selectedCard.God == ShopControl.Gods.Buluc | selectedCard.God == ShopControl.Gods.Ikka | selectedCard.God == ShopControl.Gods.Kinich | selectedCard.God == ShopControl.Gods.Chac) { cardNameStyle.normal.textColor = Color.black; cardTextStyle.normal.textColor = Color.black; } else { cardNameStyle.normal.textColor = Color.white; cardTextStyle.normal.textColor = Color.white; } GUI.Box(new Rect(Screen.width*.025f, Screen.height*.025f, Screen.width*.25f, Screen.height*.1f), selectedCard.DisplayName, cardNameStyle); Texture2D icon = Resources.Load("sprites/card icons/" + selectedCard.IconPath) as Texture2D; GUI.Box(new Rect(Screen.width*.21f, Screen.height*.025f, Screen.width*.11f, Screen.height*.11f), icon, GUIStyle.none); GUI.Box(new Rect(Screen.width*.025f, Screen.height*.1f, Screen.width*.3f, Screen.height*.15f), selectedCard.DisplayText, cardTextStyle); GUI.DrawTexture(new Rect(Screen.width*.275f, Screen.height*.25f, Screen.width*.05f, Screen.width*.05f), S.ShopControlGUIInst.GodIcons[selectedGod]); Card.Rarity rarity = selectedCard.ThisRarity; Texture2D rarityTexture = S.ShopControlGUIInst.PaperTexture; if(rarity == Card.Rarity.Bronze) rarityTexture = S.ShopControlGUIInst.BronzeTexture; else if(rarity == Card.Rarity.Silver) rarityTexture = S.ShopControlGUIInst.SilverTexture; else if(rarity == Card.Rarity.Gold) rarityTexture = S.ShopControlGUIInst.GoldTexture; GUI.DrawTexture(new Rect(Screen.width*.025f, Screen.height*.25f, Screen.width*.05f, Screen.width*.05f), rarityTexture); GUI.EndGroup (); } else { GUI.Box(new Rect(Screen.width*.0f,Screen.height*.585f, Screen.width*.3f, Screen.height*.3f), "Your starting deck consists of two of every card of paper rarity.\n\n" + "You can pick one unlocked card of each rarity to add to your starting deck.", S.GUIStyleLibraryInst.CustomizeStyles.InstructionInfoBox); } GUI.EndGroup (); GUIStyle gobackstyle = new GUIStyle(S.GUIStyleLibraryInst.CustomizeStyles.CardToggleRemove); gobackstyle.fontSize = 14; if(GUI.Button(new Rect(Screen.width*.3f, Screen.height*.95f, Screen.width*.4f, Screen.height*.05f), "Go back", gobackstyle)) { SaveDataControl.Save(); selectedCard = new LibraryCard(); S.MenuControlInst.TurnOnMenu(MenuControl.MenuType.MainMenu); } }
public void SetInfo(LibraryCard card) { Initialize(); thisCard = card; gameObject.SetActive(true); background.gameObject.SetActive(true); showThisCardButton.gameObject.SetActive(true); buyingThisCardBackground.gameObject.transform.parent.gameObject.SetActive(true); costBarDescription.gameObject.transform.parent.gameObject.SetActive(true); showThisCardButton.gameObject.transform.parent.gameObject.SetActive(true); boughtThisCardDialog.gameObject.SetActive(false); description.text = card.DisplayText; title.text = card.CardName; if (thisCard.God == ShopControl.Gods.Akan | thisCard.God == ShopControl.Gods.Buluc | thisCard.God == ShopControl.Gods.Ikka | thisCard.God == ShopControl.Gods.Kinich | thisCard.God == ShopControl.Gods.Chac) { // set text color to black title.color = new Color(0, 0, 0); description.color = new Color(0, 0, 0); } else { // set text color to white title.color = new Color(1, 1, 1); description.color = new Color(1, 1, 1); } if (thisCard.ThisRarity == Card.Rarity.Bronze) { //set rarity picture rarityIcon.sprite = S.ShopControlGUIInst.Bronze; //set cost box background color costRarityIcon.sprite = S.ShopControlGUIInst.Bronze; costBarDescription.text = "$2\n←"; } else if (thisCard.ThisRarity == Card.Rarity.Silver) { //set rarity picture rarityIcon.sprite = S.ShopControlGUIInst.Silver; //set cost box background color costRarityIcon.sprite = S.ShopControlGUIInst.Silver; costBarDescription.text = "$4\n←"; } else if (thisCard.ThisRarity == Card.Rarity.Gold) { //set rarity picture rarityIcon.sprite = S.ShopControlGUIInst.Gold; //set cost box background color costRarityIcon.sprite = S.ShopControlGUIInst.Gold; costBarDescription.text = "$6\n←"; } // set icon Sprite loadIcon = Resources.Load<Sprite> ("sprites/card icons/" + thisCard.IconPath); icon.sprite = loadIcon; if (thisCard.rangeMax != 0) { rangeIcon.gameObject.SetActive(true); rangeIcon.sprite = Resources.Load<Sprite>("sprites/targeting icons/range " + thisCard.RangeTargetType.ToString() + " " + thisCard.rangeMin.ToString() + "-" + thisCard.rangeMax.ToString()); } else { rangeIcon.gameObject.SetActive(false); } if(thisCard.aoeMaxRange != 0) { aoeIcon.gameObject.SetActive(true); aoeIcon.sprite = Resources.Load<Sprite>("sprites/targeting icons/aoe " + thisCard.AoeTargetType.ToString() + " " + thisCard.aoeMinRange.ToString() + "-" + thisCard.aoeMaxRange.ToString()); } else { aoeIcon.gameObject.SetActive(false); } // set god icon godIcon.sprite = S.ShopControlGUIInst.SpriteGodIcons[ShopControl.AllGods.IndexOf(thisCard.God)]; // set card background background.sprite = S.ShopControlGUIInst.GodSmallCards[ShopControl.AllGods.IndexOf(thisCard.God)]; GameObject go = buyingThisCardText.transform.parent.gameObject; if (!SaveDataControl.UnlockedCards.Contains (thisCard) && SaveDataControl.UnlockedGods.Contains (thisCard.God)) { go.SetActive(true); Invoke("HideCollectionAddDialog", 2.0f); } else { go.SetActive(false); } }
public static bool TryToUnlockCard(LibraryCard card) { if (!UnlockedCards.Contains(card) && UnlockedGods.Contains(card.God)) { UnlockedCards.Add(card); NewCardsAvailable = true; SaveDataControl.Save(); return true; } return false; }
public override object Read(ES2Reader reader) { LibraryCard data = new LibraryCard(); Read(reader, data); return data; }
public virtual void Initialize(bool alreadyDiscarded) { useGUILayout = false; cardUI = gameObject.GetComponent<CardUI> (); cardSFX = gameObject.GetComponent<CardSFX> (); playerObj = GameObject.FindGameObjectWithTag("Player"); // Initialize card variables ThisLibraryCard = CardLibrary.Lib[CardName]; name = CardName; CardName = ThisLibraryCard.CardName; DisplayName = ThisLibraryCard.DisplayName; IconPath = "sprites/card icons/" + ThisLibraryCard.IconPath; Tooltip = ThisLibraryCard.Tooltip; DisplayText = ThisLibraryCard.DisplayText; MiniDisplayText = ThisLibraryCard.MiniDisplayText; rangeTargetType = ThisLibraryCard.RangeTargetType; minRange = ThisLibraryCard.rangeMin; maxRange = ThisLibraryCard.rangeMax; aoeTargetType = ThisLibraryCard.AoeTargetType; aoeMinRange = ThisLibraryCard.aoeMinRange; aoeMaxRange = ThisLibraryCard.aoeMaxRange; ThisRarity = ThisLibraryCard.ThisRarity; CardAction = ThisLibraryCard.CardAction; God = ThisLibraryCard.God; if (!alreadyDiscarded) { S.GameControlInst.Hand.Add(gameObject); } switch (ThisRarity) { case Card.Rarity.Gold: Cost = 10; break; case Card.Rarity.Silver: Cost = 6; break; case Card.Rarity.Bronze: Cost = 3; break; case Card.Rarity.Paper: Cost = 0; break; } cardUI.Initialize (alreadyDiscarded); cardSFX.PlayDrawCardSFX(); }
public ActionResult SearchReader(int ID) { LibraryCard card = db.LibraryCards.Find(ID); return(View(card)); }
public static string CultToString(LibraryCard.Cult cEnum) { string cult = null; switch ((int)cEnum) { case 0: cult = "greed"; break; case 1: cult = "envy"; break; case 2: cult = "wrath"; break; case 3: cult = "pride"; break; case 4: cult = "gluttony"; break; case 5: cult = "lust"; break; case 6: cult = "sloth"; break; } return cult; }
public void Get_Patron_Checkouts() { var options = new DbContextOptionsBuilder <LibraryDbContext>() .UseInMemoryDatabase("Gets_patron_checkouts") .Options; using (var context = new LibraryDbContext(options)) { var book = new Book { Id = 231, Title = "Compilers - Principles, Techniques, and Tools" }; var video = new Video { Id = 8878, Title = "The Great British Baking Show" }; var card = new LibraryCard { Id = 801 }; var patron = new Patron { Id = 72, LibraryCard = card }; context.Patrons.Add(patron); context.Videos.Add(video); context.Books.Add(book); context.SaveChanges(); var checkouts = new List <Checkout> { new Checkout { Id = 1992, LibraryCard = card, LibraryAsset = book }, new Checkout { Id = 1993, LibraryCard = card, LibraryAsset = video }, new Checkout { Id = 1994, LibraryCard = card, LibraryAsset = new Book { Title = "Frankenstein " } } }; context.Checkouts.AddRange(checkouts); context.SaveChanges(); } using (var context = new LibraryDbContext(options)) { var sut = new PatronService(context); var result = sut.GetCheckouts(72); var checkouts = result as Checkout[] ?? result.ToArray(); checkouts.Length.Should().Be(3); } }