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

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

?? npc_roomadminnew.c

?? 石器時代8.0服務(wù)端完整源代碼。可以直接編譯
?? C
?? 第 1 頁 / 共 3 頁
字號:
#include "version.h"

#include <stdio.h>
#include <time.h>
#include <string.h>
#include <unistd.h>
#include <math.h>

#include "object.h"
#include "char.h"
#include "char_base.h"
#include "char_data.h"
#include "net.h"
#include "npcutil.h"
#include "handletime.h"
#include "readmap.h"
#include "npc_roomadminnew.h"
#include "npc_door.h"


/* 
 * 尕  遣支今氏 By Kawata
 *
 * 酷    汔卞  凳及啃踏五  仄兇  互鍍中午  丹及匹踏五卅云仄
 */


enum{
	/* 左□弁撲亦件  區(qū) */
	CHAR_WORKINT_RANGE     = CHAR_NPCWORKINT1,
	/* 戚及蠡濠凜棉 */
	CHAR_WORKINT_NEXTTIME  = CHAR_NPCWORKINT2,
	/*   憎迕>蠡濠"坌蟆= */
	CHAR_WORKINT_PRINTCLOSETIME = CHAR_NPCWORKINT3,
	/*   盒腹綢仄兇  尥 */
	CHAR_WORKINT_SEARCHROOMTIME = CHAR_NPCWORKINT4,
	
};
enum {
	/* 憤坌及  蟆 */
	CHAR_WORKCHAR_MYNAME   = CHAR_NPCWORKCHAR1,
	/* 戚及  瘀 */
	CHAR_WORKCHAR_NEXTROOM = CHAR_NPCWORKCHAR2,
	
};

/* 仿件平件弘  憎      迕伐□弁*/
enum {
	/* 棟  諦及  蟆 */
	CHAR_WORKCHAR_ADMNAME = CHAR_NPCWORKCHAR1,
};


/* 犯□正白央奶伙毛傘  允月犯奴伊弁玄伉[ls2/src/lss 井日及鍬覆隙爛 */
#define     NPC_ROOMADMINNEW_DATADIR        "roomadmin/"
/* 犯□正白央奶伙及傀艦閡 */
#define     NPC_ROOMADMINNEW_EXTENSION      ".room"
/* 仿件平件弘犯□正白央奶伙及傀艦閡    件禾仿伉   */
#define     NPC_ROOMADMINNEW_RANKING_EXTENSION      ".score"
#define     NPC_ROOMADMINNEW_RANKING_EXTENSION_TMP  ".score.tmp"
/*   嫖  誑樊仿件平件弘白央奶伙 */
#define     NPC_ROOMADMINNEW_SCOREFILE      ".score"
/* 蠡戶濠曰"坌蟆井日丟永本□斥 */
#define     NPC_ROOMADMINNEW_PRINTCLOSETIME_DEFAULT     5

#define     NPC_ROOMADMINNEW_MSG_CLOSE_BEFORE       \
"%s %s %s的活動,截止日%d分前。"
#define     NPC_ROOMADMINNEW_MSG_CLOSE              \
"。。。已截止。"
#define     NPC_ROOMADMINNEW_MSG_NONE               \
"很可惜本次沒有人獲得房間的擁有權(quán)。"
#define     NPC_ROOMADMINNEW_MSG_CONGRATULATION     \
"恭喜您!%s獲得房間的所有權(quán)!%s的金錢全部被徵收了。%s請向管理員詢問房間暗號。"
#define     NPC_ROOMADMINNEW_MSG_PRINTPASSWD_NONE    \
"由於你未持有房間因此沒有暗號。"
#define     NPC_ROOMADMINNEW_MSG_DSPPASSWD1          \
"你的房間是 %s %s %s。"
#define     NPC_ROOMADMINNEW_MSG_DSPPASSWD2          \
"房間的暗號是 「%s 」。只要在對著門說話時在與尾加上「...」,別人就看不見了唷!"
#define     NPC_ROOMADMINNEW_MSG_DSPNEXTAUCTION_NONE        \
"本日的活動結(jié)束。"
#define     NPC_ROOMADMINNEW_MSG_DSPNEXTAUCTION1     \
"接下來的房間是 %s %s %s。"
#define     NPC_ROOMADMINNEW_MSG_DSPNEXTAUCTION2     \
"截止日是 %d:%d 。到截止日為止還有%2d小時%02d分。"
#define     NPC_ROOMADMINNEW_MSG_DSPNEXTAUCTION3     \
"最低得標(biāo)金額是 %s 。"

