?? chatmagic.c.bak
字號(hào):
#include "version.h"#include <stdio.h>#include <string.h>#include <ctype.h>#include <math.h>#include <malloc.h>#include <time.h>#include <stdlib.h>#include "common.h"#include "char.h"#include "util.h"#include "buf.h"#include "npcutil.h"#include "char_base.h"#include "object.h"#include "char_data.h"#include "handletime.h"#include "chatmagic.h"#include "configfile.h"#include "readmap.h"#include "map_deal.h"#include "lssproto_serv.h"#include "log.h"#include "battle.h"#include "pet.h"#include "enemy.h"#include "encount.h"#include "magic_base.h"#include "magic.h"#include "pet_skill.h"#include "pet_event.h"#include "item_gen.h"#include "mclient.h"#include "npc_eventaction.h"#include "map_warppoint.h"#include "npc_manorsman.h"#include "net.h"#include "saacproto_cli.h"#include "npc_scheduleman.h"#include "trade.h"#include "npccreate.h"#ifdef _DEATH_CONTEND#include "deathcontend.h"#endif#ifdef _CHAR_PROFESSION // WON ADD 人物職業(yè)#include "profession_skill.h"#endif#include "char_talk.h"// WON ADD 修正族長(zhǎng)問(wèn)題#include "family.h"#include "petmail.h"#ifdef _WON_TEST // WON TEST #include "unpipc.h"#endif// WON ADD 重新讀取ITEMSET.TXT#include "item.h"#include "npc_raceman.h"extern tagRidePetTable ridePetTable[146];extern int *pWorkAttackPower;extern time_t initTime;int *pWorkAttackPower = NULL;struct GMINFO gminfo[GMMAXNUM];#define LSGENWORKINGBUFFER 65536*4void CHAR_CHAT_DEBUG_warp( int charindex , char *message ){ char token[100]; int fl,x,y; easyGetTokenFromString( message , 1 , token, sizeof(token)); fl = atoi( token ); easyGetTokenFromString( message , 2 , token , sizeof(token)); x = atoi( token ); easyGetTokenFromString( message , 3 , token , sizeof(token)); y = atoi( token ); CHAR_warpToSpecificPoint(charindex, fl, x, y);}void CHAR_CHAT_DEBUG_hp( int charindex , char *message ){ CHAR_setInt( charindex , CHAR_HP,atoi( message ) ); CHAR_complianceParameter( charindex ); CHAR_send_P_StatusString( charindex , CHAR_P_STRING_HP);}void CHAR_CHAT_DEBUG_setmp( int charindex , char *message ){ int i; char setmp[15]; char cdkey[CDKEYLEN]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , setmp, sizeof(setmp)); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); if(strlen(cdkey)>0){ for(i=0;i<playernum;i++){ if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_MAXMP, atoi( setmp ) ); CHAR_setInt( i , CHAR_MP, atoi( setmp ) ); CHAR_complianceParameter( i ); CHAR_send_P_StatusString( i , CHAR_P_STRING_MP); sprintf( token, "[GM]%s把你的MP設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),(int)atoi(setmp)/100); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的MP的設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),(int)atoi(setmp)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_MAXMP, atoi( setmp ) ); CHAR_setInt( charindex , CHAR_MP, atoi( setmp ) ); CHAR_complianceParameter( charindex ); CHAR_send_P_StatusString( charindex , CHAR_P_STRING_MP); sprintf( token, "MP設(shè)置為%d!",(int)atoi(setmp)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}void CHAR_CHAT_DEBUG_mp( int charindex , char *message ){ int Mymp; CHAR_setInt( charindex , CHAR_MP, atoi( message ) ); Mymp = CHAR_getWorkInt( charindex , CHAR_WORKMAXMP); if( Mymp > CHAR_getWorkInt( charindex , CHAR_WORKMAXMP) ) CHAR_setInt( charindex , CHAR_MP, CHAR_getWorkInt( charindex , CHAR_WORKMAXMP)); CHAR_complianceParameter( charindex ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( charindex , CHAR_P_STRING_MP);}void CHAR_CHAT_DEBUG_str( int charindex , char *message ){ int i; char str[15]; char cdkey[CDKEYLEN]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , str, sizeof(str)); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); if(strlen(cdkey)>0){ for(i=0;i<playernum;i++){ if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_STR,atoi( str ) ); CHAR_complianceParameter( i ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( i ,CHAR_P_STRING_STR|CHAR_P_STRING_MAXHP|CHAR_P_STRING_ATK); sprintf( token, "[GM]%s把你的腕力設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),(int)atoi(str)/100); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的腕力設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),(int)atoi(str)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_STR,atoi( str ) ); CHAR_complianceParameter( charindex ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( charindex ,CHAR_P_STRING_STR|CHAR_P_STRING_MAXHP|CHAR_P_STRING_ATK); sprintf( token, "腕力設(shè)置為%d!",(int)atoi(str)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}void CHAR_CHAT_DEBUG_tgh( int charindex , char *message ){ int i; char tgh[15]; char cdkey[CDKEYLEN]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , tgh, sizeof(tgh)); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); if(strlen(cdkey)>0){ for(i=0;i<playernum;i++){ if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_TOUGH,atoi( tgh ) ); CHAR_complianceParameter( i ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( i ,CHAR_P_STRING_TOUGH|CHAR_P_STRING_MAXHP|CHAR_P_STRING_DEF); sprintf( token, "[GM]%s把你的耐力設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),(int)atoi(tgh)/100); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的耐力設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),(int)atoi(tgh)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_TOUGH,atoi( tgh ) ); CHAR_complianceParameter( charindex ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( charindex ,CHAR_P_STRING_TOUGH|CHAR_P_STRING_MAXHP|CHAR_P_STRING_DEF); sprintf( token, "耐力設(shè)置為%d!",(int)atoi(tgh)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}void CHAR_CHAT_DEBUG_dex( int charindex , char *message ){ int i; char dex[15]; char cdkey[CDKEYLEN]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , dex, sizeof(dex)); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); if(strlen(cdkey)>0){ for(i=0;i<playernum;i++) { if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_DEX,atoi( dex ) ); CHAR_complianceParameter( i ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( i ,CHAR_P_STRING_DEX|CHAR_P_STRING_MAXHP|CHAR_P_STRING_ATK|CHAR_P_STRING_QUICK); sprintf( token, "[GM]%s把你的敏捷設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),(int)atoi(dex)/100); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的敏捷設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),(int)atoi(dex)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_DEX,atoi( dex ) ); CHAR_complianceParameter( charindex ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( charindex ,CHAR_P_STRING_DEX|CHAR_P_STRING_MAXHP|CHAR_P_STRING_ATK|CHAR_P_STRING_QUICK); sprintf( token, "敏捷設(shè)置為%d!",(int)atoi(dex)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}void CHAR_CHAT_DEBUG_vital( int charindex , char *message ){ int i; char vital[15]; char cdkey[CDKEYLEN]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , vital, sizeof(vital)); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); if(strlen(cdkey)>0){ for(i=0;i<playernum;i++){ if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_VITAL,atoi( vital ) ); CHAR_complianceParameter( i ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( i ,CHAR_P_STRING_VITAL|CHAR_P_STRING_MAXHP|CHAR_P_STRING_DEF); sprintf( token, "[GM]%s把你的體力設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),(int)atoi(vital)/100); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的體力設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),(int)atoi(vital)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_VITAL,atoi( vital ) ); CHAR_complianceParameter( charindex ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( charindex ,CHAR_P_STRING_VITAL|CHAR_P_STRING_MAXHP|CHAR_P_STRING_DEF); sprintf( token, "體力設(shè)置為%d!",(int)atoi(vital)/100); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}void CHAR_CHAT_DEBUG_luck( int charindex , char *message ){ int i; char buf[64]; int luck; char cdkey[CDKEYLEN]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , buf, sizeof(buf)); luck=atoi(buf); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); if(luck<1)luck=1; if(luck>5)luck=5; if(strlen(cdkey)>0){ for(i=0;i<playernum;i++){ if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_LUCK,luck); CHAR_complianceParameter( i ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( i , CHAR_P_STRING_LUCK); sprintf( token, "[GM]%s把你的運(yùn)氣設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),luck); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的運(yùn)氣設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),luck); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_LUCK,luck); CHAR_complianceParameter( charindex ); //CHAR_sendStatusString( charindex , "P"); CHAR_send_P_StatusString( charindex , CHAR_P_STRING_LUCK); sprintf( token, "運(yùn)氣設(shè)置為%d!",luck); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}void CHAR_CHAT_DEBUG_gold( int charindex , char *message ){ int i, MaxGold, money; char cdkey[CDKEYLEN]; char buf[64]; char token[255]; int playernum = CHAR_getPlayerMaxNum(); easyGetTokenFromString( message , 1 , buf, sizeof(buf)); money = atoi( buf ); easyGetTokenFromString( message , 2 , cdkey, sizeof(cdkey)); MaxGold = CHAR_getMaxHaveGold( charindex); if( money > MaxGold ) money = MaxGold; if(strlen(cdkey)>0){ for(i=0;i<playernum;i++){ if(CHAR_CHECKINDEX(i) == FALSE) continue; if(!strcmp( CHAR_getChar( i, CHAR_CDKEY), cdkey)) { break; } } if (i>=playernum) { CHAR_talkToCli( charindex, -1, "此賬號(hào)不在線~", CHAR_COLORYELLOW ); return; } CHAR_setInt( i , CHAR_GOLD , money ); CHAR_complianceParameter( i ); CHAR_send_P_StatusString( i , CHAR_P_STRING_GOLD); sprintf( token, "[GM]%s把你的金錢設(shè)置為%d!", CHAR_getChar( charindex, CHAR_NAME),money); CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW ); sprintf( token, "玩家%s的金錢設(shè)置為%d!", CHAR_getChar( i, CHAR_NAME),money); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }else{ CHAR_setInt( charindex , CHAR_GOLD , money ); CHAR_complianceParameter( charindex ); CHAR_send_P_StatusString( charindex , CHAR_P_STRING_GOLD); sprintf( token, "金錢設(shè)置為%d!",money); CHAR_talkToCli( charindex, -1,token, CHAR_COLORYELLOW ); }}#ifdef _TEST_DROPITEMSvoid CHAR_CHAT_DEBUG_dropmypet( int charindex, char *message ){ char buf[256]; int petID, x, y, floor, objindex, petindex, count=0; int i, j, k, petarray, cLeve=1; if( getStringFromIndexWithDelim( message, " ", 1, buf, sizeof( buf)) == FALSE ) return; petID = atoi( buf); if( getStringFromIndexWithDelim( message, " ", 2, buf, sizeof( buf)) != FALSE ){ cLeve = atoi( buf); } floor = CHAR_getInt( charindex, CHAR_FLOOR); x = CHAR_getInt( charindex, CHAR_X); y = CHAR_getInt( charindex, CHAR_Y); if( getStringFromIndexWithDelim( message, " ", 3, buf, sizeof( buf)) != FALSE ){ floor = atoi( buf); } if( getStringFromIndexWithDelim( message, " ", 4, buf, sizeof( buf)) != FALSE ){ x = atoi( buf); } if( getStringFromIndexWithDelim( message, " ", 5, buf, sizeof( buf)) != FALSE ){ y = atoi( buf); } for( i=(x-3); i<(x+3); i++) { for( j=(y-3); j<(y+3); j++) {
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -