亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? private messaging tutorial.txt

?? * first open client.cpp and search for that USER_MSG_INTERCEPT(TeamInfo) over it u add this
?? TXT
字號:
Private Messaging by: Ltfxguy 

// Add This under your IRC stuff ( in client.cpp) 
_________________________________________________ 

//PM window 
// irc 
vector<string> MessageHistoryLines(40); 
string MessageEditLine; 
vector<string> MessageLines(100); 
int PM_Active=0; 
int currentMessageAlpha=0; 
int MessageHistoryLinesSize = MessageHistoryLines.size(); 
int MessageHistoryLinesPos = 0; 
______________________________________________________________ 

// Add This under you menu border stuff ( in client.cpp) 
__________________________________________________ 

void messageBorder(int x,int y,int w, int h) 
{ 
oglSubtractive = true; 
gEngfuncs.pfnFillRGBA( x-6, y-6, w+12, 1 , 0, 0, 0, 255 ); 
gEngfuncs.pfnFillRGBA( x-6, y-6, 1, h+12 , 0, 0, 0, 255 ); 
gEngfuncs.pfnFillRGBA( x-6, y+h+5, w+12, 1 , 0, 0, 0, 255 ); 

gEngfuncs.pfnFillRGBA( x-1, y-1, w+2, 1 , 0, 0, 0, 255 ); 
gEngfuncs.pfnFillRGBA( x-1, y-1, 1, h+2 , 0, 0, 0, 255 ); 
gEngfuncs.pfnFillRGBA( x-1, y+h+1, w+2, 1 , 0, 0, 0, 255 ); 

gEngfuncs.pfnFillRGBA( x-2, y-2, w+4, 1 , 64, 64, 64, 255 ); 
gEngfuncs.pfnFillRGBA( x-2, y-2, 1, h+4 , 64, 64, 64, 255 ); 
gEngfuncs.pfnFillRGBA( x-5, y+h+4, w+10, 1 , 64, 64, 64, 255 ); 


gEngfuncs.pfnFillRGBA( x-4, y-4, w+8, 2 , 128, 128, 128, 255 ); 
gEngfuncs.pfnFillRGBA( x-4, y-4, 2, h+8 , 128, 128, 128, 255 ); 
gEngfuncs.pfnFillRGBA( x-4, y+h+2, w+8, 2 , 128, 128, 128, 255 ); 

oglSubtractive = false; 
gEngfuncs.pfnFillRGBA( x-5, y-5, w+10, 1 , 255, 255, 255, 255 ); 
gEngfuncs.pfnFillRGBA( x-5, y-5, 1, h+10 , 255, 255, 255, 255 ); 
gEngfuncs.pfnFillRGBA( x-2, y+h+1, w+8, 1 , 255, 255, 255, 255 ); 

oglSubtractive = true; 
gEngfuncs.pfnFillRGBA( x+w+6, y-6, 1, h+12 , 0, 0, 0, 255 ); 
gEngfuncs.pfnFillRGBA( x+w+1, y-1, 1, h+2 , 0, 0, 0, 255 ); 
gEngfuncs.pfnFillRGBA( x+w+2, y-2, 1, h+4 , 64, 64, 64, 255 ); 
gEngfuncs.pfnFillRGBA( x+w+3, y-4, 2, h+6 , 128, 128, 128, 255 ); 
oglSubtractive = false; 
gEngfuncs.pfnFillRGBA( x+w+5, y-5, 1, h+10 , 255, 255, 255, 255 ); 
} 
__________________________________________________________________________ 

// Add This under you IRC_echo stuff ( in client.cpp) 
______________________________________________________ 