#define     NPC_ROOMADMINNEW_MSG_RANKING_INFO       \
"這是高額得標(biāo)者排行榜。"
#define     NPC_ROOMADMINNEW_MSG_RANKING            \
"Rank %2d:%4d/%02d/%02d %8d GOLD %s%s "

/* 仇及NPC及丟永本□斥縉 */
#define     NPC_ROOMADMINNEW_MSGCOLOR           CHAR_COLORWHITE
#define     NPC_RANKING_MSGCOLOR                CHAR_COLORWHITE
#define		NPC_ROOMADMINNEW_2WEEK				60*60*24*14

static void NPC_RoomAdminNew_DspNextAuction( int meindex, int talkerindex);
static void NPC_RoomAdminNew_DspRoomPasswd( int meindex, int adminindex, int talkerindex);
static BOOL NPC_RoomAdminNew_SetNextAuction( int meindex);
static BOOL NPC_RoomAdminNew_WriteDataFile( int meindex, int pindex, char *roomname,
											char *passwd, BOOL flg);
static void NPC_RoomAdminNew_CreatePasswd( char *passwd, int passlen);
static void NPC_RoomAdminNew_SendMsgThisFloor( int index, char *buff);
static int NPC_RoomAdminNew_SearchPlayerHasMostMoney( int meindex);
static void NPC_RoomAdminNew_CloseProc( int meindex);
static int NPC_RoomAdminNew_WriteScoreFile( int meindex, int pindex);
static void NPC_RoomAdminNew_ReadScoreFile( int meindex, int talkerindex, 
											char *admname);

/************************************************
 * 賡渝質(zhì)  
 ************************************************/
BOOL NPC_RoomAdminNewInit( int meindex )
{
	int     i;
	char    buf[256];
	char    argstr[NPC_UTIL_GETARGSTR_BUFSIZE];
	
	/* 憤坌及棟喱及蟈  及玉失互請  曉互月引匹仇及NPC反綜岳今木卅中 */
	for( i = 3; ; i ++ ) {
		if( getStringFromIndexWithDelim(argstr, "|" , i , buf,sizeof(buf) )) {
			if( NPC_DoorSearchByName( buf) < 0 ) {
				print( "admin not created.在密碼門做好之前先等待。\n");
				return FALSE;
			}
		}
		else{ 
			break;
		}
	}
	
	NPC_Util_GetArgStr( meindex, argstr, sizeof( argstr));
	
	/* 賡渝祭質(zhì)   */
	
	/* type本永玄 */
	CHAR_setInt( meindex, CHAR_WHICHTYPE, CHAR_TYPEROOMADMIN);
	/*   躲  區(qū)潸   */
	getStringFromIndexWithDelim(argstr, "|" , 1 , buf,sizeof(buf) );
	CHAR_setWorkInt( meindex , CHAR_WORKINT_RANGE , atoi( buf ));
	/* 憤坌及  蟆潸   */
	if( !getStringFromIndexWithDelim(argstr, "|" , 2 , buf,sizeof(buf) )) {
		print( "arg err.admin not created.\n");
		return( FALSE);
	}
	CHAR_setWorkChar( meindex , CHAR_WORKCHAR_MYNAME , buf);
	
	/*   憎迕>蠡濠"坌蟆=賡渝祭 */
	CHAR_setWorkInt( meindex, CHAR_WORKINT_PRINTCLOSETIME, 0);
	
	/* 戚及  瘀午左□弁撲亦件釩瘍凜棉毛本永玄 */
	NPC_RoomAdminNew_SetNextAuction( meindex);
	
	return TRUE;
}
/************************************************
 * 伙□皿質(zhì)  
 * 裟太請仄  蘸反公氏卅卞    匹卅仁化手中中[
 * 匹手濮覆卞ㄠ坌    卞允月儀
 ************************************************/
