⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 help2.c

📁 C实现的MUD,对大家基本入门网络游戏很有帮助!
💻 C
📖 第 1 页 / 共 3 页
字号:
	if(!k=atoi(arg))	{		view7(0);		return;	}		text=explode(file,"\n");	if(k>sizeof(text))	{		view7(0);		return;	}	k--;	write(YEL"您要修改(1)名称或者(2)链接?"NOR);	input_to("view8",text[k],k);	return;}	void view8(string arg,string str,int k){			string *w=explode(str,"==@==");	switch(arg) {		case "1":		write(HIC"请输入名称:"NOR);		input_to("view9",str,k,1);		return;		case "2":		if(file_size(w[1])<0&&strsrch(w[1],"subdir")>-1)		{			write(HIG"这是一个目录,不是链接文档!\n"NOR);                         	view7(0);			return;		}		write(HIC"请输入链接文档:"NOR);		input_to("view9",str,k,0);		return;	}	view7(0);	return;}void view9(string arg,string str,int i,int j){	string file=read_file(find_file()),	*text=explode(file,"\n"),	*w=explode(str,"==@==");	if(j) w[0]=arg;	else {		if(file_size(arg)<0)		{			write(HIR"没有这个文档!\n"NOR);			view8("2",str,i);			return;		}		w[1]=arg;	}	text[i]=implode(w,"==@==");	file=implode(text,"\n");	write_file(find_file(),file,1);	write("OK!\n");	display();	return;}void view3(){	string file,*text,str=find_file(),*w,msg,*t;	int i,j;	file=read_file(str);	if(!file) 	{		write("资料采集中......\n");		return;	}		text=explode(file,"\n");	if(!j=sizeof(text)) 	{		write("资料采集中......\n");		return;	}		t=({});	file="";	i=0;	while(sizeof(text))		{		w=explode(text[0],"==@==");		file+=sprintf(HIC" ("BBLU +HIG"%2d"NOR +HIC")"HIW"【%|16s】"NOR,i+1,w[0]);		if(i%3==2) file+="\n";		text-=({text[0]});		i++;	}	file+="\n";	write(file);			return;}void view4(){	string file,*w,*text,str=find_file();	int i,j,k,v;	file=read_file(str);	if(!file) 	{		write("资料采集中......\n");		return;	}		text=explode(file,"\n");	if(!j=sizeof(text)) 	{		write("资料采集中......\n");		return;	}		for(file="",i=0;i<j;i++)		{		w=explode(text[i],"==@==");		file+=sprintf(HIC" (%2d)"HIW"【%|16s】%s"NOR,i+1,w[0],w[1]);		if(i%2==1) file+="\n";	}	file+="\n";	write(file);			return;}void view5(string arg){	int k=atoi(arg),i,j;	string *w,*text,file,t=this_player()->query_temp("select");	file=find_file();	file=read_file(file);	if(!file) {		write(HIR"没有链接文件!\n"NOR);		display();		return;	}	if(arg=="q"||arg=="Q")	{		write(HIC"返回!\n"NOR);		display();		return;	}	if(!k)	{		write(HIG"请输入你要查看的内容:"NOR);		input_to("view5");		return;	}	text=explode(file,"\n");	if(j=sizeof(text)<k-1)	{		write(HIG"没有这个文件!\n"NOR);		write(HIG"请输入你要查看的内容:"NOR);		input_to("view5");		return;	}	k--;	w=explode(text[k],"==@==");		file=read_file(w[1]);	if(file) {			        start_help(file,this_object());	        return;	}	t=t+"/"+w[1];	if(file_size(DIR+t+".h")<0)	{		write(HIG"没有这个文件!\n"NOR);		write(HIG"请输入你要查看的内容:"NOR);		input_to("view5");		return;	}		this_player()->set_temp("select",t);	display();	return;	}void delfile(string arg){	int k=atoi(arg),v;	string *text,*w,str=find_file(),file=read_file(str),t;			if(arg=="q"||arg=="Q")	{		display();		return;	}		if(k<1)	{		write(HIC"你要删除第几号链接:"NOR);		input_to("delfile");		return;		}	text=explode(file,"\n");	if(v=sizeof(text)<k)	{		write(HIG"没有这个链接!\n");		write(HIC"你要删除第几号链接:"NOR);		input_to("delfile");		return;		}		--k;	w=explode(text[k],"==@==");	text-=({text[k]});		file=implode(text,"\n");	write_file(str,file,1);	t=replace_string(find_file(),".h","");	t=t+"/"+w[1]+".h";	if(rm(t))	{	}	write("OK!\n");	display();	return;}			varargs void display(object ob){	int i;	object me=this_player();	string v,t=me->query_temp("select");	if(!ob) ob=this_object();	if(v=me->query_temp("memer"))	{		i=me->query(v);		view_main_k();		view1();		write(view_msg(i,ob));		view_main_1();		write(YEL "\r请输入您的选择:"NOR);	     		input_to((:confirm_p_choice:),ob);     		return;	}		if(t=="leaveword")	{		view6();		write(YEL "\r请输入您的选择:"NOR);	     		input_to((:confirm_l_choice:),this_player());		return;	}	view_main();	view3();	view_main_1();	write(BRED +HIC"(B)"NOR +BRED"返回 "NOR);	if(wiz_level(WIZLEVEL)<=wiz_level(me))	write(BRED +HIC"  (A)"NOR+BRED"加入 "HIC+BRED"(C)"NOR+BRED"修改 "HIC+BRED"(D)"NOR	+BRED"删除 "HIC+BRED"(S)"NOR+BRED"查看 "HIC+BRED"(M)"NOR+BRED"新建"NOR);	write("\n");	write(YEL "\r请输入您的选择:"NOR);		input_to((:confirm_choice:),this_player());	}	private void confirm_choice(string arg){	object me=this_player();		string t=me->query_temp("select");	string *text;	int k=atoi(arg);	int p;	     		if(k>0) 	{		view5(arg);		return;	}     	switch(arg)     	{     		case "b":     		text=explode(t,"/");     		if(sizeof(text)<2)     		{     			main(me,0);     			return;     		}     		text-=({text[sizeof(text)-1]});     		t=implode(text,"/");     		me->set_temp("select",t);     		display();     		return;     		     		break;     		case "c":     		view7(0);     		return;     		break;		case "a":		if(wiz_level(me)<wiz_level(WIZLEVEL))		{			write(HIR"你的权限不足,不能修改这里的档案!\n");			return;		}		write(HIC"请输入链接名称:"NOR);		input_to("getname1");		return;			break;		case "d":		if(wiz_level(me)<wiz_level(WIZLEVEL))		{			write(HIR"你的权限不足,不能修改这里的档案!\n");			return;		}		write(HIC"你要删除第几号链接:"NOR"(“Q”取消)");		input_to("delfile");		return;			break;				case "s":		view_main();		view4();		view_main_1();		write(BRED +HIC"(B)"NOR +BRED"返回 "NOR);		if(wiz_level(WIZLEVEL)<=wiz_level(me))		write(BRED +HIC"  (A)"NOR+BRED"加入 "HIC+BRED"(C)"NOR+BRED"修改 "HIC+BRED"(D)"NOR		+BRED"删除 "HIC+BRED"(S)"NOR+BRED"查看 "HIC+BRED"(M)"NOR+BRED"新建"NOR);		write("\n");		write(YEL "\r请输入您的选择:"NOR);			input_to((:confirm_choice:),me);			return;		break;		case "m":		if(wiz_level(me)<wiz_level(WIZLEVEL))		{			write(HIR"你的权限不足,不能修改这里的档案!\n");			return;		}		write(HIC"请输入目录名称:"NOR);		input_to("getname3");		return;	}	display();	return;}void view6(){	int i,j,k;	string *file,name,str="",msg;	object ob;	view_main();	this_player()->delete_temp("memer");	if(file_size(BOARDCENTER)>-1)	{		str=read_file(BOARDCENTER);		write(str);			}	else {			file=get_dir(BOARD+"*.c");			for(i=0;i<sizeof(file);i++)		{						if(!ob=find_object(BOARD+file[i]))			ob=load_object(BOARD+file[i]);			if(!ob||!ob->query("board_id"))			continue;			name=ob->query("name");							name=replace_string(name,"留言板","");			name=replace_string(name,"留言簿","");			name=replace_string(name,"留言册","");			name=replace_string(name,"弟子","");			name=replace_string(name,"报告","");			name=replace_string(name,"留言","");			if(strlen(name)>16)			name=name[0..15];			destruct(ob);			msg=sprintf(" 『"HIC +BBLU+"%2d"NOR+"』"+HIW+"【%|16s】"NOR,i+1,name);					str+=msg;			write(msg);			++j;			if(j==3) 			{				j=0;				write("\n");				str+="\n";			}			}  if(j==3) {			write("\n");			str+="\n";		}				str+=sprintf(" 『"HIC +BBLU+"%2s"NOR+"』"+HIW+"【%|16s】\n"NOR,"B","返回主菜单");				printf(" 『"HIC +BBLU+"%2s"NOR+"』"+HIW+"【%|16s】\n"NOR,"B","返回主菜单");			write_file(BOARDCENTER,str,1);	}			view_main_1();		input_to((:confirm_k_choice:),this_player());		return;}private void confirm_k_choice(string arg){	int k=atoi(arg);	string *file=get_dir(BOARD+"*.c"),dir;	object ob;	if(arg=="b")		{		main(this_player(),0);     		return;       	}     	else if(!k)     	{     		write(HIC"请输入您的选择:"NOR);     		input_to((:confirm_k_choice:),this_player());			return;	}	--k;	dir=BOARD+file[k];	if(!ob=find_object(dir))	ob=load_object(dir);	if(!ob||!ob->query("board_id"))	{		write(HIC"没有这个留言板!\n请输入您的选择:"NOR);     		input_to((:confirm_k_choice:),this_player());				return;	}	ob->restore();	this_player()->set_temp("memer","post/"+file[k]);	display(ob);	return;}void getname3(string arg){		int k;	string dir,t=this_player()->query_temp("select"),	*text,msg,*w,file=read_file(find_file());	if(!file) file="";	if(!arg||arg=="")	{		write(HIC"请输入目录名称:"NOR);		input_to("getname3");		return;	}	if(arg=="q"||arg=="Q")	{		display();		return;	}			k=strlen(arg);	if(k<2||k>16)	{		write(HIG"目录名称字数必须在2到16个字元之间!\n"NOR);		write(HIC"请输入目录名称:"NOR);		input_to("getname3");		return;	}	dir=replace_string(find_file(),".h","");	mkdir(dir);	for(k=0;;k++)	{		t="subdir"+k;		msg=dir+"/"+t+".h";		if(file&&strsrch(file,t)<0)				rm(msg);				if(file_size(msg)>-1)		continue;		break;	}	file+=arg+"==@=="+t+"\n";	text=explode(file,"\n");	file="";	write_file(msg,"",1);	while(sizeof(text))	{		msg=text[0];			text-=({msg});				w=explode(msg,"==@==");		t=replace_string(find_file(),".h","");		t=t+"/"+w[1]+".h";		if(file_size(w[1])<0&&file_size(t)<0)		continue;		file+=msg+"\n";	}	write_file(find_file(),file,1);	write("OK!\n");	display();	return;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -