public Models.Deck GetOpponentDeck() { var deck = new Models.Deck(); if (Core.Game.IsRunning) { var game = Core.Game.CurrentGameStats; if (game != null && game.CanGetOpponentDeck) { Log.Info("oppoent deck available"); // hero class deck.Klass = KlassKonverter.FromString(game.OpponentHero); // standard viable, use temp HDT deck var hdtDeck = new HDTDeck(); foreach (var card in game.OpponentCards) { var c = Database.GetCardFromId(card.Id); c.Count = card.Count; hdtDeck.Cards.Add(c); if (c != null && c != Database.UnknownCard) { deck.Cards.Add( new Models.Card(c.Id, c.LocalizedName, c.Count, c.Background.Clone())); } } deck.IsStandard = hdtDeck.StandardViable; } } return(deck); }
public BlackjackController(ILogger <BlackjackController> logger, Models.ApiContext context) { this.context = context; if (!context.Croupiers.Any(p => p.Nickname == "Croupier-Blackjack")) { var croupier = new Models.Croupier { Nickname = "Croupier-Blackjack", Wallet = 1000000, // krupier ma bank (kasino zacina s 1.000.000$/krupier existenciu) GameId = "Blackjack", State = Items.Player.EState.PLAYING }; context.Croupiers.Add(croupier); var deck = new Models.Deck(context) { CroupierId = croupier.Nickname }; context.Decks.Add(deck); context.SaveChanges(); // Krupier zacina s jednou kartou hru RandomCard(croupier).Wait(); context.SaveChanges(); } }
public DeckViewModel(Models.Deck deckModel) { _deckModel = deckModel; // Load available input languages foreach (var lang in InputLanguageManager.Current.AvailableInputLanguages ?? new List <object>()) { Languages.Add(CultureInfo.CreateSpecificCulture(lang.ToString())); } // Load system default language var defaultLang = InputLanguageManager.Current.CurrentInputLanguage; // TODO: Remove hard-coded initialization // Initialize scripts var defaultScript = new NoneScript("None"); Scripts.Add(defaultScript); Scripts.Add(new MirrorScript("Clone")); Scripts.Add(new FuriganaScript(MyQuery, "Furigana")); Scripts.Add(new DictionaryFormScript(MyQuery, "Dictionary Form")); Scripts.Add(new NotesScript(MyQuery, "Notes")); // Initialize deck settings DeckSettings = new DeckSettings(defaultLang, defaultScript); foreach (var noteModel in deckModel.note_models) { DeckSettings.AddFieldSettings(noteModel); } // Create dictionary of noteModels foreach (var noteModel in deckModel.note_models) { _noteModels.Add(noteModel.crowdanki_uuid, noteModel); NoteModels.Add(noteModel); } SelectedNoteModel = NoteModels.First(); foreach (var note in deckModel.notes) { // Add notes where note model exists if (_noteModels.TryGetValue(note.note_model_uuid, out var noteModel)) { NoteViewModels.Add(new NoteViewModel(note, noteModel, this)); } else { // TODO Error handling } } Sort(); }
private static Models.Deck ConvertFromServiceDeckToClientDeck(GameTableServiceReference.Deck serviceDeck) { Models.Deck clientDeck = new Models.Deck() { Id = serviceDeck.Id, Name = serviceDeck.DeckName, cards = ConvertFromListOfServiceCardsToListOfClientCards(serviceDeck.cards) }; return(clientDeck); }
private static object ConvertFromServiceDeckToClientDeck(Deck serviceDeck) { Models.Deck clientDeck = new Models.Deck() { Id = serviceDeck.Id, Name = serviceDeck.DeckName, cards = ConvertFromListOfServiceCardsToListOfClientCards(serviceDeck.cards) }; return(clientDeck); }
private static GameServiceReference.Deck ConvertFromClientDeckToServiceDeck(Models.Deck clientDeck) { GameServiceReference.Deck serviceDeck = new GameServiceReference.Deck() { Id = clientDeck.Id, DeckName = clientDeck.Name, cards = ConvertFromListOfClientCardsToListOfServiceCards(clientDeck.cards) }; return(serviceDeck); }
public void AddDeck(Models.Deck deck) { HDTDeck d = new HDTDeck(); var arch = deck as ArchetypeDeck; if (arch != null) { d.Name = arch.Name; } d.Class = deck.Klass.ToString(); d.Cards = new ObservableCollection <HDTCard>(deck.Cards.Select(c => Database.GetCardFromId(c.Id))); DeckList.Instance.Decks.Add(d); // doesn't refresh the deck picker view }
/* * Metodo che prende i mazzi di carte, li unisce e i mischia * */ public Card[] CreateDeck(int qtaMazzi) { Models.Deck[] decks = new Models.Deck[qtaMazzi]; int qtaCarte = qtaMazzi * 52; Card[] cards = new Card[qtaCarte]; for (int i = 0; i < qtaMazzi; i++) { decks[i] = new Models.Deck(); cards = cards.Union(decks[i].Cards).ToArray(); } return(cards); }
// // GET: /Home/ public ActionResult Index() { String strMessage = String.Empty; Models.Deck deck = FillDeck(); foreach (Models.Card c in deck.Cards) { strMessage += c.CardRank + " of " + c.CardSuit + " /n "; } @ViewBag.Message = strMessage; return(View()); }
public Models.Deck ShuffleDeck(Models.Deck deck) { Models.Deck tempDeck1 = new Models.Deck(); Models.Deck tempDeck2 = new Models.Deck(); Models.Card[] c1 = new Models.Card[26]; Models.Card[] c2 = new Models.Card[26]; SplitMidPoint <Models.Card>(deck.Cards, out c1, out c2); tempDeck1.Cards = c1; tempDeck2.Cards = c2; //deck.Cards = c1.Union(c2); return(deck); }
public ActionResult Index() { /// Decks aus der Datenbank var dbDecks = UserManager.GetAllDecksByEmail(User.Identity.Name); /// Decks für die View var decks = new List <Models.Deck>(); foreach (var d in dbDecks) { Models.Deck deck = new Models.Deck(); deck.ID = d.ID; deck.Name = d.Name; decks.Add(deck); } return(View(decks)); }
static Models.Deck FillDeck() { Models.Deck deck = new Models.Deck(); deck.Cards = new Models.Card[52]; int count = 0; foreach (Models.Rank r in (Models.Rank[])Enum.GetValues(typeof(Models.Rank))) { foreach (Models.Suit s in (Models.Suit[])Enum.GetValues(typeof(Models.Suit))) { deck.Cards[count] = new Models.Card(); deck.Cards[count].CardRank = r; deck.Cards[count].CardSuit = s; count++; } } return(deck); }
public ActionResult SaveDeck(string[] cardList, string deckName = "", int deckId = -1) { if (deckName == string.Empty) { return(RedirectToAction("Create", new { deckId = deckId })); } if (!Models.AccountUtils.isLoggedIn(this)) { return(RedirectToAction("LogIn", "Account")); } var loginHash = Request.Cookies["loginHash"].Value; var accountId = Models.AccountUtils.GetAccountID(loginHash); if (accountId < 0) { return(RedirectToAction("LogOut", "Account")); } if (deckId < 0) { // New deck var deckDB = new Models.DecksDataContext(); var newDeck = new Models.Deck { OwnerId = accountId, Name = deckName }; deckDB.Decks.InsertOnSubmit(newDeck); deckDB.SubmitChanges(); var cards = new List <Models.Card>(); Array.ForEach(cardList, c => { cards.Add(new Models.Card { DeckId = newDeck.Id, CardName = c }); }); var cardsDB = new Models.CardsDataContext(); cardsDB.Cards.InsertAllOnSubmit(cards); cardsDB.SubmitChanges(); } else { // Existing deck var deckDB = new Models.DecksDataContext(); var deck = from d in deckDB.Decks where (d.Id == deckId) && (d.OwnerId == accountId) select d; if (deck.ToArray().Length <= 0) { return(RedirectToAction("Create")); } deck.First().Name = deckName; deckDB.SubmitChanges(); var cardsDB = new Models.CardsDataContext(); // Clear the deck before inserting the cards var currentCards = from c in cardsDB.Cards where c.DeckId == deckId select c; cardsDB.Cards.DeleteAllOnSubmit(currentCards); // Add the new cards to the deck var cards = new List <Models.Card>(); Array.ForEach(cardList, c => { cards.Add(new Models.Card { DeckId = deckId, CardName = c }); }); cardsDB.Cards.InsertAllOnSubmit(cards); cardsDB.SubmitChanges(); } return(RedirectToAction("List")); }
public void GetDeck() { Models.Deck[] decks = new Models.Deck[2]; }
public ActionResult SaveDeck(string[] cardList, string deckName = "", int deckId = -1) { if(deckName == string.Empty) { return RedirectToAction("Create", new { deckId = deckId }); } if(!Models.AccountUtils.isLoggedIn(this)) { return RedirectToAction("LogIn", "Account"); } var loginHash = Request.Cookies["loginHash"].Value; var accountId = Models.AccountUtils.GetAccountID(loginHash); if(accountId < 0) return RedirectToAction("LogOut", "Account"); if(deckId < 0) { // New deck var deckDB = new Models.DecksDataContext(); var newDeck = new Models.Deck { OwnerId = accountId, Name = deckName }; deckDB.Decks.InsertOnSubmit(newDeck); deckDB.SubmitChanges(); var cards = new List<Models.Card>(); Array.ForEach(cardList, c => { cards.Add(new Models.Card { DeckId = newDeck.Id, CardName = c }); }); var cardsDB = new Models.CardsDataContext(); cardsDB.Cards.InsertAllOnSubmit(cards); cardsDB.SubmitChanges(); } else { // Existing deck var deckDB = new Models.DecksDataContext(); var deck = from d in deckDB.Decks where (d.Id == deckId) && (d.OwnerId == accountId) select d; if(deck.ToArray().Length <= 0) return RedirectToAction("Create"); deck.First().Name = deckName; deckDB.SubmitChanges(); var cardsDB = new Models.CardsDataContext(); // Clear the deck before inserting the cards var currentCards = from c in cardsDB.Cards where c.DeckId == deckId select c; cardsDB.Cards.DeleteAllOnSubmit(currentCards); // Add the new cards to the deck var cards = new List<Models.Card>(); Array.ForEach(cardList, c => { cards.Add(new Models.Card { DeckId = deckId, CardName = c }); }); cardsDB.Cards.InsertAllOnSubmit(cards); cardsDB.SubmitChanges(); } return RedirectToAction("List"); }