Exemplo n.º 1
0
void SQLClass::QuestUpdate(int aIndex,int iKillMob,int iMobCount,char *szQuestName,char *szQuestInfo)
{
	GOBJSTRUCT *gObj = (GOBJSTRUCT*)OBJECT_POINTER(aIndex);
	
	char szQueryBuff[1024];
	char szQueryBuff2[1024];
	char szQueryBuff3[1024];
	char szQueryBuff4[1024];
	char szQueryBuff5[1024];
	unsigned int MailMemoCount;
	unsigned int MailMemoTotal;
	unsigned int MemoGUID;

	wsprintfA(szQueryBuff, "SELECT MAX(MemoCount) AS MemoCount FROM T_FriendMain");
	PointsSql.Execute(szQueryBuff, &rsSql, true);
	rsSql.Fetch();
	MailMemoCount = rsSql.Values("MemoCount").ToIntegerU();
	rsSql.Close();

	MailMemoCount += 1;
	//Messages.outNormal(aIndex,"MailCount %d",MailMemoCount);

	wsprintfA(szQueryBuff2, "SELECT MemoTotal FROM T_FriendMain WHERE Name = '%s';", gObj->Name);
	PointsSql.Execute(szQueryBuff2, &rsSql, true);
	rsSql.Fetch();
	MailMemoTotal = rsSql.Values("MemoTotal").ToIntegerU();
	rsSql.Close();

	MailMemoTotal += 1;
	//Messages.outNormal(aIndex,"MemoTotal %d",MailMemoTotal);

	wsprintfA(szQueryBuff3, "SELECT GUID FROM T_FriendMain WHERE Name = '%s';", gObj->Name);
	PointsSql.Execute(szQueryBuff3, &rsSql, true);
	rsSql.Fetch();
	MemoGUID = rsSql.Values("GUID").ToIntegerU();
	rsSql.Close();
	//Messages.outNormal(aIndex,"GUID %d",MemoGUID);



	//Send Mail with Quest Info
	char QuestInfo[300];
	wsprintfA(QuestInfo,"Quest completed, go to Quest Manager for reward!");
	wsprintfA(szQueryBuff4, "INSERT INTO %s.dbo.T_FriendMail (MemoIndex,GUID,FriendName,wDate,Subject,bRead,Memo,Photo,Dir,Act) VALUES (%d,%d,'Manager',GetDate(),'%s',0,convert(varbinary(1000),'%s'),0x3006FF22222F1FFFC703FC0040F111110000,143,2)",m_SqlConn.sDatabase,MailMemoCount,MemoGUID,szQuestName,QuestInfo);
	PointsSql.Execute(szQueryBuff4, &rsSql, true);
	rsSql.Close();

	//Update Mail Count
	wsprintfA(szQueryBuff5, "UPDATE %s.dbo.T_FriendMain SET MemoCount='%d',MemoTotal='%d' WHERE Name='%s'",m_SqlConn.sDatabase,MailMemoCount,MailMemoTotal,gObj->Name);
	PointsSql.Execute(szQueryBuff5, &rsSql, true);
	rsSql.Close();
	
	//Update Mail
	FriendMemoListReq(aIndex);

}
Exemplo n.º 2
0
void SQLClass::SendMail(int aIndex,char *szQuestName,char *szQuestInfo)
{
	GOBJSTRUCT *gObj = (GOBJSTRUCT*)OBJECT_POINTER(aIndex);


	char szQueryBuff[1024];
	char szQueryBuff2[1024];
	char szQueryBuff3[1024];
	unsigned int MailMemoCount;
	unsigned int MailMemoTotal;
	unsigned int MemoGUID;


	wsprintfA(szQueryBuff, "SELECT MAX(MemoCount) AS MemoCount FROM T_FriendMain;");
	PointsSql.Execute(szQueryBuff, &rsSql, true);
	rsSql.Fetch();
	MailMemoCount = rsSql.Values("MemoCount").ToIntegerU();
	rsSql.Close();

	MailMemoCount += 1;


	wsprintfA(szQueryBuff2, "SELECT MemoTotal FROM T_FriendMain WHERE Name = '%s';", gObj->Name);
	PointsSql.Execute(szQueryBuff2, &rsSql, true);
	rsSql.Fetch();
	MailMemoTotal = rsSql.Values("MemoTotal").ToIntegerU();
	rsSql.Close();

	MailMemoTotal += 1;
	

	wsprintfA(szQueryBuff3, "SELECT GUID FROM T_FriendMain WHERE Name = '%s';", gObj->Name);
	PointsSql.Execute(szQueryBuff3, &rsSql, true);
	rsSql.Fetch();
	MemoGUID = rsSql.Values("GUID").ToIntegerU();
	rsSql.Close();
	


	char sSQL[2048] = {0};
	wsprintf(sSQL,"INSERT INTO %s.dbo.T_FriendMail (MemoIndex,GUID,FriendName,wDate,Subject,bRead,Memo,Photo,Dir,Act) VALUES (%d,%d,'Manager',GetDate(),'%s',0,convert(varbinary(1000),'%s'),0x3006FF22222F1FFFC703FC0040F111110000,143,2)",m_SqlConn.sDatabase,MailMemoCount,MemoGUID,szQuestName,szQuestInfo);
	PointsSql.Execute(sSQL, &rsSql, true);
	rsSql.Close();

	char sSQL2[1024] = {0};
	wsprintf(sSQL2,"UPDATE %s.dbo.T_FriendMain SET MemoCount='%d',MemoTotal='%d' WHERE Name='%s'", m_SqlConn.sDatabase,MailMemoCount,MailMemoTotal,gObj->Name);
	PointsSql.Execute(sSQL2, &rsSql, true);
	rsSql.Close();
	//Update Mail
	FriendMemoListReq(aIndex);
	Messages.outOlive(aIndex,"You have new Mail from system");

}
Exemplo n.º 3
0
void SQLClass::Init()
{

	bool bResult = false;
	char SQLConnect[]="..\\OptionsData\\Options.ini";

	if( GetPrivateProfileIntA("SQL", "SQLVersion", 2000, SQLConnect) == 2000 ) {
		strcpy_s(m_SqlConn.sDriver, "{SQL Server}");
	} 
	else {
		strcpy_s(m_SqlConn.sDriver, "{SQL Native Client}");
	}
	

	GetPrivateProfileStringA("SQL", "Host",	"",m_SqlConn.sServer,	sizeof(m_SqlConn.sServer),	SQLConnect);
	GetPrivateProfileStringA("SQL", "Database",		"",m_SqlConn.sDatabase,	sizeof(m_SqlConn.sDatabase),SQLConnect);
	GetPrivateProfileStringA("SQL", "User",	"",m_SqlConn.sUID,		sizeof(m_SqlConn.sUID),		SQLConnect);
	GetPrivateProfileStringA("SQL", "Password",	"",m_SqlConn.sPwd,		sizeof(m_SqlConn.sPwd),		SQLConnect);

	if( PointsSql.Connect(&m_SqlConn) == false ) 
	{
		MessageBoxA(NULL, "g_SQL::Init() Connect to SQL Server false \n chek your setting !", "SQL Error!", MB_OK|MB_ICONERROR);
		ExitProcess(0);
	} 
	else 
	{
		bResult = true;
	}

	if( bResult == true )
	{
		//Log.outInfo("SQL Manager Initialized");
	}
}
Exemplo n.º 4
0
short SQLClass::ReturnShort(char *szField,char *szQuery)
{
	PointsSql.Execute(szQuery, &rsSql, true);
	rsSql.Fetch();
	short value = rsSql.Values(szField).ToIntegerS();
	rsSql.Close();
	return value;
}
Exemplo n.º 5
0
char* SQLClass::ReturnString(char *szField,char *szQuery)
{
	static char szRetString[1024];
	PointsSql.Execute(szQuery, &rsSql, true);
	rsSql.Fetch();
	strcpy_s(szRetString,rsSql.Values(szField).ToString());
	rsSql.Close();
	return szRetString;

}
Exemplo n.º 6
0
bool SQL_Conectar()
{
		if(!MsSQL.Connect("{SQL Server}", sql_server, sql_user, sql_pass, sql_databasemu))
		{
		//	DebugInfo("SQL Server connect error",99);
			//MsgBox("SQL: No fue posible conectar al servidor.\n");
			MessageBox(NULL,"SQL: No fue posible conectar al servidor","OGC-Servers",MB_OK);
				::ExitProcess(0);
		//	return false;
		}
		return true;
}
Exemplo n.º 7
0
int SQL_DelChar(char* PlayerName)
{
	char sSQL[1024] = {0};
	wsprintf(sSQL,"SELECT %s FROM [%s].[dbo].[Character] where %s='%s'", sql_zscountcol,sql_databasemu,sql_zscountcolname,PlayerName);
	
	if(!MsSQL.Execute(sSQL, &MyRS))	{
		DebugInfo("Failed to execute the SQL statement",99);
		//MsgBox("Failed to execute the SQL statement.\n");
		MessageBox(NULL,"Failed to execute the SQL statement","OGC-Servers",MB_OK);
			::ExitProcess(0);
		return false;
	}

	char sBuf[1024] = {0};
	int iBufSz = 0;

	while(MyRS.Fetch()) {
		MyRS.sColumnEx(1,sBuf, sizeof(sBuf), &iBufSz);
	}
	
	int DelChar = atoi(sBuf);
	MyRS.Close();
	return DelChar;
}
Exemplo n.º 8
0
void SQLClass::DoQuery(char *szQuery)
{
	//PointsSql.Execute(szQuery);
	PointsSql.Execute(szQuery, &rsSql, true);
	rsSql.Close();
}