Exemplo n.º 1
0
        static void Main(string[] args)
        {
            int index;


            var envPath  = @"%userprofile%\Downloads\Data.txt";
            var filePath = Environment.ExpandEnvironmentVariables(envPath);



            string  content;
            Boolean exists;

            exists = File.Exists(filePath);

            if (exists)
            {
                content = File.ReadAllText(filePath);
            }
            else
            {
                var           client   = new RestClient("https://rickandmortyapi.com/api/character/?page=1");
                var           request  = new RestRequest(Method.GET);
                IRestResponse response = client.Execute(request);
                content = response.Content;
            }


            RootObject res = SimpleJson.DeserializeObject <RootObject>(content);



            int userInput = 0;

            do
            {
                userInput = DisplayMenu();

                switch (userInput)
                {
                case 1:
                    AddCharacter(res);
                    break;

                //method to add character, prompts questions one at a time
                case 2:
                    int counter = 0;
                    Console.Clear();
                    Console.WriteLine("Here are all the characters\n");
                    foreach (var item in res.results)
                    {
                        Console.WriteLine("The characters name is {0} with an ID of {1}", item.name, counter);
                        counter++;
                    }
                    Console.WriteLine("\nPress Enter to continue back to the menu");
                    Console.ReadLine();

                    //method to display list of all characters with there ID #

                    break;

                case 3:
                    Console.Clear();
                    Console.WriteLine("Please enter a character ID between 0 and {0}", res.results.Count - 1);
                    index = Convert.ToInt32(Console.ReadLine());


                    Console.WriteLine(res.results[index].name);
                    Console.WriteLine(res.results[index].status);
                    Console.WriteLine(res.results[index].species);
                    Console.WriteLine(res.results[index].gender);

                    Console.WriteLine("\nPress Enter to continue back to the menu");
                    Console.ReadLine();

                    //call method to display chosen character by ID and any information on them.
                    break;

                case 4:
                    Console.WriteLine("Which ID would you like to delete?");
                    Console.WriteLine("Please enter a character ID between 0 and {0}", res.results.Count - 1);

                    //Fix this to test parse for a number
                    bool ifsuccess;

                    ifsuccess = Int32.TryParse(Console.ReadLine(), out index);
                    //       index = Convert.ToInt32(Console.ReadLine());
                    res.results.RemoveAt(index);

                    //call method for to enter ID# and delete it from list
                    break;
                }
            }while (userInput != 5);

            //saves any changes inputed through method and updates file.

            string data = SimpleJson.SerializeObject(res);

            File.WriteAllText(filePath, data);
        }
Exemplo n.º 2
0
        static void Logic(RootObject lp)
        {
            userid  = lp.updates[0][email protected]_id;
            peer_id = lp.updates[0][email protected]_id;
            //messageid = Convert.ToInt64(lp.updates[0][email protected]_message_id);

            switch (lp.updates[0][email protected])
            {
            case "/пополнить":
            {
                if (t.IfRegistered(userid))
                {
                    Send("Введите /пополнить [сумма в рублях]");
                }
                else
                {
                    Send("Вы не зарегистрированы! Для регистрации введите /регистрация!");
                }
                break;
            }

            case "/регистрация":
            {
                if (!t.IfRegistered(userid))
                {
                    t.Register(userid);
                    Send("Вы успешно зарегистрировались.\n\nВам начислен бонус в сумме 10 рублей.\nДля игры введите /ставка [сумма] [вероятность]\nВводите только натуральные числа!\nИграйте без флуда, иначе бот не справится и вы можете потерять деньги(виноваты только вы сами)!");
                }
                else
                {
                    int balanced = t.CheckBalance(userid);
                    Send(string.Format("Ваш аккаунт уже зарегистрирован. Ваш баланс: {0},{1}{2}", balanced / 100, balanced % 100 / 10, balanced % 10));
                }
                break;
            }

            case "/ставка":
            {
                if (t.IfRegistered(userid))
                {
                    Send("Введите /ставка [сумма] [вероятность]");
                }
                else
                {
                    Send("Ваш аккаунт не зарегистрирован. Для регистрации введите /регистрация.");
                }
                break;
            }

            case "/баланс":
            {
                if (t.IfRegistered(userid))
                {
                    int value = t.CheckBalance(userid);
                    Send(string.Format("Ваш баланс: {0},{1}{2}", value / 100, value % 100 / 10, value % 10));
                }
                else
                {
                    Send("Вы не зарегистрированы! Для регистрации введите /регистрация!");
                }
                break;
            }

            case var s1 when(Regex.IsMatch(lp.updates[0][email protected], @"/ставка (?'number1'\d+) (?'number2'\d+)")):
            {
                if (t.IfRegistered(userid))
                {
                    var regex   = new Regex(@"/ставка (?'number1'\d+) (?'number2'\d+)");
                    var match   = regex.Match(lp.updates[0][email protected]);
                    int number1 = Convert.ToInt32(int.Parse(match.Groups["number1"].Value) * 1.00);
                    int number2 = Convert.ToInt32(int.Parse(match.Groups["number2"].Value) * 1.00);

                    money = t.CheckBalance(userid);
                    Random rand  = new Random();
                    int    value = rand.Next(0, 100);

                    if (number2 > 0 && 90 >= number2)
                    {
                        if (number1 <= 0)
                        {
                            Send("Ставка не может быть меньше или равна нулю!");
                        }
                        else if (money / 100 < number1)
                        {
                            Send("На балансе недостаточно денег!");
                        }
                        else
                        {
                            money = (money - number1 * 100);
                            //t.GameFirst(userid, money);

                            Bet(value, number1, number2);
                        }
                    }
                    else
                    {
                        Send("Вероятность выигрыша должна быть в пределах 0-90!");
                    }
                }
                else
                {
                    Send("Вы не зарегистрированы! Для регистрации введите /регистрация!");
                }
                break;
            }
            }

            /*var pattern_payment = @"/пополнить (?'number1'\d+)";
             * var regex_payment = new Regex(pattern_payment);
             * if (regex_payment.IsMatch(lp.updates[0][email protected]))
             * {
             *  if (t.IfRegistered(userid))
             *  {
             *      var match = regex_payment.Match(lp.updates[0][email protected]);
             *      int number1 = Convert.ToInt32(int.Parse(match.Groups["number1"].Value));
             *      Send(string.Format("Убедитесь в верности введённых данных: \nID аккаунта: {0}\nСумма пополнения: {1} рублей\n\nДля пополнения баланса на данный аккаунт перейдите по ссылке ниже:\nhttp://casinos-bot.com/payment/obr.php?account={0}&sum={1}&fk_go", userid, number1));
             *  }
             *  else Send("Ваш аккаунт не зарегистрирован. Для регистрации введите /регистрация.");
             * }*/
        }
