private void Unload() { if (_mySqlConnection != null) { _mySqlConnection = null; } }
private void StartConnection() { if (_mySqlConnection == null) { Puts("Opening connection."); _mySqlConnection = _mySql.OpenDb(dbConnection["Host"].ToString(), Convert.ToInt32(dbConnection["Port"]), dbConnection["Database"].ToString(), dbConnection["Username"].ToString(), dbConnection["Password"].ToString(), this); Puts("Connection opened."); } }
void Unloaded() { foreach (var player in BasePlayer.activePlayerList) { OnPlayerDisconnected(player); } timer.Once(5, () => { _mySql.CloseDb(_mySqlConnection); _mySqlConnection = null; }); }
private void StartConnection() { if (usingMySQL() && _mySqlConnection == null) { _mySqlConnection = _mySql.OpenDb( Address, Port, dbName, User, Password, this); Puts("Connection opened.(MySQL)"); } }
void ClaimRewardCommand(BasePlayer player, string command, string[] args) { string playerEmail = string.Join("", args); playerEmail = playerEmail.Replace("@", "@@"); string packageClaimed = ""; _mySqlConnection = _mySql.OpenDb(dc_config.MySQLIP, dc_config.MySQLPort, dc_config.MySQLDatabase, dc_config.MySQLusername, dc_config.MySQLpassword, this); var sql = Ext.MySql.Sql.Builder.Append("CALL rustserver.claim_donation('" + playerEmail + "');"); _mySql.Query(sql, _mySqlConnection, list => { string playerName = Regex.Replace(player.displayName, "(\\[.*\\])|(\".*\")|('.*')|(\\(.*\\))", ""); var sb = new StringBuilder(); foreach (var entry in list) { sb.AppendFormat("{0}", entry["item_name"]); sb.AppendLine(); } packageClaimed = sb.ToString(); string packageKey = getPackageKey(packageClaimed, dc_config.Packages); playerName = Regex.Replace(player.displayName, "(\\[.*\\])|(\".*\")|('.*')|(\\(.*\\))", ""); if (packageClaimed.Length < 3) { SendReply(player, string.Format(GetMessage("DC_NoUnclaimed", player.UserIDString), playerEmail.Replace("@@", "@"))); } else { List <string> ConsoleCommands; if (dc_config.Packages.TryGetValue(packageKey, out ConsoleCommands)) { RunConsoleCommands(ConsoleCommands, playerName); SendReply(player, string.Format(GetMessage("DC_Claimed", player.UserIDString), packageClaimed)); Puts(player + " has claimed donation package " + packageClaimed); } else { SendReply(player, string.Format(GetMessage("DC_NoPackage", player.UserIDString), packageClaimed)); Puts(player + " tried to claim " + packageClaimed + "but the package could not be found in the config!"); } } }); }
void MySqlSelect(string SelectFields, string TableName) { // Connects to the database connection = mySql.OpenDb(MySqlAddress, MySqlPort, MySqlDatabaseName, MySqlUsername, MySqlPassword, this); var SelectData = $"SELECT {SelectFields} FROM `{TableName}`"; // Build MySql Select Query var sql = Ext.MySql.Sql.Builder.Append(@SelectData); // Execute MySql Query mySql.Query(sql, connection, result => { if (result == null) { return; } // Process each record foreach (var entry in result) { // Gets steamID from the Database and converts it to ulong so Whitelist will accept it var steamID = $"{entry["steamID"]}"; ulong ulongID = Convert.ToUInt64(steamID); // Gets steamName used to register on the Whitelist var steamName = $"{entry["steamName"]}"; // Gets Players IP they used when registering var accessIP = $"{entry["ip"]}"; // Gets the Timestamp of when the registration happened var accessTimestamp = $"{entry["timestamp"]}"; // Set ConsoleDebug to true in the config file to enable Debug messages in the console if (ConsoleDebug) { Puts($"Adding {steamName} to the Whitelist..."); } // Adds the Record to the Whitelist CodeHatch.Engine.Networking.Server.UserWhitelist.Add(ulongID, steamName, $"IP that requested access: {accessIP}; Registered Steam Name: {steamName}; Timestamp: {accessTimestamp};"); } }); }