Ejemplo n.º 1
0
        public override void setupServer()
        {
            //throw new NotImplementedException();
            setup();

            if (!changeDb)
            {
                String[] configLines = File.ReadAllLines(Application.StartupPath + "\\serverconfig.cfg");
                AppSettings.DefaultConnectionParameters = new String[] { configLines[0], configLines[1], configLines[2], configLines[3] };

                AppSettings.QueryTimeOut = configLines.Length >= 7 ? int.Parse(configLines[5]) : AppSettings.QueryTimeOut;
                AppSettings.MaxRecordLevelSecurityCacheAge = new TimeSpan(0, 5, 0);
                MySqlDatabaseHandler dbHandler = new MySqlDatabaseHandler();
            }
            else
            {
                String[] configLines = File.ReadAllLines(Application.StartupPath + "\\serverconfig1.cfg");
                AppSettings.DefaultConnectionParameters = new String[] { configLines[0], configLines[1], configLines[2], configLines[3] };
                AppSettings.QueryTimeOut = configLines.Length >= 7 ? int.Parse(configLines[5]) : AppSettings.QueryTimeOut;
                AppSettings.MaxRecordLevelSecurityCacheAge = new TimeSpan(0, 5, 0);
                MySqlDatabaseHandler dbHandler = new MySqlDatabaseHandler(configLines);

                DatabaseHandler.DefaultDatabaseHandlerObject      = dbHandler;
                MySqlDatabaseHandler.DefaultDatabaseHandlerObject = dbHandler;
            }
        }
Ejemplo n.º 2
0
        public async Task CreatureLookup(string name)
        {
            var message = await Context.Channel.SendMessageAsync("Let me see... :thinking:");

            var creature = MySqlDatabaseHandler.GetCreature(name);

            if (creature == null)
            {
                return;
            }
            var eb = new EmbedBuilder();

            eb.WithTitle(creature.Name);
            eb.WithDescription("This is what I could find:");
            eb.AddField("Entry:", " " + creature.Entry, true);
            eb.AddField("Model ID:", " " + creature.ModelID1, true);
            eb.AddField("Min Level:", " " + creature.minLevel, true);
            eb.AddField("Max Level:", " " + creature.maxLevel, true);
            eb.AddField("AI Name:", " " + creature.AIName, true);
            eb.AddField("Script Name:", " " + creature.ScriptName, true);
            eb.WithTimestamp(DateTime.Now);
            eb.WithColor(Color.Red);
            await Context.Channel.SendMessageAsync("", false, eb.Build());

            await message.DeleteAsync();

            Console.WriteLine("[" + DateTime.Now + "]" + "[BOT] -> Send Result : " + name);
        }
Ejemplo n.º 3
0
        private void setDbSettings(string[] configLines)
        {
            AppSettings.DefaultConnectionParameters = new String[] { configLines[0], configLines[1], configLines[2], configLines[3] };
            AppSettings.QueryTimeOut = configLines.Length >= 7 ? int.Parse(configLines[5]) : AppSettings.QueryTimeOut;
            AppSettings.MaxRecordLevelSecurityCacheAge = new TimeSpan(0, 5, 0);
            MySqlDatabaseHandler dbHandler = new MySqlDatabaseHandler(configLines);

            DatabaseHandler.DefaultDatabaseHandlerObject = dbHandler;
        }
