//obiekt przechowujący obiekty ubiegające się o dostęp do wątku //private Object Sync; public MainForm() { InitializeComponent(); //Sync = new Object(); //domyślnie serwer jest wyłączony isRunning = false; timer = new System.Windows.Forms.Timer(); timer.Interval = 1000; timer.Tick += new EventHandler(DisplayServerTime); timer.Start(); //utworzenie gniazda serwera try { server = new TcpListener(IPAddress.Any, 8001); } catch (Exception ex) { MessageBox.Show("Nie udało się utworzyć gniazda serwera. Dalsze korzystanie z aplikacji może generować błędy! Uruchom aplikację jeszcze raz.\nDebuger message:\n" + ex.ToString(), "Błąd tworzenia gniazda serwera!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } dataBase = new GlobalMySql(); try { dataBase.Connection.Open(); } catch { AddLog("Nie udało się nawiązać połączenia z bazą danych. Aplikacja nie będzie działać poprawanie."); } }
//konstruktor public Enemies(uint location, GlobalMySql GlobalMySqlObject) { enemiesList = new List<Mob>(); //przypisanie obiektu zawierającego ustawienia i połączenie z bazą do obiektu postaci dataBase = GlobalMySqlObject; if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); //wybierze potwory przypisane do zadanej lokalizacji query.CommandText = "SELECT C.id_creature, C.name, C.level, C.bonusHP, C.strength, C.luck, C.dexterity, C.stamina, C.gold_drop, C.exp, C.icon_name FROM creature C, wystepowanie W WHERE (W.id_surr = " + location + " AND W.id_creature = C.id_creature)"; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { Mob mb = new Mob( reader.GetUInt64("id_creature"), reader.GetString("name"), reader.GetUInt32("level"), reader.GetUInt64("bonusHP"), reader.GetUInt32("strength"), reader.GetUInt32("luck"), reader.GetUInt32("dexterity"), reader.GetUInt32("stamina"), reader.GetUInt32("gold_drop"), reader.GetUInt32("exp"), reader.GetString("icon_name") ); enemiesList.Add(mb); ++mobsCount; } } } catch { // } }
public ItemsWeapon(GlobalMySql dataBase) { itemWList = new List<ItemWeapon>(); if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); query.CommandText = "SELECT ITEM.*, WEAPON_DETAILS.min_attack, WEAPON_DETAILS.max_attack, BONUSES.strength, BONUSES.stamina, BONUSES.dexterity, BONUSES.luck FROM `item` ITEM, `weapon_details` WEAPON_DETAILS, `bonuses` BONUSES WHERE ITEM.type='weapon' AND ITEM.id=WEAPON_DETAILS.id AND ITEM.id=BONUSES.id"; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { ItemWeapon weapon = new ItemWeapon( reader.GetUInt32("id"), reader.GetString("type"), reader.GetUInt32("price"), reader.GetString("name"), reader.GetUInt32("min_attack"), reader.GetUInt32("max_attack"), reader.GetUInt32("strength"), reader.GetUInt32("stamina"), reader.GetUInt32("dexterity"), reader.GetUInt32("luck") ); itemWList.Add(weapon); } } } catch { // } }
public CharacterStorage(ulong id, GlobalMySql GlobalMySqlObject) { //items = new List<Item>(); storage = new List<Storage>(); dataBase = GlobalMySqlObject; this.id = id; if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { System.Windows.Forms.MessageBox.Show("Character_storage: Nie udało się połączyć z bazą danych"); return; } } MySqlCommand query = dataBase.Connection.CreateCommand(); query.CommandText = "SELECT S.* FROM `character_storage` S WHERE S.id = " + this.id; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { Storage position = new Storage( reader.GetUInt32("id"), reader.GetUInt32("id_item"), reader.GetUInt32("amount") ); storage.Add(position); } } } catch { // } }
public CharacterEquipment(ulong characterId, GlobalMySql GlobalMySqlObject) { //przypisanie identyfikatora postaci id = characterId; //przypisanie obiektu zawierającego ustawienia i połączenie z bazą do obiektu postaci dataBase = GlobalMySqlObject; if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); query.CommandText = "SELECT * FROM `character_equipment` WHERE `character_equipment`.`id` = " + id; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { head = reader.GetUInt32("head"); chest = reader.GetUInt32("chest"); legs = reader.GetUInt32("legs"); weapon = reader.GetUInt32("weapon"); shield = reader.GetUInt32("shield"); } } } catch { // } }
private void testConnection_Click(object sender, EventArgs e) { GlobalMySql testConnection; if (mysqlPort.Text == "") { testConnection = new GlobalMySql(mysqlLogin.Text, mysqlPass.Text, mysqlBase.Text, mysqlHost.Text); } else { testConnection = new GlobalMySql(mysqlLogin.Text, mysqlPass.Text, mysqlBase.Text, mysqlHost.Text, mysqlPort.Text); } //próba otworzenia połączenia try { testConnection.Connection.Open(); MessageBox.Show("Udało połączyć się z hostem", "Połączenie udane!", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show("Nie można połączyć się z bazą danych! Błąd: \n" + ex.Message.ToString(), "Błąd połączenia z bazą danych", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
private void ExecuteQuery(object query, GlobalMySql db) { //zdefiniowanie zmiennej polecenia w obrębie obiektu połączenia connection MySqlCommand polecenie = db.Connection.CreateCommand(); //utworzenie zapytania polecenie.CommandText = (string)query; polecenie.ExecuteNonQuery(); }
public Map(GlobalMySql GlobalMySqlObject) { //zainicjalizowanie obiektu obliczeniowego Dijkstry dijkstra = new Dijkstra.Dijkstra(); citiesNumber = 0; maxId = 0; //ustawienie połączenia z bazą dataBase = GlobalMySqlObject; if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); //ustalenie najwiekszego identyfikatora miasta w bazie query.CommandText = "SELECT GREATEST( MAX( id_city ) , MAX( id_cityB ) ) AS max FROM `times`"; try { maxId = uint.Parse(query.ExecuteScalar().ToString()); } catch { // } //utworznie zapytania pobierającego dane o miastach query.CommandText = "SELECT * FROM `map_city`"; //pobranie danych o miastach try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { //utworznie obiektu typu City z danymi z pojedynczego rekordu City city = new City( reader.GetUInt32("id"), reader.GetString("name"), reader.GetUInt32("accessLevel"), reader.GetUInt32("leftCoordinate"), reader.GetUInt32("topCoordinate"), reader.GetString("icon") ); //dodanie obiektu do listy miast cityData.Add(city); //zwiększenie liczby miast citiesNumber++; } } } catch { // } //utworzenie zapytania pobierającego czasy między lokacjami query.CommandText = "SELECT * FROM `times`"; //pobranie danych o miastach try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { //utworzenie połączenia pomiędzy Link( reader.GetUInt32("id_city"), reader.GetUInt32("id_cityB"), reader.GetInt32("weight") ); } } } catch { // } }
public Character(ulong playerId, GlobalMySql GlobalMySqlObject) { //kosntruktor postaci //przypisanie identyfikatora gracza do indetyfikatora postaci this.Id = playerId; //przypisanie obiektu zawierającego ustawienia i połączenie z bazą do obiektu postaci dataBase = GlobalMySqlObject; equipment = new CharacterEquipment(playerId, GlobalMySqlObject); storage = new CharacterStorage(playerId, dataBase); if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); //zapytanie pobierające podstawowe dane postaci query.CommandText = "SELECT * FROM `character` WHERE `character`.`id` = " + Id; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { name = reader.GetString("name"); level = reader.GetUInt32("level"); strength = reader.GetUInt32("strength"); stamina = reader.GetUInt32("stamina"); dexterity = reader.GetUInt32("dexterity"); luck = reader.GetUInt32("luck"); exp = reader.GetUInt32("exp"); gold = reader.GetUInt32("gold"); } } } catch { // } query.CommandText = "SELECT * FROM `character_status` WHERE `character_status`.`id` = " + Id; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { status = reader.GetString("status"); lastDamage = reader.GetUInt64("lastDamage"); damage = reader.GetUInt64("damage"); lastFatigue = reader.GetUInt64("lastFatigue"); fatigue = reader.GetUInt64("fatigue"); location = reader.GetUInt32("location"); travelEndTime = reader.GetUInt64("travelEndTime"); travelDestination = reader.GetUInt32("travelDestination"); } } } catch { // } }
public Skills(GlobalMySql dataBase) { skillList = new List<Skill>(); if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); query.CommandText = "SELECT * FROM `skills`"; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { Skill skill = new Skill( reader.GetUInt32("id_skill"), reader.GetUInt32("dostep_lv"), reader.GetUInt32("strength"), reader.GetUInt32("stamina"), reader.GetUInt32("dexterity"), reader.GetUInt32("luck") ); skillList.Add(skill); } } } catch { // } }
public ItemsArmor(GlobalMySql dataBase) { itemAList = new List<ItemArmor>(); if (dataBase.Connection.State != ConnectionState.Open) { try { dataBase.Connection.Open(); } catch { // } } MySqlCommand query = dataBase.Connection.CreateCommand(); query.CommandText = "SELECT ITEM.*, ARMOR_DETAILS.part, ARMOR_DETAILS.armor, BONUSES.strength, BONUSES.stamina, BONUSES.dexterity, BONUSES.luck FROM `item` ITEM, `armor_details` ARMOR_DETAILS, `bonuses` BONUSES WHERE ITEM.type='armor' AND ITEM.id=ARMOR_DETAILS.id AND ITEM.id=BONUSES.id"; try { using (MySqlDataReader reader = query.ExecuteReader()) { while (reader.Read()) { ItemArmor armor = new ItemArmor( reader.GetUInt32("id"), reader.GetString("type"), reader.GetUInt32("price"), reader.GetString("name"), reader.GetString("part"), reader.GetUInt32("armor"), reader.GetUInt32("strength"), reader.GetUInt32("stamina"), reader.GetUInt32("dexterity"), reader.GetUInt32("luck") ); itemAList.Add(armor); } } } catch { // } }