www.pudn.com > 3D_OnlineGame_Humen.rar > ComSay.cpp
//TellTalkShout #include "stdafx.h" #include "XMudClient.h" #include "CommandCheck.h" #include "MenuCreateNew.h" #include "CommandCheck.h" #include "MainScreen.h" extern rmfullglobals myglobs; extern int g_nGameState; extern SOCKET hLCltForRSvrSock; extern CListplayerlist; extern CMainScreen m_MainScreen; extern CStringList g_strlistChannel; extern CStringList g_strlistPlayerOnline; extern CStringList g_strlistOnline; extern CList equiprentlist; extern CStringList g_equiprentlist; void ComTellProc(CString szWho,CString szTell) { szTell = CString(SZTELLSOMEONE) + (" ") + szWho + (" ") + szTell; Send(hLCltForRSvrSock,szTell); } void ComSep() { CPlayerInfo * lpPlayerInfo; lpPlayerInfo = playerlist.GetHead(); CString szSendMsg; szSendMsg = SZSEP; if( lpPlayerInfo->m_iEFFJING > 0 ) { Send(hLCltForRSvrSock,szSendMsg); myglobs.g_bShowMessage = TRUE; } } void ComShoutProc(CString szShout) { CPlayerInfo * lpPlayerInfo; lpPlayerInfo = playerlist.GetHead(); CString parm = CString(" "); if(lpPlayerInfo->m_iEFFJING < 60){ szShout = CString(szNewColor) + "(200,10,0)"; szShout += parm; szShout += CString("你的精力不夠,喊的聲音不大,恐怕大家都聽不見!"); SendShowMsg((char *)(LPCSTR)szShout); return; } m_MainScreen.bDrawPlayInfo[0] = TRUE; m_MainScreen.bDrawPlayInfo[1] = TRUE; CString szSendMsg; szSendMsg = szShoutToAll + parm + ("[") + lpPlayerInfo->m_sCNAME + ("]大喊道:\t") + szShout;//shout里面的內容是由tab符號組成的 Send(hLCltForRSvrSock,szSendMsg); myglobs.g_bShowMessage = TRUE; } void ComGmShoutProc(CString szShout) { CPlayerInfo * lpPlayerInfo; lpPlayerInfo = playerlist.GetHead(); CString parm = CString(" "); m_MainScreen.bDrawPlayInfo[0] = TRUE; m_MainScreen.bDrawPlayInfo[1] = TRUE; CString szSendMsg; szSendMsg = szGmShout + parm + szShout; Send(hLCltForRSvrSock,szSendMsg); myglobs.g_bShowMessage = TRUE; } void GetShoutMsg(CString szShout) { int i,j; CString sWho,strtmp,sResult; CStringList strls; char *ps; CString parm; parm=CString("\t"); ps=strtok((char *)(LPCSTR)szShout,(const char*)parm); strls.AddTail(ps); for(;;) { ps=strtok(NULL,(const char*)parm); if(ps==NULL)break; strls.AddTail(ps); } j = strls.GetCount(); for(i=0;i