void NPC_RoomAdminNewLoop( int meindex )
{
	int     hun;
	/* 手仄手釩瘍凜棉互瑁引勻化中卅井勻兇日潸  仄卅云允 */
	if( CHAR_getWorkInt( meindex, CHAR_WORKINT_NEXTTIME) == 0 ) {
		/* 蟆莢腹綢仄兇  互啜尹壬腹綢仄卅云允 */
		struct  tm      tm1,tm2;
		time_t          t;
		memcpy( &tm1, localtime( (time_t *)&NowTime.tv_sec), sizeof( tm1));
		t = CHAR_getWorkInt( meindex, CHAR_WORKINT_SEARCHROOMTIME);
		memcpy( &tm2, localtime( &t), 
								sizeof( tm2));
		if( tm1.tm_year != tm2.tm_year ||
			tm1.tm_mday != tm2.tm_mday ||
			tm1.tm_mon != tm2.tm_mon )
		{
			NPC_RoomAdminNew_SetNextAuction( meindex);
		}
		return;
	}
	
	hun = ceil((double)(CHAR_getWorkInt( meindex, CHAR_WORKINT_NEXTTIME) - 
		   NowTime.tv_sec) / 60.0);
	/* 手仄手及凜及啃卞hun互穴奶瓜旦及凜反ㄟ卞  允 */
	if( hun < 0 ) hun = 0;
	
	if( hun < NPC_ROOMADMINNEW_PRINTCLOSETIME_DEFAULT ) {
		/* 蠡戶濠曰嗤仁卞卅勻兇日>蠡戶濠曰"坌蟆匹允=午蛻歹允 */
		if( hun != CHAR_getWorkInt( meindex, CHAR_WORKINT_PRINTCLOSETIME)) {
			char    buff[256];
			if( hun != 0 ) {
				char    buf2[1024];
				char	msgbuff[16];
				char    argstr2[NPC_UTIL_GETARGSTR_BUFSIZE];
				int		doorindex;

				/*   盒樹  潸   */
				doorindex = NPC_DoorSearchByName( CHAR_getWorkChar( meindex, CHAR_WORKCHAR_NEXTROOM));
				NPC_Util_GetArgStr( doorindex, argstr2, sizeof( argstr2));
				getStringFromIndexWithDelim( argstr2, "|" , 9 , 
											 buf2,sizeof(buf2) );
				/*   盒樹  */
				if( strlen(CHAR_getChar( doorindex, CHAR_NAME) ) != 0 ) {
					strcpy( msgbuff, "號室");
				}
				else {
					msgbuff[0] = '\0';
				}
				/* >蠡戶濠曰"坌蟆匹允= */
				snprintf( buff, sizeof(buff), 
							NPC_ROOMADMINNEW_MSG_CLOSE_BEFORE, 
							buf2,
							CHAR_getChar( doorindex, CHAR_NAME),
							msgbuff,
							hun);
				
				CHAR_setWorkInt( meindex, CHAR_WORKINT_PRINTCLOSETIME, hun);
			}
			else {
				/* >蠡戶濠曰引仄兇= */
				strcpy( buff, NPC_ROOMADMINNEW_MSG_CLOSE);
				CHAR_setWorkInt( meindex, CHAR_WORKINT_PRINTCLOSETIME, 0);
			}
			/* 仇及白夫失卞中月諦蟈夠卞霜耨 */
			NPC_RoomAdminNew_SendMsgThisFloor( meindex, buff);
		}
	}
	/* 蠡戶濠勻兇凜及質(zhì)   */
	if( hun == 0 ) {
		NPC_RoomAdminNew_CloseProc( meindex);
	}
}

/************************************************
 *   仄井仃日木兇凜及質(zhì)  
 ************************************************/
void NPC_RoomAdminNewTalked( int meindex , int talkerindex , char *msg ,
							 int color )
{
	
	/* 皿伊奶乩□互玉失穴件及1弘伉永玉動  卅日  殺允月[ */
	if(NPC_Util_CharDistance( talkerindex, meindex ) > 1)return;
	
	/*   仄井仃日木兇諦互  盒毛歐曰化中兇日由旦伐□玉毛  憎允月 */
	/*NPC_RoomAdminNew_DspRoomPasswd( meindex, talkerindex);*/
	
	/* 戚莢釩瘍凜棉]  盒毛蛻丹 */
	NPC_RoomAdminNew_DspNextAuction( meindex, talkerindex);
}
/*-----------------------------------------------
 * 蠡戶濠日木兇凜及質(zhì)  
 *----------------------------------------------*/