Exemplo n.º 3
0
        public void setStock(String tick, String start, String end)
        {
            String pre = @"https://api.intrinio.com/prices?identifier=";

            this.ticker = tick;
            String Start = "&start_date=" + start;
            String End   = "&end_date=" + end;
            // String url2 = @"https://api.intrinio.com/prices?identifier=SNAP&start_date=2017-06-29";
            String url        = pre + ticker + Start + End;
            String pageNumber = "&page_number=";

            obj = new RootObject();
            int h = 1;

            for (int j = 1; j <= h; j++)
            {
                pageNumber = pageNumber + j.ToString();

                HttpWebRequest request = (System.Net.HttpWebRequest)WebRequest.Create(url + pageNumber);

                request.Method = "GET";
                request.Headers["Authorization"] = "Basic " + Convert.ToBase64String
                                                       (Encoding.Default.GetBytes("c248b72786804ad428d98b29bef7c1c3:a0db0996cdc891c8d7732a9fbf6803c1"));
                request.UseDefaultCredentials = true;
                request.Proxy.Credentials     = System.Net.CredentialCache.DefaultCredentials;

                HttpWebResponse response      = (HttpWebResponse)request.GetResponse();
                Stream          receiveStream = response.GetResponseStream();

                /* Pipes the stream to a higher level stream reader with the required encoding format.
                 *
                 *
                 * StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
                 *
                 * Console.WriteLine(readStream.ReadToEnd());
                 */

                DataContractJsonSerializer serializer =
                    new DataContractJsonSerializer(typeof(RootObject));
                obj = (RootObject)serializer.ReadObject(receiveStream);
                //List<Datum> data = user.data;
                h = obj.total_pages;
                for (int i = 0; i < obj.data.Count; i++)
                {
                    Stock n = new Stock();

                    n.date         = obj.data[i].date;
                    n.open_market  = obj.data[i].open;
                    n.high         = obj.data[i].high;
                    n.low          = obj.data[i].low;
                    n.close_market = obj.data[i].close;
                    n.volume       = obj.data[i].volume;
                    n.ex_dividend  = obj.data[i].ex_dividend;
                    n.split_ratio  = obj.data[i].split_ratio;
                    n.adj_open     = obj.data[i].adj_open;
                    n.adj_high     = obj.data[i].adj_high;
                    n.adj_low      = obj.data[i].adj_low;
                    n.adj_close    = obj.data[i].adj_close;
                    n.adj_volume   = obj.data[i].adj_volume;

                    stock.Add(n);
                }
                response.Close();

                pageNumber = "&page_number=";
            }
            api_call_credits += h;
        }