Ejemplo n.º 4
0
        public override void setupWindowsClient()
        {
            setup();

            String assemblyLocation = Util.getDirectoryPath(Assembly.GetExecutingAssembly().Location);

            string clientconfigfilename = assemblyLocation + "\\clientconfig.cfg";

            String[] configLines = File.ReadAllLines(clientconfigfilename);

            if (AppSettings.Servers.Count == 0)
            {
                using (TimedLock.Lock(AppSettings.Servers))
                {
                    if (AppSettings.Servers.Count == 0)
                    {
                        String iplist = configLines[0].Trim();
                        String[] ips = iplist.Split(new char[] { ' ', ',' }, StringSplitOptions.RemoveEmptyEntries);
                        String portlist = configLines[1].Trim();
                        String[] ports = portlist.Split(new char[] { ' ', ',' }, StringSplitOptions.RemoveEmptyEntries);

                        for (int i = 0; i < ips.Length; i++)
                        {
                            AppSettings.Servers.Add(new AppFramework.AppClasses.AppSettings.ServerIPAndPort(ips[i], int.Parse(ports[i])));
                        }
                    }
                }
            }

            try
            {
                MySqlDatabaseHandler dbHandler = new MySqlDatabaseHandler();
            }
            catch (Exception e)
            {
                Infolog.writeToEventLog(e, InfoType.Error);
                if (System.Threading.Thread.CurrentThread.GetApartmentState() == System.Threading.ApartmentState.STA)
                {
                    MessageBox.Show("Unable to establish server connection to server. Please view event logs for further details");
                }
                Environment.Exit(205);
            }
        }
Ejemplo n.º 5
0
        public override void setupWindowsClient()
        {
            setup();

            String assemblyLocation = Util.getDirectoryPath(Assembly.GetExecutingAssembly().Location);

            string clientconfigfilename = assemblyLocation + "\\clientconfig.cfg";

            String[] configLines = File.ReadAllLines(clientconfigfilename);

            if (AppSettings.Servers.Count == 0)
            {
                using (TimedLock.Lock(AppSettings.Servers))
                {
                    if (AppSettings.Servers.Count == 0)
                    {
                        String   iplist   = configLines[0].Trim();
                        String[] ips      = iplist.Split(new char[] { ' ', ',' }, StringSplitOptions.RemoveEmptyEntries);
                        String   portlist = configLines[1].Trim();
                        String[] ports    = portlist.Split(new char[] { ' ', ',' }, StringSplitOptions.RemoveEmptyEntries);

                        for (int i = 0; i < ips.Length; i++)
                        {
                            AppSettings.Servers.Add(new AppFramework.AppClasses.AppSettings.ServerIPAndPort(ips[i], int.Parse(ports[i])));
                        }
                    }
                }
            }

            try
            {
                MySqlDatabaseHandler dbHandler = new MySqlDatabaseHandler();
            }
            catch (Exception e)
            {
                Infolog.writeToEventLog(e, InfoType.Error);
                if (System.Threading.Thread.CurrentThread.GetApartmentState() == System.Threading.ApartmentState.STA)
                {
                    MessageBox.Show("Unable to establish server connection to server. Please view event logs for further details");
                }
                Environment.Exit(205);
            }
        }
Ejemplo n.º 6
0
        public async Task CharStatAsync(string name)
        {
            var message = await Context.Channel.SendMessageAsync("Let me see... :thinking:");

            var character = MySqlDatabaseHandler.GetCharStats(name);

            if (character == null)
            {
                return;
            }
            var eb = new EmbedBuilder();

            eb.WithTitle("Character Stats");
            eb.WithDescription("This is what I could find:");
            eb.AddField("Max Health:", " " + character.MaxHealth, true);
            eb.AddField("Mana:", " " + character.MaxPower1, true);
            eb.AddField("Rage:", " " + character.MaxPower2, true);
            eb.AddField("Focus:", " " + character.MaxPower3, true);
            eb.AddField("Energy:", " " + character.MaxPower4, true);
            eb.AddField("Happiness:", " " + character.MaxPower5, true);
            eb.AddField("Rune:", " " + character.MaxPower6, true);
            eb.AddField("Runic Power:", " " + character.MaxPower7, true);
            eb.AddField("Strength:", " " + character.Strength, true);
            eb.AddField("Agility:", " " + character.Agility, true);
            eb.AddField("Stamina:", " " + character.Stamina, true);
            eb.AddField("Intellect:", " " + character.Intellect, true);
            eb.AddField("Spirit:", " " + character.Spirit, true);
            eb.AddField("Armor:", " " + character.Armor, true);
            eb.WithTimestamp(DateTime.Now);
            eb.WithColor(Color.Red);
            await Context.Channel.SendMessageAsync("", false, eb.Build());

            await message.DeleteAsync();

            Console.WriteLine("[" + DateTime.Now + "]" + "[BOT] -> Send Character Stats : " + name);
        }