static void NPC_RoomAdminNew_CloseProc( int meindex)
{
	int     pindex;
	char    buff[256];
	char    pname[32];
	int     failed = TRUE;
	
	/* 域  云嗯毛聶仁  勻化中月皿伊奶乩□毛繭允 */
	pindex = NPC_RoomAdminNew_SearchPlayerHasMostMoney( meindex);
	/* 竟癲樊失伉 */
	if( pindex != -1) {
		/* ㄠ莢匹  仃月伙□皿匹允 */
		while( 1) {
			char    passwd[9];
			int		doorindex;
			doorindex = NPC_DoorSearchByName( 
							CHAR_getWorkChar( meindex, CHAR_WORKCHAR_NEXTROOM));
			/* 由旦伐□玉毛戲岳允月 */
			NPC_RoomAdminNew_CreatePasswd( passwd, sizeof( passwd));
			/* 白央奶伙卞仇及諦及    平□]平乓仿  ]  盒  ]由旦毛踏五  戈 */
			if( NPC_RoomAdminNew_WriteDataFile( meindex, pindex,
							CHAR_getWorkChar( meindex, CHAR_WORKCHAR_NEXTROOM),
												passwd, 1)
				== FALSE) 
			{
				break;
			}
			/* 玉失卞由旦毛本永玄 */
			if( NPC_DoorSetPasswd( doorindex, passwd) == -1 ) {
				break;
			}
			/*   躲渝蜃毛本永玄 */
			CHAR_setWorkInt( doorindex, CHAR_WORKDOOREXPIRETIME, 
							CHAR_getWorkInt( meindex, CHAR_WORKINT_NEXTTIME)
							+ NPC_ROOMADMINNEW_2WEEK);
			/*   誑樊仿件平件弘民尼永弁↓白央奶伙踏五  心 */
			NPC_RoomAdminNew_WriteScoreFile( meindex, pindex);

			CHAR_setInt( pindex, CHAR_GOLD, 0);

			CHAR_send_P_StatusString( pindex , CHAR_P_STRING_GOLD);
			
			/* 云戶匹午丹″丟永本□斥 */
			strcpy( pname, CHAR_getChar( pindex, CHAR_NAME));
			snprintf( buff, sizeof(buff), 
						NPC_ROOMADMINNEW_MSG_CONGRATULATION, pname, pname, pname);
			failed = FALSE;
			break;
		}
	}
	
	/* 竟癲樊瓜撲引兇反質(zhì)  撩  及凜 */
	if( failed) {
		/* 白央奶伙井日仇及  盒及樹  毛壅允 */
		NPC_RoomAdminNew_WriteDataFile( meindex, -1,
					CHAR_getWorkChar( meindex, CHAR_WORKCHAR_NEXTROOM),
										NULL, 0);
		/* 竟癲樊反中引六氏丟永本□斥 */
		snprintf( buff, sizeof(buff), 
				NPC_ROOMADMINNEW_MSG_NONE);
	}
	/* 仇及白夫失卞中月諦蟈夠卞霜耨 */
	NPC_RoomAdminNew_SendMsgThisFloor( meindex, buff);
	
	/* 戚及  瘀午左□弁撲亦件釩瘍凜棉毛本永玄 */
	NPC_RoomAdminNew_SetNextAuction( meindex);
	
}
/*-----------------------------------------------
 * 域  云嗯毛聶仁  勻化中月皿伊奶乩□毛繭允
 *----------------------------------------------*/
