All pastes #919710 Raw Edit

Latheesan

public text v1 · immutable
#919710 ·published 2008-02-26 22:55 UTC
rendered paste body
        //
        // My Method in MySQL Class
        //
        public string[] getOnlinePlayers()
        {
            List<string> result = new List<string>();
            string Query = "SELECT * FROM `characters` WHERE `online` = '1' ORDER BY `acct` ASC";
            MySqlCommand onlinePlayerList = new MySqlCommand(Query, this.sqlConn);
            onlinePlayerList.ExecuteNonQuery();
            MySqlDataReader myReader = onlinePlayerList.ExecuteReader();
            while (myReader.Read())
            {
                StringBuilder Output = new StringBuilder();
                Output.Append(myReader["name"] + " - ");
                switch ((int)myReader["gender"])
                {
                    case 0: Output.Append("Male - "); break;
                    case 1: Output.Append("Female - "); break;
                }
                Output.Append("Level " + myReader["level"]);
                switch ((int)myReader["race"])
                {
                    case 1: Output.Append("Human Race - "); break;
                    case 2: Output.Append("Orc Race - "); break;
                    case 3: Output.Append("Dwarf Race - "); break;
                    case 4: Output.Append("Night Elf Race - "); break;
                    case 5: Output.Append("Undead Race - "); break;
                    case 6: Output.Append("Tauren Race - "); break;
                    case 7: Output.Append("Gnome Race - "); break;
                    case 8: Output.Append("Troll Race - "); break;
                    case 9: Output.Append("Goblin Race - "); break;
                    case 10: Output.Append("Blood Elf Race - "); break;
                    case 11: Output.Append("Draenei Race - "); break;
                    default: Output.Append("Unknown Race - "); break;
                }
                switch ((int)myReader["class"])
                {
                    case 1: Output.Append("Warrior Class - "); break;
                    case 2: Output.Append("Paladin Class - "); break;
                    case 3: Output.Append("Hunter Class - "); break;
                    case 4: Output.Append("Rogue Class - "); break;
                    case 5: Output.Append("Priest Class - "); break;
                    case 7: Output.Append("Shaman Class - "); break;
                    case 8: Output.Append("Mage Class - "); break;
                    case 9: Output.Append("Warlock Class - "); break;
                    case 11: Output.Append("Druid Class - "); break;
                    default: Output.Append("Unknown Class - "); break;
                }
                switch ((int)myReader["mapId"])
                {
                    case 0: Output.Append("At Azeroth"); break;
                    case 1: Output.Append("At Kalimdor"); break;
                    case 2: Output.Append("At UnderMine"); break;
                    case 13: Output.Append("At Test zone"); break;
                    case 17: Output.Append("At Kalidar"); break;
                    case 30: Output.Append("At Alterac Valley"); break;
                    case 33: Output.Append("At Shadowfang Keep"); break;
                    case 34: Output.Append("At The Stockade"); break;
                    case 35: Output.Append("At Stormwind Prison"); break;
                    case 36: Output.Append("At Deadmines"); break;
                    case 37: Output.Append("At Plains of Snow"); break;
                    case 43: Output.Append("At Wailing Caverns"); break;
                    case 44: Output.Append("At Monastery Interior"); break;
                    case 47: Output.Append("At Razorfen Kraul"); break;
                    case 48: Output.Append("At Blackfathom Deeps"); break;
                    case 70: Output.Append("At Uldaman"); break;
                    case 90: Output.Append("At Gnomeregan"); break;
                    case 109: Output.Append("At Sunken Temple"); break;
                    case 129: Output.Append("At Razorfen Downs"); break;
                    case 169: Output.Append("At Emerald Forest"); break;
                    case 189: Output.Append("At Scarlet Monastery"); break;
                    case 209: Output.Append("At Zul'Farrak"); break;
                    case 229: Output.Append("At Blackrock Spire"); break;
                    case 230: Output.Append("At Blackrock Depths"); break;
                    case 249: Output.Append("At Onyxias Lair"); break;
                    case 269: Output.Append("At Caverns of Time"); break;
                    case 289: Output.Append("At Scholomance"); break;
                    case 309: Output.Append("At Zul'Gurub"); break;
                    case 329: Output.Append("At Stratholme"); break;
                    case 349: Output.Append("At Maraudon"); break;
                    case 369: Output.Append("At Deeprun Tram"); break;
                    case 389: Output.Append("At Ragefire Chasm"); break;
                    case 409: Output.Append("At The Molten Core"); break;
                    case 429: Output.Append("At Dire Maul"); break;
                    case 449: Output.Append("At Alliance PVP Barracks"); break;
                    case 450: Output.Append("At Horde PVP Barracks"); break;
                    case 451: Output.Append("At Development Land"); break;
                    case 469: Output.Append("At Blackwing Lair"); break;
                    case 489: Output.Append("At Warsong Gulch"); break;
                    case 509: Output.Append("At Ruins of Ahn'Qiraj"); break;
                    case 529: Output.Append("At Arathi Basin"); break;
                    case 530: Output.Append("At Burning Crusade Zones"); break;
                    case 531: Output.Append("At Temple of Ahn'Qiraj"); break;
                    case 532: Output.Append("At Karazhan"); break;
                    case 533: Output.Append("At Naxxramas"); break;
                    case 534: Output.Append("At Hyjal Past"); break;
                    case 540: Output.Append("At Shattered Halls"); break;
                    case 542: Output.Append("At Blood Furnace"); break;
                    case 543: Output.Append("At Hellfire Ramparts"); break;
                    case 544: Output.Append("At Magtheridon's Lair"); break;
                    case 545: Output.Append("At The Steamvault"); break;
                    case 546: Output.Append("At The Black Temple"); break;
                    case 547: Output.Append("At The Slave Pens"); break;
                    case 548: Output.Append("At Coilfang Resevoir"); break;
                    case 550: Output.Append("At The Eye"); break;
                    case 552: Output.Append("At The Arcatraz"); break;
                    case 553: Output.Append("At The Botanica"); break;
                    case 554: Output.Append("At The Mechanar"); break;
                    case 555: Output.Append("At Shadow Labyrinth"); break;
                    case 556: Output.Append("At Sethekk Halls"); break;
                    case 557: Output.Append("At Mana-Tombs"); break;
                    case 558: Output.Append("At Auchenai Crypts"); break;
                    case 559: Output.Append("At Nagrand Arena"); break;
                    case 560: Output.Append("At Hillsbrad Past"); break;
                    case 562: Output.Append("At Blade's Edge Arena"); break;
                    case 564: Output.Append("At Black Temple"); break;
                    case 565: Output.Append("At Gruul's Lair"); break;
                    case 566: Output.Append("At Eye of the Storm"); break;
                    case 568: Output.Append("At Zul'aman"); break;
                    default: Output.Append("At Unknown Location"); break;
                }
                result.Add(Output.ToString());
            }
            myReader.Close();
            return result.ToArray();
        }

        //
        // Usage
        //
        private void refreshOnlinePlayerList()
        {
            onlinePlayerList.Items.Clear();
            MySQL db = new MySQL(Settings.Default.sqlHost, Settings.Default.sqlLoginDB, Settings.Default.sqlUser, Settings.Default.sqlPass);
            db.Connect();
            string[] onlinePlayer = db.getOnlinePlayers();
            db.Disconnect();
            for (int i = 0; i < onlinePlayer.Length; i++)
            {
                onlinePlayerList.Items.Add(onlinePlayer[i]);
            }
        }

        private void onlinePlayersTab_Enter(object sender, EventArgs e)
        {
            refreshOnlinePlayerList();
        }