void PMMessage(const char *fmt, ... ) 
{ 
RF_TRY 

va_list va_alist; 
char buffer[256]; 

va_start (va_alist, fmt); 
_vsnprintf (buffer, sizeof(buffer), fmt, va_alist); 
va_end (va_alist); 

// echo + scroll up: 
PM_Echo(buffer); 
RF_CATCH( 
} 
void PM_Echo(const char* message) 
{ 
for(int i=MessageLines.size()-1;i>0;i--) 
{ 
MessageLines[i]=MessageLines[i-1]; 
} 
MessageLines[0] = message; 
} 
____________________________________________________________________________ 

// Add this somewhere in HudDrawInfoTexts 
_____________________________________________________________ 

if(cvar.messenger) 
{ 
PM_Echo(" ][:Private Messages:][ "); 
PM_Echo(" "); 
PM_Echo(gHudMessage5[indexRedirect[0]]); 
PM_Echo(gHudMessage5[indexRedirect[1]]); 
PM_Echo(gHudMessage5[indexRedirect[2]]); 
PM_Echo(gHudMessage5[indexRedirect[3]]); 
} 
_______________________________________________________________ 

// Then Register the cvar 
_______________________________________________________________________________ 

// Next Add This under your IRC console code 
__________________________________________________ 

//============== PM Window =============== 
void drawMessage() 
{ 
// background with alpha fade effect 
ColorEntry messageBackground = *colorList.get(21); 
ColorEntry messageBord = *colorList.get(21); 
ColorEntry* c1 = colorList.get(21); // 33 
ColorEntry* c2 = colorList.get(21); // 34 
if( currentMessageAlpha != messageBackground.a ) 
{ 
for(int i=0;i<cvar.con_fadespeed;i++) 
{ 
if(currentMessageAlpha>messageBackground.a) --currentMessageAlpha; 
else ++currentMessageAlpha; 
} 
} 
messageBackground.a = currentMessageAlpha; 
//tintArea(cvar.con_x,cvar.con_y,cvar.con_w,cvar.con_h,&conBackground); 
tintArea2(cvar.mes_x,cvar.mes_y,cvar.mes_w,cvar.mes_h,c1,c2); 
messageBorder(cvar.mes_x,cvar.mes_y,cvar.mes_w,cvar.mes_h); 

int mesx = cvar.mes_x+3; 
int mesy = cvar.mes_y+cvar.mes_h-14; 
string messageString = (("[PM] "+MessageEditLine)); 
if(blinkPhase){ messageString+="|"; } 

ColorEntry* clr; 
clr = colorList.get(20); // "con_edit" 
gEngfuncs.pfnDrawSetTextColor(clr->onebased_r,clr->onebased_g,clr->onebased_b); 
gEngfuncs.pfnDrawConsoleString(mesx,mesy,const_cast<char*>(messageString.c_str())); 

int currentMessageLine=0; 
for(; 
{ 
mesy-=14; 
if(mesy<cvar.mes_y) break; 

string& curMessageLine = MessageLines[currentMessageLine]; 
if( curMessageLine[0]==']' ) clr = colorList.get(19); // "con_text2" 
else clr = colorList.get(1; // "con_text" 

gEngfuncs.pfnDrawSetTextColor(colorTags[curColorTag].onebased_r, 
colorTags[curColorTag].onebased_g, 
colorTags[curColorTag].onebased_b); 
gEngfuncs.pfnDrawConsoleString(mesx,mesy,const_cast<char*>(curMessageLine.c_str())); 

currentMessageLine++; 
if(currentMessageLine>=MessageLines.size()) break; 
} 
//SCREENINFO m_scrinfo; 
} 
______________________________________________________ 

// REgister all the cvars and stuff 
______________________________________ 

// Then Search For 
_____________________________ 

if (IRC_Active) { drawIRC (); } 
______________________________________________________________ 

// Right under that put this 
________________________________________ 

if (PM_Active) { drawMessage (); } 
________________________________________________________________________________________ 

// Then after you do that Look for you func_getmessages code // replace with this and you will have the MSN sound on 
__________________________________________________________________________________________________________________________ 

void func_getmessages() 
{ 
char* value; 
for(int ax=1;ax<32;ax++) 
{ 
if( cvar.pm_ignoreme && ax==me.ent->index ) ax++; 
value = (char*)gEngfuncs.PlayerInfo_ValueForKey( ax, "osh" ); 
if( value!=NULL && value[0]!=0 && cvar.pm_sound==1) 
{ 
cmd.exec("play sounds//pm.wav"); 
} 
if( value!=NULL && value[0]!=0) 
{ 
char message[64]; 
message[0] = 0; 
strcat( message , vPlayers[ax].entinfo.name ); 
strcat( message , ": " ); 
strcat( message , value ); 
gSetHudMessage5(message); 
} 
} 
} 
______________________________________________________________________________________________ 

// then under your // void CB_KeyManager_IRCType(char ch) \\ code // add this\\ 
____________________________________________________________________________________ 

void CB_KeyManager_MessageType(char ch) 
{ 
switch(ch) 
{ 
case -1: // backspace 
if(MessageEditLine.size()) { MessageEditLine.erase(MessageEditLine.size()-1); } 
break; 

case -2: // uparrow 
MessageEditLine = MessageHistoryLines[MessageHistoryLinesPos]; 
MessageHistoryLinesPos--; 
if(MessageHistoryLinesPos<0)MessageHistoryLinesPos = MessageHistoryLinesSize-1; 
break; 

case -3: // downarrow 
MessageHistoryLinesPos++; 
if(MessageHistoryLinesPos>=MessageHistoryLinesSize) MessageHistoryLinesPos = 0; 
MessageEditLine = MessageHistoryLines[MessageHistoryLinesPos]; 
break; 

case '\n':{ 
if(!MessageEditLine.empty()) 
{ 
string MessagescrollUpString = ("] "+MessageEditLine); 
PM_Echo( MessagescrollUpString.c_str() ); 
cmd.exec(const_cast<char*>( MessageEditLine.c_str() ) ); 

// submit command to history 
MessageHistoryLinesPos++; 
if(MessageHistoryLinesPos>=MessageHistoryLinesSize) MessageHistoryLinesPos = 0; 

MessageHistoryLines[MessageHistoryLinesPos] = MessageEditLine; 

MessageEditLine.erase(); 
} 
}break; 
default: 
MessageEditLine += ch; 
break; 
} 
} 
___________________________________________________________________________________________________________________________ 

// Then in the // keybindmanager.callback\\ stuff add this 
__________________________________________________________________________________ 

keyBindManager.CallBack_MessageType = CB_KeyManager_MessageType; 
__________________________________________________________________ 

// Then under your // void func_irc_toggle \\ code // add this 
_____________________________________________________________________ 

void func_pm_toggle() 
{ 
MessageEditLine.erase(); 
PM_Active=!PM_Active; 
if(!PM_Active) currentMessageAlpha=0; 
} 
_________________________________________________________________________________________ 

// Then in the // cmd.AddCommand \\ stuff put this 
___________________________________________________________ 

cmd.AddCommand("pm_toggle",func_pm_toggle); 
___________________________________________________________________________________________________________________ 




//\\//\\//\\ Now You Are Done With The Client.cpp //\\//\\//\\ Time To Move on to the Bind.cpp and Bind.h //\\//\\//\\ 




// In the bind.cpp look for this code // void IRCMessage(const char *fmt, ... ); \\ add this code below 
_________________________________________________________________________________________________________________ 

extern int PM_Active; 
void PMMessage(const char *fmt, ... ); 
___________________________________________ 

// Then after you are done adding that ( look for) .. 
__________________________________ 

if( IRC_Active && down ) 
{ 
if( !name[1] && name[0]!='~' ) return true; // alpha-numeric keys 
if( getConsoleExtraCode(scancode) ) return true; // extra keys 
} 
_____________________________________________ 

// Right Underneagh that put this 
_________________________________________________________ 

if( PM_Active && down ) 
{ 
if( !name[1] && name[0]!='~' ) return true; // alpha-numeric keys 
if( getConsoleExtraCode(scancode) ) return true; // extra keys 
} 
__________________________________________________________________________ 

// Then Look for // if( IRC_Active && down) \\ again ( and under that code ) ) put this ( 
_____________________________________________________________________________________________________ 

if( PM_Active && down) 
{ 
if( !keyname [1] && keyname [0]!='~' ) 
{ 
int code = keyname [0]; 
if( GetAsyncKeyState(VK_SHIFT) ) 
{ 
code = shiftRemap[code]; 
} 
if(CallBack_MessageType) CallBack_MessageType(code); 
return; 
} else { 
switch(scancode) 
{ 
case 127: // backspace 
if(CallBack_MessageType) CallBack_MessageType(-1); 
return; 
case 13: // enter 
if(CallBack_MessageType) CallBack_MessageType('\n'); 
return; 
case 32: // space 
if(CallBack_MessageType) CallBack_MessageType(' '); 
return; 
case 128: // uparrow 
if(CallBack_MessageType) CallBack_MessageType(-2); 
return; 
case 129: // downarrow 
if(CallBack_MessageType) CallBack_MessageType(-3); 
return; 
case 47: // '/' 
if(CallBack_MessageType) CallBack_MessageType('/'); 
} 
} 
} 
__________________________________________________________________________________________ 

// You Are now done with the bind.cpp // now time for the bind.h \\ YOUR ALMOST DONE !!   
__________________________________________________________________________________________________________ 

// Ok the bind.h , there is really not much to add , just a couple of identifyers 
________________________________________________________________________________________ 

// Look for // typedef void (*CallBack_IRCTypeFunc)(char c); \\ and right under that put this 
___________________________________________________________________________________________________ 

typedef void (*CallBack_MessageTypeFunc)(char c); 
____________________________________________________ 

// Then a few lines down you should see the irctypefunc again \\ this time right under that put this 
________________________________________________________________________________________________________ 

CallBack_MessageTypeFunc CallBack_MessageType; 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久麻豆一区二区| 亚洲色图视频网| www.性欧美| 五月激情六月综合| 国产精品另类一区| 欧美成人精品高清在线播放| 91激情在线视频| 国产剧情一区二区| 日韩国产欧美视频| 国产乱妇无码大片在线观看| 婷婷成人综合网| 亚洲乱码国产乱码精品精可以看| 精品国产欧美一区二区| 欧美丰满嫩嫩电影| 日本韩国欧美三级| 成人久久视频在线观看| 精品一区二区三区在线播放视频 | 日本视频一区二区| 亚洲色图都市小说| 久久精品视频一区二区| 欧美一区二区三区免费观看视频| 色偷偷88欧美精品久久久| 国产一区二区中文字幕| 久久精品久久精品| 日本亚洲免费观看| 日韩精品一级中文字幕精品视频免费观看| 国产精品不卡在线| 欧美国产一区二区在线观看| 精品女同一区二区| 日韩女优av电影| 日韩一区二区三区视频| 欧美精品日日鲁夜夜添| 在线精品视频一区二区| 97久久精品人人做人人爽| 国产盗摄女厕一区二区三区| 久久99精品国产.久久久久| 欧美aaa在线| 日本特黄久久久高潮| 日韩中文欧美在线| 日本免费新一区视频| 亚洲v精品v日韩v欧美v专区| 亚洲国产精品久久艾草纯爱| 亚洲香蕉伊在人在线观| 五月婷婷激情综合网| 午夜精品久久久久久久99水蜜桃 | 国产成人精品三级麻豆| 国产精品99久久久久久久vr| 国产一区二区毛片| 国产福利电影一区二区三区| 丁香啪啪综合成人亚洲小说| 成人精品国产福利| 色综合久久天天| 欧美日韩久久不卡| 日韩免费电影网站| 久久夜色精品国产噜噜av| 久久久综合视频| 国产亚洲精品福利| 亚洲欧美综合另类在线卡通| 一区二区三区丝袜| 视频在线观看国产精品| 日韩中文字幕麻豆| 国产精品综合在线视频| av不卡免费在线观看| 欧美系列亚洲系列| 亚洲午夜私人影院| 免费看精品久久片| 国产成a人无v码亚洲福利| 91麻豆文化传媒在线观看| 欧美日韩成人在线一区| ww亚洲ww在线观看国产| 中文字幕亚洲电影| 婷婷夜色潮精品综合在线| 国精产品一区一区三区mba视频| 成人h精品动漫一区二区三区| 欧美亚洲动漫另类| 精品国产一区二区三区av性色| 中文一区二区在线观看| 亚洲一区欧美一区| 国产一区二区不卡老阿姨| 色噜噜狠狠色综合中国| 日韩精品中文字幕一区二区三区| 国产精品伦一区| 偷拍自拍另类欧美| 高清免费成人av| 91精品国产色综合久久ai换脸 | 日韩av电影一区| 东方欧美亚洲色图在线| 欧美日韩成人激情| 欧美国产视频在线| 日韩不卡一二三区| aaa国产一区| 日韩欧美国产一区二区在线播放 | 精品国产91亚洲一区二区三区婷婷| 久久先锋影音av鲁色资源网| 最近日韩中文字幕| 麻豆精品视频在线观看免费| 99re热视频这里只精品 | 亚洲另类春色校园小说| 久久超碰97中文字幕| 在线免费观看成人短视频| 国产亚洲综合色| 偷拍一区二区三区四区| 色噜噜狠狠色综合欧洲selulu| www国产亚洲精品久久麻豆| 亚洲高清在线精品| 99综合电影在线视频| 精品国产亚洲在线| 日本强好片久久久久久aaa| 91浏览器打开| 国产精品污网站| 久久国产剧场电影| 欧美乱熟臀69xxxxxx| 亚洲伦理在线精品| 丰满少妇久久久久久久| 欧美成人a∨高清免费观看| 午夜欧美大尺度福利影院在线看| 91在线视频官网| 国产欧美一区视频| 国产精品一区免费在线观看| 日韩欧美中文字幕精品| 婷婷国产v国产偷v亚洲高清| 欧美中文字幕一二三区视频| 国产精品国产三级国产专播品爱网| 激情文学综合网| 欧美zozozo| 免费观看30秒视频久久| 一区二区三区欧美日韩| 91在线一区二区三区| 国产精品美女一区二区在线观看| 国产精品99久久久久久有的能看| 26uuu精品一区二区| 激情亚洲综合在线| wwwwww.欧美系列| 国产精品综合在线视频| 久久精品综合网| 粉嫩aⅴ一区二区三区四区| 国产日韩精品视频一区| 成人性视频网站| 国产精品私房写真福利视频| 国产91在线观看丝袜| 国产精品美女一区二区三区| 国产suv精品一区二区6| 国产精品高清亚洲| 色综合天天性综合| 亚洲一区二区精品视频| 欧美色倩网站大全免费| 午夜精品福利在线| 欧美哺乳videos| 国产高清不卡一区| 中文字幕一区视频| 91高清视频免费看| 午夜电影一区二区| 日韩精品一区二区三区中文不卡 | 麻豆中文一区二区| 精品久久久久久久一区二区蜜臀| 韩国精品免费视频| 中文字幕免费不卡| 91视频一区二区三区| 亚洲一区二区在线播放相泽| 欧美日韩国产另类不卡| 黄网站免费久久| 中文一区二区完整视频在线观看| 成人免费视频caoporn| 亚洲男人的天堂网| 欧美福利视频导航| 国产毛片一区二区| 一二三四社区欧美黄| 91精品国产欧美一区二区18 | 99精品久久久久久| 亚洲成人av在线电影| 精品粉嫩超白一线天av| 99久久精品国产导航| 婷婷国产在线综合| 欧美激情一区在线| 欧美日韩一区二区三区四区五区 | 经典三级视频一区| 国产精品日韩成人| 欧美人体做爰大胆视频| 国产乱码一区二区三区| 一区二区三区国产精华| 欧美精品一区男女天堂| 色哟哟精品一区| 国产美女精品一区二区三区| 亚洲精品伦理在线| 精品国产精品网麻豆系列| a美女胸又www黄视频久久| 免费成人在线观看视频| 1024成人网色www| 日韩无一区二区| 91久久奴性调教| 韩国v欧美v日本v亚洲v| 亚洲在线观看免费| 国产欧美精品一区| 91麻豆精品国产无毒不卡在线观看| 国产凹凸在线观看一区二区| 天堂资源在线中文精品| 中文字幕一区二区在线观看 | 欧美电影免费观看完整版| 色www精品视频在线观看| 国产福利一区二区|