static int NPC_RoomAdminNew_SearchPlayerHasMostMoney( int meindex)
{
	int     i,j, range;
	int     fl,x,y, gold;
	int     doorindex;
	int     topindex;
	
	fl = CHAR_getInt( meindex, CHAR_FLOOR);
	x  = CHAR_getInt( meindex, CHAR_X);
	y  = CHAR_getInt( meindex, CHAR_Y);
	range = CHAR_getWorkInt( meindex , CHAR_WORKINT_RANGE);
	topindex = -1;
	
	/*   盒及  蟆井日  斕  誑嗯喊毛譬屯月 */
	doorindex = NPC_DoorSearchByName( CHAR_getWorkChar( meindex, 
														CHAR_WORKCHAR_NEXTROOM));
	gold = atoi( CHAR_getWorkChar( doorindex, CHAR_WORKDOORGOLDLIMIT));
	/*   區(qū)  卞中月平乓仿及醒毛譬屯月 */
	for( i = x-range ; i <= x+range ; i++ ){
		for( j = y-range ; j <= y+range ; j ++ ){
			OBJECT  object;
			for( object = MAP_getTopObj( fl, i,j); object; 
				 object = NEXT_OBJECT(object) ) 
			{
				int objindex = GET_OBJINDEX( object);
				if( OBJECT_getType(objindex) == OBJTYPE_CHARA ){
					int     index;
					index = OBJECT_getIndex(objindex);
					if( CHAR_getInt( index,
								 CHAR_WHICHTYPE ) == CHAR_TYPEPLAYER )
					{
						if( CHAR_getInt( index, CHAR_GOLD) >= gold ) {
							if( topindex == -1 ) {
								topindex =  index;
							}
							else {
								/* 玄永皿及諦午云嗯  勝 */
								int nowgold,topgold;
								nowgold = CHAR_getInt( index, CHAR_GOLD );
								topgold = CHAR_getInt( topindex, CHAR_GOLD);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产欧美一区二区精品性色| 精品一区二区三区在线视频| 日韩av不卡一区二区| 国产一区二区91| 欧美在线小视频| 国产欧美1区2区3区| 日本成人在线看| 日本韩国欧美三级| 国产偷国产偷亚洲高清人白洁 | 日韩国产高清影视| caoporm超碰国产精品| 欧美大黄免费观看| 天天操天天综合网| 色综合久久99| 国产精品国产a级| 国内成人自拍视频| 日韩久久免费av| 五月婷婷久久丁香| 欧美中文字幕久久| 最近中文字幕一区二区三区| 国产成人午夜电影网| 精品捆绑美女sm三区| 奇米888四色在线精品| 91久久一区二区| 一区二区三区四区不卡视频| www.亚洲精品| 国产精品美女久久久久久久网站| 国产精品一区二区在线播放 | 中文字幕欧美区| 国产精品香蕉一区二区三区| 欧美tickling挠脚心丨vk| 视频一区二区不卡| 日韩一区二区在线看| 日韩国产欧美在线播放| 91精品国模一区二区三区| 免费看黄色91| 精品国产91乱码一区二区三区| 另类小说欧美激情| 26uuu国产在线精品一区二区| 免费视频最近日韩| 日韩片之四级片| 国产一区二区不卡| 成人免费在线播放视频| av中文字幕不卡| 亚洲国产日韩精品| 欧美电影免费提供在线观看| 国产精品主播直播| 亚洲欧美日韩系列| 欧美日韩三级一区| 久久99热国产| 日韩伦理免费电影| 欧美亚州韩日在线看免费版国语版| 悠悠色在线精品| 欧美喷潮久久久xxxxx| 无码av中文一区二区三区桃花岛| 日韩欧美一区二区不卡| 久久精品99国产精品日本| 久久综合久久综合久久综合| 国产激情一区二区三区桃花岛亚洲| 精品成人一区二区三区四区| 极品少妇一区二区| 中文字幕国产一区| 在线免费观看日本欧美| 亚洲综合999| 91精品国产黑色紧身裤美女| 免费欧美日韩国产三级电影| 久久久www免费人成精品| 成人h动漫精品一区二区| 亚洲激情自拍偷拍| 欧美精品色综合| 国产一区二区三区黄视频| 欧美mv日韩mv国产网站| 国精产品一区一区三区mba视频| 久久噜噜亚洲综合| 一本色道亚洲精品aⅴ| 亚洲不卡av一区二区三区| 精品少妇一区二区三区在线视频| 成人免费av资源| 亚洲福利一区二区| 久久久久久影视| 在线一区二区视频| 日韩精品成人一区二区在线| 精品国产a毛片| 色999日韩国产欧美一区二区| 日韩高清在线电影| 国产精品理伦片| 日韩视频一区二区在线观看| av在线一区二区| 美女精品自拍一二三四| 国产精品私人影院| 欧美本精品男人aⅴ天堂| 91日韩在线专区| 精品一区二区三区在线播放视频| 亚洲乱码中文字幕| 久久精品亚洲麻豆av一区二区| 色婷婷久久99综合精品jk白丝| 久久av中文字幕片| 亚洲一卡二卡三卡四卡五卡| 欧美日韩高清在线播放| 91亚洲永久精品| 国产成人福利片| 免费观看日韩电影| 亚洲国产精品一区二区久久| 国产精品无遮挡| 日韩美女视频在线| 91精品国产一区二区三区蜜臀| av不卡在线播放| 国产精品一色哟哟哟| 久久国产夜色精品鲁鲁99| 亚洲网友自拍偷拍| 亚洲色图欧洲色图婷婷| 制服.丝袜.亚洲.中文.综合| 9191国产精品| 欧美美女bb生活片| 91久久精品一区二区| 99久久综合99久久综合网站| 激情久久久久久久久久久久久久久久| 亚洲一二三四在线观看| 亚洲欧美日韩在线播放| 国产精品狼人久久影院观看方式| 久久久久国产精品厨房| 欧美精品一区视频| 欧美xxxxx牲另类人与| 777精品伊人久久久久大香线蕉| 在线观看91视频| 在线观看成人免费视频| 欧美性一二三区| 国产aⅴ精品一区二区三区色成熟| 粉嫩欧美一区二区三区高清影视 | 亚洲一区二区三区国产| 亚洲欧美视频在线观看| 亚洲欧洲性图库| 中文字幕综合网| 国产精品乱人伦| 亚洲一区二区三区四区五区中文| 亚洲精品乱码久久久久久黑人| 1000部国产精品成人观看| 中文字幕一区二区视频| 亚洲人成在线播放网站岛国| 亚洲精品伦理在线| 亚洲成av人**亚洲成av**| 久草热8精品视频在线观看| 狠狠色伊人亚洲综合成人| 国产乱码精品一区二区三区五月婷| 国产乱码精品一区二区三区av| 国产99久久久久久免费看农村| 大美女一区二区三区| 国产成人免费视频网站| 欧美在线免费播放| 欧美老肥妇做.爰bbww视频| 欧美精品xxxxbbbb| 久久综合给合久久狠狠狠97色69| 久久精品一区蜜桃臀影院| 国产精品久久久久四虎| 久久精品亚洲精品国产欧美| 亚洲国产精品人人做人人爽| 日日骚欧美日韩| 国产美女精品在线| 色av成人天堂桃色av| 日韩欧美一级二级三级久久久| 国产欧美日韩精品一区| 夜夜嗨av一区二区三区中文字幕| 日韩经典中文字幕一区| 国产成人综合网| 欧美日韩大陆一区二区| 亚洲精品一线二线三线| 亚洲视频一区二区在线| 日本女人一区二区三区| 激情综合网激情| 欧美裸体一区二区三区| 中文字幕欧美国产| 日日骚欧美日韩| 99这里都是精品| 日韩免费电影一区| 亚洲国产欧美在线| 懂色av一区二区三区免费看| 欧美日韩视频第一区| 国产欧美日韩另类一区| 午夜精品福利久久久| 久久99日本精品| 欧美高清性hdvideosex| 国产精品丝袜久久久久久app| 性久久久久久久| 丁香六月综合激情| 欧美电影免费观看高清完整版 | 国产成人综合网| 欧美性猛片aaaaaaa做受| 国产人成一区二区三区影院| 日本成人在线网站| 欧美调教femdomvk| 国产精品高清亚洲| 亚洲激情网站免费观看| 精品一区二区三区不卡| 精品视频在线视频| 国产精品久久久久久一区二区三区| 人人超碰91尤物精品国产| 色婷婷精品大在线视频| 亚洲欧洲成人自拍| 成人黄色av网站在线| 国产亚洲自拍一区|