Ejemplo n.º 7
0
        public override void setupServer()
        {
            //throw new NotImplementedException();
            setup();
            String[] configLines = File.ReadAllLines(Application.StartupPath + "\\serverconfig.cfg");
            AppSettings.DefaultConnectionParameters = new String[] { configLines[0], configLines[1], configLines[2], configLines[3] };
            //if (configLines.Length > 6)
            //{
            //    AppSettings.CompanyName = configLines[6];
            //}

            //int port;
            //if (configLines.Length >= 9 && int.TryParse(configLines[8], out port))
            //{
            //    AppSettings.Servers.Add(new AppSettings.ServerIPAndPort("", port));
            //}

            AppSettings.QueryTimeOut = configLines.Length >= 4 ? int.Parse(configLines[4]) : AppSettings.QueryTimeOut;
            AppSettings.MaxRecordLevelSecurityCacheAge = new TimeSpan(0, 5, 0);
            MySqlDatabaseHandler dbHandler = new MySqlDatabaseHandler();
        }
Ejemplo n.º 8
0
        public async Task CharAsync(string name)
        {
            var message = await Context.Channel.SendMessageAsync("Let me see... :thinking:");

            var character = MySqlDatabaseHandler.GetCharacter(name);

            if (character == null)
            {
                return;
            }
            var eb = new EmbedBuilder();

            eb.WithDescription("This is what I could find:");
            eb.AddField("Race:", " " + Convert.ToString(character.Race).Replace('_', ' '), true);
            eb.AddField("Class:", " " + Convert.ToString(character.Class).Replace('_', ' '), true);
            eb.AddField("Gender:", " " + Convert.ToString(character.Gender), true);
            eb.AddField("Level:", " " + character.Level, true);
            switch (character.Class)
            {
            case Class.Warrior:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/e/ee/Warrior_crest.png/revision/latest?cb=20130813095500");
                break;

            case Class.Paladin:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/e/ee/Warrior_crest.png/revision/latest?cb=20130813095500");
                break;

            case Class.Hunter:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/2/20/Hunter_crest.png/revision/latest?cb=20130813094921");
                break;

            case Class.Rogue:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/e/e2/Rogue_crest.png/revision/latest?cb=20130813095139");
                break;

            case Class.Priest:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/7/71/Priest_crest.png/revision/latest?cb=20130813095106");
                break;

            case Class.Death_Knight:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/3/30/Death_knight_crest.png/revision/latest?cb=20130813094520");
                break;

            case Class.Shaman:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/d/df/Shaman_crest.png/revision/latest?cb=20130813095240");
                break;

            case Class.Mage:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/b/b8/Mage_crest.png/revision/latest?cb=20130813094952");
                break;

            case Class.Warlock:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/4/4f/Warlock_crest.png/revision/latest?cb=20130813095321");
                break;

            case Class.Monk:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/6/60/Monk_crest.png/revision/latest?cb=20130817144820");
                break;

            case Class.Druid:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/5/55/Druid_crest.png/revision/latest?cb=20130813094831");
                break;

            case Class.Demon_Hunter:
                eb.WithThumbnailUrl("https://vignette.wikia.nocookie.net/wowwiki/images/d/db/Demon_hunter_crest-250x271.png/revision/latest?cb=20151004044357");
                break;
            }
            eb.WithTimestamp(DateTime.Now);
            eb.WithAuthor(author =>
            {
                author
                .WithName(character.Name);
            });
            eb.WithColor(Color.Red);
            await Context.Channel.SendMessageAsync("", false, eb.Build());

            await message.DeleteAsync();

            Console.WriteLine("[" + DateTime.Now + "]" + "[BOT] -> Send Character : " + name);
        }