Example #1
0
        static private Card_Type_Elemnt Get_type_element(string card_name) // method for extracting the type and element type out of a cards name
        {
            Card_Type_Elemnt return_card = new Card_Type_Elemnt();

            if (card_name.ToLower().Contains("water") == true)
            {
                return_card.element = "water";
            }
            else if (card_name.ToLower().Contains("fire") == true)
            {
                return_card.element = "fire";
            }
            else if (card_name.ToLower().Contains("normal") == true)
            {
                return_card.element = "normal";
            }
            else
            {
                return_card.element = "normal";
            }
            if (card_name.ToLower().Contains("spell"))
            {
                return_card.type = "spell";
            }
            else if (card_name.ToLower().Contains("goblin"))
            {
                return_card.type = "goblin";
            }
            else if (card_name.ToLower().Contains("dragon"))
            {
                return_card.type = "dragon";
            }
            else if (card_name.ToLower().Contains("wizzard"))
            {
                return_card.type = "wizzard";
            }
            else if (card_name.ToLower().Contains("ork"))
            {
                return_card.type = "ork";
            }
            else if (card_name.ToLower().Contains("knight"))
            {
                return_card.type = "knight";
            }
            else if (card_name.ToLower().Contains("kraken"))
            {
                return_card.type = "kraken";
            }
            else if (card_name.ToLower().Contains("elve"))
            {
                return_card.type = "elve";
            }
            else
            {
                return_card.type = "human";
            }
            return(return_card);
        }
Example #2
0
        public static int Add_cards_to_shop(string i_username, string card_id, string card_name, double damage)
        {
            try
            {
                if (DBManagment.has_session(i_username) == false) //check if token is valid / has session
                {
                    //throw new Exception("Not logged in / Invalid token");
                    return(1);
                }
                if (DBManagment.Check_admin(i_username) == false) // check if has permission (admin)
                {
                    //throw new Exception("Not authorized, please contact an Admin!");
                    return(2);
                }
                int count_cards = 0;
                var con         = new NpgsqlConnection(DBManagment.cs);
                con.Open();

                var sql_count = "SELECT count (*) from store where card_id = @card_id";
                var cmd       = new NpgsqlCommand(sql_count, con);
                //prepared statments
                cmd.Parameters.AddWithValue("card_id", card_id);
                cmd.Prepare();
                //
                NpgsqlDataReader GetCount = cmd.ExecuteReader(); //curser

                GetCount.Read();
                count_cards = GetCount.GetInt32(0);

                GetCount.Close();



                if (count_cards == 0) //check if name is unique(no one else with the same name)
                {
                    Card_Type_Elemnt new_cte = Get_type_element(card_name);
                    var sql_insert           = "Insert into store (card_id, name, card_type, elementar_type, damage) values (@card_id, @name, @card_type, @elementar_type, @damage)";
                    var cmd2 = new NpgsqlCommand(sql_insert, con);
                    //prepared statment
                    cmd2.Parameters.AddWithValue("card_id", card_id);
                    cmd2.Parameters.AddWithValue("name", card_name);
                    cmd2.Parameters.AddWithValue("card_type", new_cte.type);
                    cmd2.Parameters.AddWithValue("elementar_type", (ElementarType)Enum.Parse(typeof(ElementarType), new_cte.element));
                    cmd2.Parameters.AddWithValue("damage", damage);

                    cmd2.Prepare();
                    //
                    cmd2.ExecuteNonQuery();
                    return(0);
                }
                else
                {
                    //throw new Exception("Error: Card already exists!");
                    return(3);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("{0} Exception caught.", e);
                return(4);
            }
        }