当前位置: 首页>>代码示例>>C++>>正文


C++ Database::GetWorldRegistration方法代码示例

本文整理汇总了C++中Database::GetWorldRegistration方法的典型用法代码示例。如果您正苦于以下问题:C++ Database::GetWorldRegistration方法的具体用法?C++ Database::GetWorldRegistration怎么用?C++ Database::GetWorldRegistration使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Database的用法示例。


在下文中一共展示了Database::GetWorldRegistration方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Handle_NewLSInfo


//.........这里部分代码省略.........
	}

	server_type = i->servertype;
	logged_in = true;

	if (db.LoadServerSettings("options", "reject_duplicate_servers") == "TRUE")
	{
		if(server.SM->ServerExists(long_name, short_name, this))
		{
			server_log->Log(log_world_error, "World tried to login but there already exists a server that has that name.");
			return;
		}
	}
	else
	{
		if(server.SM->ServerExists(long_name, short_name, this))
		{
			server_log->Log(log_world_error, "World tried to login but there already exists a server that has that name.");
			server.SM->DestroyServerByName(long_name, short_name, this);
		}
	}

	if (db.LoadServerSettings("options", "unregistered_allowed") == "FALSE")
	{
		if(account_name.size() > 0 && account_password.size() > 0)
		{
			unsigned int s_id = 0;
			unsigned int s_list_type = 0;
			unsigned int s_trusted = 0;
			string s_desc;
			string s_list_desc;
			string s_acct_name;
			string s_acct_pass;
			if(db.GetWorldRegistration(s_id, s_desc, s_trusted, s_list_type, s_acct_name, s_acct_pass, long_name, short_name))
			{
				if(s_acct_name.size() == 0 || s_acct_pass.size() == 0)
				{
					server_log->Log(log_world, "Server %s(%s) successfully logged into account that had no user/password requirement.",
						long_name.c_str(), short_name.c_str());
					authorized = true;
					SetRuntimeID(s_id);
					server_list_type = s_list_type;
					desc = s_desc;
				}
				else if(s_acct_name.compare(account_name) == 0 && s_acct_pass.compare(account_password) == 0)
				{
					server_log->Log(log_world, "Server %s(%s) successfully logged in.",
						long_name.c_str(), short_name.c_str());
					authorized = true;
					SetRuntimeID(s_id);
					server_list_type = s_list_type;
					desc = s_desc;
					if(s_trusted)
					{
						server_log->Log(log_network_trace, "ServerOP_LSAccountUpdate sent to world");
						trusted = true;
						ServerPacket *outapp = new ServerPacket(ServerOP_LSAccountUpdate, 0);
						connection->SendPacket(outapp);
					}
				}
				else
				{
					server_log->Log(log_world, "Server %s(%s) attempted to log in but account and password did not match the entry in the database, and only"
						" registered servers are allowed.", long_name.c_str(), short_name.c_str());
					return;
				}
开发者ID:jcon321,项目名称:Server,代码行数:67,代码来源:world_server.cpp


注:本文中的Database::GetWorldRegistration方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。