static public void CreatePackage(RequestContext request) { int userstate = UserHandler.AuthUser(request); if (userstate == 2) //adminrechte benötigt { int counter = 0; DummyCard[] cards = new DummyCard[5]; string[] jsonStrings = PrepareJsonStrings(request.Message); foreach (string s in jsonStrings) { cards[counter] = JsonConvert.DeserializeObject <DummyCard>(jsonStrings[counter]); counter++; } try { CardsPacksDatabaseHandler.InsertPackage(cards); Output.WriteConsole(Output.PackageAddedSuccess); } catch (Exception e) { Output.WriteConsole(e.Message); } return; } if (userstate == 1) { Output.WriteConsole(Output.PermissionsDenied); return; } Output.WriteConsole(Output.AuthError); }
public void Package_String_Handling_Damage() { int counter = 0; DummyCard[] cards = new DummyCard[5]; string str = "[{\"Id\":\"845f0dc7-37d0-426e-994e-43fc3ac83c08\", \"Name\":\"WaterGoblin\", \"Damage\": 10.0}, " + "{\"Id\":\"99f8f8dc-e25e-4a95-aa2c-782823f36e2a\", \"Name\":\"Dragon\", \"Damage\": 50.0}, " + "{\"Id\":\"e85e3976-7c86-4d06-9a80-641c2019a79f\", \"Name\":\"WaterSpell\", \"Damage\": 20.0}, " + "{\"Id\":\"1cb6ab86-bdb2-47e5-b6e4-68c5ab389334\", \"Name\":\"Ork\", \"Damage\": 45.0}, " + "{\"Id\":\"dfdd758f-649c-40f9-ba3a-8657f4b3439f\", \"Name\":\"FireSpell\", \"Damage\": 25.0}]"; string[] jsonStrings = PackageHandler.PrepareJsonStrings(str); foreach (string s in jsonStrings) { cards[counter] = JsonConvert.DeserializeObject <DummyCard>(jsonStrings[counter]); counter++; } Assert.AreEqual(cards[0].damage, 10); Assert.AreEqual(cards[1].damage, 50); Assert.AreEqual(cards[2].damage, 20); Assert.AreEqual(cards[3].damage, 45); Assert.AreEqual(cards[4].damage, 25); }
static string GDBUjson(User user) { string jsonStr = ""; bool deckEmpty = true; using var conn = new NpgsqlConnection(connString); //connect to db DummyCard card = new DummyCard(); conn.Open(); string selectString = String.Format("SELECT id, cardname, damage FROM cards_users WHERE userid = {0} AND in_deck = true", user.uid); using (var cmd = new NpgsqlCommand(selectString, conn)) using (var reader = cmd.ExecuteReader()) while (reader.Read()) { deckEmpty = false; card.id = reader[0].ToString(); card.name = reader[1].ToString(); card.damage = (float)((double)reader[2]); jsonStr += JsonConvert.SerializeObject(card); } conn.Close(); if (deckEmpty) { return("{}"); } return(jsonStr); }
static public DummyCard GetDummyCard(User user, string cardId) { DummyCard card = new DummyCard(); int counter = 0; using var conn = new NpgsqlConnection(connString); //connect to db conn.Open(); string selectString = String.Format("SELECT id, cardname, damage FROM cards_users WHERE userid = {0} AND id = '{1}'", user.uid, cardId); using (var cmd = new NpgsqlCommand(selectString, conn)) using (var reader = cmd.ExecuteReader()) if (reader.Read()) { card.id = reader[0].ToString(); card.name = reader[1].ToString(); card.damage = (float)((double)reader[2]); counter++; } else { card = null; } conn.Close(); return(card); }
static public DummyCard[] GetDummyDeck(User user) { DummyCard[] deck = new DummyCard[4]; for (int i = 0; i < 4; i++) { deck[i] = new DummyCard(); } int counter = 0; using var conn = new NpgsqlConnection(connString); //connect to db conn.Open(); string selectString = String.Format("SELECT id, cardname, damage FROM cards_users WHERE userid = {0} AND in_deck = true", user.uid); using (var cmd = new NpgsqlCommand(selectString, conn)) using (var reader = cmd.ExecuteReader()) while (reader.Read()) { deck[counter].id = reader[0].ToString(); deck[counter].name = reader[1].ToString(); deck[counter].damage = (float)((double)reader[2]); counter++; } conn.Close(); return(deck); }
static public void Trade(RequestContext request) { int userstate = UserHandler.AuthUser(request); if (userstate == 1 || userstate == 2) { string tradeId = ExtractIdFromRessource(request.Ressource); User user = UserHandler.GetUserDataByToken(request); if (!TradingDatabaseHandler.CheckDealToUser(tradeId, user)) { string offeredCardId = request.Message.Trim('"'); DummyCard dummyCard = CardsUsersDatabaseHandler.GetDummyCard(user, offeredCardId); if (dummyCard != null) { ICard card = DummyCardConverter.Convert(dummyCard); if (TradingDatabaseHandler.Trade(tradeId, user, offeredCardId, card.type, card.damage)) { TradingDatabaseHandler.DeleteTradingDeal(tradeId); Output.WriteConsole(Output.TradeSuccess); return; } Output.WriteConsole(Output.TradeConditionsNotMet); return; } Output.WriteConsole(Output.TradeInvalidCard); return; } Output.WriteConsole(Output.TradeSelfTrade); return; } Output.WriteConsole(Output.AuthError); }
public void DummyCard_Banana_Fail_Conversion() { DummyCard card = new DummyCard(); card.id = "abc"; card.damage = 20; card.name = "Banana"; ICard card2 = DummyCardConverter.Convert(card); Assert.AreEqual(card2, null); }
public void DummyCard_Knight_Conversion() { DummyCard card = new DummyCard(); card.id = "abc"; card.damage = 20; card.name = "Knight"; ICard card2 = DummyCardConverter.Convert(card); Assert.AreEqual(card2.element_type, Element_types.Normal); }
public void DummyCard_Waterspell_Conversion() { DummyCard card = new DummyCard(); card.id = "abc"; card.damage = 20; card.name = "WaterSpell"; ICard card2 = DummyCardConverter.Convert(card); Assert.AreEqual(card2.element_type, Element_types.Water); }
public void DummyCard_Dragon_Conversion() { DummyCard card = new DummyCard(); card.id = "abc"; card.damage = 20; card.name = "Dragon"; ICard card2 = DummyCardConverter.Convert(card); Assert.AreEqual(card2.element_type, Element_types.Fire); }
public static void AcquirePackage(User user) { DummyCard[] cards = new DummyCard[5]; for (int i = 0; i < 5; i++) { cards[i] = new DummyCard(); } int counter = 0; int minId = 0; using var conn = new NpgsqlConnection(connString); conn.Open(); try { using (var cmd = new NpgsqlCommand("Select min(packid) FROM cards_packs WHERE bought = false", conn)) using (var reader = cmd.ExecuteReader()) while (reader.Read()) { minId = (int)reader[0]; } } catch (Exception e) { conn.Close(); throw new Exception(Output.PackageTransactionError); } string selectString = String.Format("SELECT id, cardname, damage FROM cards_packs WHERE packid = {0}", minId); using (var cmd = new NpgsqlCommand(selectString, conn)) using (var reader = cmd.ExecuteReader()) while (reader.Read()) { cards[counter].id = reader[0].ToString(); cards[counter].name = reader[1].ToString(); cards[counter].damage = (float)((double)reader[2]); counter++; } using (var cmd = new NpgsqlCommand("UPDATE cards_packs SET bought = true WHERE packid = @id", conn)) { //adding parameters cmd.Parameters.AddWithValue("@id", minId); cmd.Prepare(); cmd.ExecuteNonQuery(); } conn.Close(); CardsUsersDatabaseHandler.InsertPackage(cards, user); }
private void CreateCardOption(Card card, int counter) { float imageOffset = cardWidth; contentWidth += cardWidth; if (counter > 0) { imageOffset += cardWidth / 4; contentWidth += cardWidth / 4; } imageOffset *= counter; DummyCard newDummyCard = Instantiate(dummycard, new Vector2(transform.position.x + imageOffset, transform.position.y), Quaternion.identity); newDummyCard.transform.SetParent(cardHolder.transform); newDummyCard.SetupDummyCard(card); cardOptions.Add(newDummyCard); }