📄 npc_sysinfo.c
字号:
snprintf( buff2, sizeof(buff2), "No.%d:%s", i, buff); CHAR_talkToCli( tindex, meindex, buff2, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); } }}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static void NPC_Sysinfo_Msg_SendNo( int meindex, int tindex, char *msg){ char buff[32]; char msgbuf[512]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { int num; num = atoi( buff); if( num >=1 && num < NPC_SYSINFO_MSGMAX ) { if( NPC_Sysinfo_GetMsg( meindex, "sendno", msgbuf, sizeof( msgbuf), num) != NULL ) { NPC_Sysinfo_SendMsgToAll( meindex, msgbuf); } } }}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static void NPC_Sysinfo_Msg_SendMsg( int meindex, int tindex, char *msg){ char buff[512]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { NPC_Sysinfo_SendMsgToAll( meindex, buff); }}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static void NPC_Sysinfo_Msg_Msgcol( int meindex, int tindex, char *msg){ char buff[64]; typedef struct { int color; char str[10]; }SYSINFO_COLSET; SYSINFO_COLSET colset[] = { { 249, "red"}, { 250, "green"}, { 251, "yellow"}, { 252, "blue"}, { 253, "purple"}, { 254, "cyan"}, { 255, "white"}, }; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { int i; for( i = 0; i < 7; i ++ ) { if( strstr( buff, colset[i].str) != NULL ) { CHAR_setWorkInt( meindex, CHAR_WORK_MSGCOLOR, colset[i].color); CHAR_talkToCli( tindex, meindex, "已改变讯息的颜色。", CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); break; } } }}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static char *NPC_Sysinfo_GetMsg( int meindex, char *msgindexstr, char *out,int outlen, int num ){ char argstr[NPC_UTIL_GETARGSTR_BUFSIZE]; char *work; char *buff; char *cret = NULL; int worklen; worklen = strlen( msgindexstr)+3; work = (char *)calloc( 1, worklen * sizeof( char)); buff = (char *)calloc( 1, outlen * sizeof( char)); NPC_Util_GetArgStr( meindex, argstr, sizeof( argstr)); snprintf( work, worklen, "%s%d", msgindexstr, num); if( NPC_Util_GetStrFromStrWithDelim( argstr, work,buff, outlen) != NULL ) { strcpy( out, buff); cret = out; } free( work); free( buff); return( cret);}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static void NPC_Sysinfo_Msg_Shutdown( int meindex, int tindex, char *msg){ char buff[10]; int hun; NPC_Sysinfo_SendMsg( meindex, tindex, NPC_SYSINFO_ARG_SHUTDOWN_MSG); /* 凛棉本永玄 */ CHAR_setWorkInt( meindex, CHAR_WORK_SHUTDOWNTIME, NowTime.tv_sec); if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { hun = atoi( buff); if( hun <= 0 ) { hun = NPC_SYSINFO_SHUTDOWNLIMIT_DEFAULT; } } else { hun = NPC_SYSINFO_SHUTDOWNLIMIT_DEFAULT; } CHAR_setWorkInt( meindex, CHAR_WORK_SHUTDOWNLIMIT, hun); CHAR_setWorkInt( meindex, CHAR_WORK_SHUTDOWNDSPTIME,0);}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static void NPC_Sysinfo_SendMsg( int meindex, int pindex, int tblnum){ char argstr[NPC_UTIL_GETARGSTR_BUFSIZE]; char buff[128]; NPC_Util_GetArgStr( meindex, argstr, sizeof( argstr)); if( NPC_Util_GetStrFromStrWithDelim( argstr, msgtable[tblnum].arg,buff, sizeof( buff)) == NULL ) { strcpy( buff, msgtable[tblnum].defMsg); } if( buff[0] != '\0' ) { CHAR_talkToCli( pindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }}/*------------------------------------------------------------------------ *----------------------------------------------------------------------*/static void NPC_Sysinfo_SendMsgToAll( int meindex, char *msg){ int i; int playernum = CHAR_getPlayerMaxNum(); for( i = 0 ; i < playernum ; i++) { if( CHAR_getCharUse(i) != FALSE ) { CHAR_talkToCli( i, meindex, msg, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); } }}/* 蝈衬平乓仿毛 NO_SEE 卞允月井升丹井 */static void NPC_Sysinfo_All_NoSee( int meindex, int tindex, char *msg ){ char buff[256]; buff[0] = buff[1] = 0; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { if( strncmp( buff, "on", strlen( buff ) ) == 0 ){ all_nosee = 1; snprintf( buff, sizeof( buff), "已开启all_nosee 。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else if( strncmp( buff, "off", strlen( buff ) ) == 0 ){ all_nosee = 0; snprintf( buff, sizeof( buff), "已关闭all_nosee 。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); } }else if( all_nosee == 0 ){ snprintf( buff, sizeof( buff), "all_nosee关闭着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else{ snprintf( buff, sizeof( buff), "all_nosee开启着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }}/* 蝈衬平乓仿毛 NO_BODY 卞允月井升丹井 */static void NPC_Sysinfo_All_NoBody( int meindex, int tindex, char *msg ){ char buff[256]; buff[0] = buff[1] = 0; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { if( strncmp( buff, "on", strlen( buff ) ) == 0 ){ all_nobody = 1; snprintf( buff, sizeof( buff), "已开启all_nobody 。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else if( strncmp( buff, "off", strlen( buff ) ) == 0 ){ all_nobody = 0; snprintf( buff, sizeof( buff), "已关闭all_nobody 。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); } }else if( all_nobody == 0 ){ snprintf( buff, sizeof( buff), "all_nobody 关闭着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else{ snprintf( buff, sizeof( buff), "all_nobody 开启着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }}static void NPC_Sysinfo_Move_Num( int meindex, int tindex, char *msg ){ char buff[256]; int work; buff[0] = buff[1] = 0; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { work = atoi( buff ); if( work <= 0 ) { work = 1000; /* 赝癫 */ } EnemyMoveNum = work; snprintf( buff, sizeof( buff), "让敌人同时%d动作。", EnemyMoveNum ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else{ snprintf( buff, sizeof( buff), "现在敌人同时在进行%d动作。", EnemyMoveNum ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }}static void NPC_Sysinfo_Born_Num( int meindex, int tindex, char *msg ){ char buff[256]; int work; buff[0] = buff[1] = 0; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { work = atoi( buff ); if( work <= 0 ) { work = 2; /* 赝癫 */ } one_loop_born = work; snprintf( buff, sizeof( buff), "敌人同时派出最高的%d。", one_loop_born ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else{ snprintf( buff, sizeof( buff), "现在敌人同时派出最高的%d。", one_loop_born ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }}static void NPC_Sysinfo_Enemy_State( int meindex, int tindex, char *msg ){ char buff[256]; if( all_nobody == 0 ){ snprintf( buff, sizeof( buff), "allnobody 关闭着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else{ snprintf( buff, sizeof( buff), "allnobody 开启着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); } if( all_nosee == 0 ){ snprintf( buff, sizeof( buff), "allnosee 关闭着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }else{ snprintf( buff, sizeof( buff), "allnosee 开启着。" ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); } snprintf( buff, sizeof( buff), "bornnum 现在敌人同时派出最高的%d。", one_loop_born ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); snprintf( buff, sizeof( buff), "movenum 现在敌人同时在进行%d动作。", EnemyMoveNum ); CHAR_talkToCli( tindex, meindex, buff, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}static void NPC_Sysinfo_SetWalkTime( int meindex, int tindex, char *msg){ int interval; char msgbuf[256]; char buff[256]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { interval = atoi( buff); if( interval > 0 ) { setWalksendinterval( (unsigned)interval); } } snprintf( msgbuf, sizeof(msgbuf),"WalkInterval = %d 氂秒",getWalksendinterval()); CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR)); }static void NPC_Sysinfo_SetCATime( int meindex, int tindex, char *msg){ int interval; char msgbuf[256]; char buff[256]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { interval = atoi( buff); if( interval > 0 ) { setCAsendinterval_ms( (unsigned)interval); } } snprintf( msgbuf, sizeof(msgbuf),"CAsendInterval = %d 氂秒", getCAsendinterval_ms()); CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}static void NPC_Sysinfo_SetCDTime( int meindex, int tindex, char *msg){ int interval; char msgbuf[256]; char buff[256]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { interval = atoi( buff); if( interval > 0 ) { setCDsendinterval_ms( (unsigned)interval); } } snprintf( msgbuf, sizeof(msgbuf),"CDsendInterval = %d 氂秒", getCDsendinterval_ms()); CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}static void NPC_Sysinfo_SetOneloop( int meindex, int tindex, char *msg){ int interval; char msgbuf[256]; char buff[256]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { interval = atoi( buff); if( interval > 0 ) { setOnelooptime_ms( (unsigned)interval); } } snprintf( msgbuf, sizeof(msgbuf),"Onelooptime = %d 氂秒", getOnelooptime_ms()); CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}static void NPC_Sysinfo_TitleRestart( int meindex, int tindex, char *msg){ int rc; char msgbuf[256]; rc = TITLE_reinitTitleName(); if( rc) { snprintf( msgbuf, sizeof(msgbuf),"读取完毕。" ); } else { snprintf( msgbuf, sizeof(msgbuf),"发生ERROR。" ); } CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}static void NPC_Sysinfo_SetSaacwrite( int meindex, int tindex, char *msg){ int interval; char msgbuf[256]; char buff[256]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { interval = atoi( buff); if( interval > 0 ) { setSaacwritenum( (unsigned)interval); } } snprintf( msgbuf, sizeof(msgbuf),"Saacwritenum = %d ",getSaacwritenum()); CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}static void NPC_Sysinfo_SetSaacread( int meindex, int tindex, char *msg){ int interval; char msgbuf[256]; char buff[256]; if( getStringFromIndexWithDelim( msg, " ", 2, buff, sizeof( buff)) == TRUE ) { interval = atoi( buff); if( interval > 0 ) { setSaacreadnum( (unsigned)interval); } } snprintf( msgbuf, sizeof(msgbuf),"Saacreadnum = %d ",getSaacreadnum()); CHAR_talkToCli( tindex, meindex, msgbuf, CHAR_getWorkInt( meindex, CHAR_WORK_MSGCOLOR));}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -