📄 help.c
字号:
// help.c#include "/doc/help.h"#include <ansi.h>inherit F_CLEAN_UP;string *default_search = DEFAULT_SEARCH_PATHS;void selete_main(string num,object ob);void help_new(string num,object ob);void help_map(string num,object ob);void quit_help(object ob);int main(object me, string arg){ int i; string file, map, *search; object ob; ob = this_player(); if( !arg ) { write(read_file("/help/help/topics")); return 1; } else if ( arg=="-old" ) { write(read_file("/help/help/topics")); return 1; } else if ( arg=="-new" ) { write(CLR); write(read_file("/help/help/topics1")); ob->set_temp("block_msg/all"); input_to("help_new",ob); return 1; } else if( arg == "map_color" ) { map = "【“海洋II”第一阶段总图】\n"NOR; map += NOR" 长白山\n"; map += HIC" ≈"NOR" "WHT"∧\n"NOR; map += NOR" 赫图阿拉"HIY"-"HIC"≈"HIY"-"HIG"∧"CYN"¤\n"; map += HIY" | "HIC"≈ "HIG"∧"NOR"天池\n"; map += NOR" 宁远 松花江\n"; map += NOR" 黑 "HIG"∧ "HIY"/\n"NOR; map += NOR" 木"HIW"@@@__"NOR" 平定州"HIY"-"NOR"北京 山海关 "HIB"≈≈\n"; map += WHT" ∧"NOR" 崖"HIG"∧∧"HIY"/ \ / "HIB"≈≈\n"; map += HIW" @@@__ "NOR"灵州 "HIG"∧∧"NOR" 恒"HIW"@@_"HIG"∧"HIY" /\/ "HIB"≈≈≈\n"; map += HIG" ∧∧ "HIY"| /"NOR" 山"HIG"∧∧∧ "HIY"| "HIB"≈≈"HIR"¤"NOR"神\n"; map += NOR" 灵鹫峰"HIG"∧∧ "YEL"≈≈≈≈"NOR"黄河 "HIY"+-"NOR"塘沽口"HIB"≈≈≈"NOR" 龙\n"; map += HIY" \"NOR" 星(天山) "HIY"|/\ "HIG"∧"NOR"嵩"HIY" | "HIB"≈≈≈"NOR"岛\n"; map += HIY" \"NOR"宿"HIG"∧∧"NOR" 永登 华 "HIW"@@_"HIG"∧"NOR"山"HIY" | "HIB"≈≈≈\n"NOR; map += NOR" 白驼 海 "HIG"∧∧"HIW"@@@__"NOR" 山 少"HIG"∧∧ "HIY"|\n"; map += WHT" ∧∧ "HIY"\ "HIG"∧∧"NOR" 村"HIY"-"HIG"∧"NOR" 林"HIY"---"NOR"汝州 "HIB"≈≈≈\n"; map += WHT" ∧∧"HIY";;∷∷"NOR" 伊犁 "HIY"|"HIW"@@@__"NOR"华 寺 "HIY"| "HIG"∧"NOR"泰 "HIB"≈≈≈\n"NOR; map += NOR" 大漠"HIY";;∷∷"NOR"戈壁 "HIY"\ + "HIG"∧∧"NOR"山 南阳 汉水 "HIW"@@@__"NOR"山 "HIB"≈≈≈\n"; map += WHT"∧ "HIY";;∷∷∷∷--* \ "HIG"∧"NOR" 中 "HIC"≈≈≈≈≈≈ "HIG"∧∧∧\n"; map += HIG" ∧∧"WHT"∧∧ ∧"HIG"∧∧ "HIY"/ \ "NOR"古墓"HIY" \ "HIW"@@__"NOR" 条 "HIY"| / "HIB"≈≈≈\n"; map += HIG" ∧∧∧∧ "HIY"/ \ "NOR"终"HIG"∧"HIY" \/"HIG"∧∧"NOR"山 "HIY"|"GRN"±±"NOR"丐帮 "HIY"/\n"NOR; map += NOR" 昆仑山 "HIY"/ \ "NOR"南"HIG"∧"HIY" | |"GRN"±±"NOR"竹林 "HIY"/\n"; map += HIY" /"NOR" 嘉峪关"HIY"--+-----"NOR"扬州"HIY"----* "HIB"≈≈≈\n"; map += WHT" ∧ ∧"HIG"∧∧ "HIY"|"NOR" 燕 "HIY"\ "HIB"≈≈≈\n"; map += HIW" @@@__"WHT"∧∧"HIG"∧∧ "HIY"|"NOR" 子 苏州"HIY"+"NOR"嘉兴"HIB"≈≈"HIM"¤"HIB"≈\n"; map += HIG" ∧∧"NOR"大雪山 "HIY"+---+ |"NOR" 坞"HIY"-+ | "HIB"≈≈≈\n"; map += HIG" ∧"HIY" / /\ \ |"GRN"ψψ"HIY" |"NOR" 桃花岛\n"; map += HIG" ∧∧ ∧"NOR"青城 "HIY"/ \ +-----+"GRN"ψ"NOR"逍遥派 "HIY"+-"NOR"杭州\n"; map += HIG" ∧ "HIW"@@@___"HIY"-+ / \ |"GRN"ψψ"NOR"树林 "HIY"|\n"; map += HIR"血"HIG"∧ ∧∧ "HIY"| / "HIG"∧"NOR" 武"HIY"\ \ |\n"; map += HIR"刀"HIG" ∧"HIY"\"NOR" 成都"HIY"-+ "HIW"@@@_"HIG"∧"NOR"当 "HIY"| \"NOR" 武 "HIG"∧"HIY" |\n"; map += HIY" ---+ | "HIG"∧∧∧∧"HIY"| "HIG"∧"NOR" 衡 "HIY"/\"NOR" 夷"HIG"∧∧"HIY"| "HIB"≈≈≈\n"NOR; map += HIY" | | "HIW"@@__"HIG"∧"NOR"山 "HIY"/ \"NOR" 延平\n"; map += HIG" ∧∧ "HIY"/"NOR" 摩"HIG"∧ "HIY"| "HIG"∧∧∧ "HIY"/ \ /\\n"; map += HIW" @@@__"HIG"∧"HIY" *"NOR" 天"HIG"∧"HIY"-+----"NOR"衡阳"HIY"+ +-+"NOR" 福州 "HIB"≈≈≈\n"; map += NOR" 峨嵋"HIG"∧"HIW"@_"HIG"∧"HIY"|"NOR" 崖 "HIY"| | "HIB"≈≈≈\n"NOR; map += HIY" | | "NOR"泉州"HIB"≈≈"NOR"澎湖\n"; map += NOR" 万劫谷"HIY"\/ | / "HIB"≈"HIG"¤"HIB"≈≈\n"; map += NOR" "HIY"| "HIC"≈≈"NOR"滇"HIY" | / "HIB"≈≈≈"HIG"¤"HIB"≈\n"; map += HIG" ∧"NOR" 大理"HIC"≈≈"NOR"池"HIY" | / "HIB"≈≈"NOR"台湾"HIB"≈\n"; map += NOR" 苍山"HIG"∧"HIY" +--------"NOR"佛山"HIY"-----------+"HIB" ≈≈≈≈≈≈ \n"; map += HIY" | "HIB"≈≈≈≈≈≈≈\n"; map += HIB" ≈≈ "HIB"≈≈"NOR"渔港"HIB"≈≈≈ ≈≈ ≈≈ \n"; map += HIB" ≈≈≈≈≈≈≈≈≈ ≈≈ ≈≈ ≈≈\n"; map += HIB" ≈≈≈≈≈≈ ≈≈ ≈≈ ≈≈\n"; map += HIB" ≈≈≈"HIY"¤"NOR"侠客岛"HIB"≈≈\n"; map += HIB" ≈≈≈≈≈≈≈\n"; map += "\n"; map += NOR" Modified by Java Sep.27 1998\n"; me->start_more(map); return 1; } // Else, try if a command name is specified. seteuid(getuid()); if( stringp(file = me->find_command(arg)) ) { notify_fail("有这个指令存在,但是并没有详细的说明文件。\n"); return file->help(me); } // Search the individual search path first. if( pointerp(search = me->query("help_search_path")) ) { i = sizeof(search); while(i--) if( file_size(search[i] + arg)>0 ) { me->start_more( read_file(search[i] + arg) ); return 1; } } // Support efun/lfun help with same name as other topics such as // ed() and ed command. sscanf(arg, "%s()", arg); // Finally, search the default search paths. if( pointerp(default_search) ) { i = sizeof(default_search); while(i--) if( file_size(default_search[i] + arg)>0 ) { me->start_more( read_file(default_search[i] + arg) ); return 1; } } return notify_fail("没有针对这项主题的说明文件。\n");}void selete_main(string num,object ob){ if( num == "1" ) { ob->delete_temp("block_msg/all"); write(CLR); write(read_file("/help/help/topics")); } else if( num == "2" ) { ob->delete_temp("block_msg/all"); write(CLR); write(read_file("/help/help/topics1")); ob->set_temp("block_msg/all"); input_to("help_new",ob); } else if( num == "q" || num == "Q" ) quit_help(ob); else { ob->delete_temp("block_msg/all"); write(HIR"\n 对不起,没有这个选项!您可以选择:\n"NOR); write(CYN" 1、自选模式目录 2、向导模式目录 Q、退出帮助\n"NOR); write(CYN"\n 请输入选择项(1 or 2 or Q):"NOR); ob->set_temp("block_msg/all"); input_to("selete_main", ob); }}void help_new(string num,object ob){ if( num == "1" ) { write(CLR); write(read_file("/doc/help/intro")); ob->delete_temp("block_msg/all"); } else if( num == "2" ) { write(CLR); write(read_file("/doc/help/rules")); ob->delete_temp("block_msg/all"); } else if( num == "3" ) { write(CLR); write(read_file("/doc/help/newbie")); ob->delete_temp("block_msg/all"); } else if( num == "4" ) { write(CLR); write(read_file("/doc/help/skill")); ob->delete_temp("block_msg/all"); } else if( num == "5" ) { write(CLR); write(read_file("/doc/help/menpai")); ob->delete_temp("block_msg/all"); } else if( num == "6" ) { write(CLR); write(read_file("/doc/help/commands")); ob->delete_temp("block_msg/all"); } else if( num == "7" ) { ob->delete_temp("block_msg/all"); write(CLR); write(read_file("/doc/help/maps")); ob->set_temp("block_msg/all"); input_to("help_map",ob); } else if( num == "8" ) { write(CLR); write(read_file("/doc/help/settings")); ob->delete_temp("block_msg/all"); } else if( num == "9" ) { write(CLR); write(read_file("/doc/help/aboutquest")); ob->delete_temp("block_msg/all"); } else if( num == "10" ) { write(CLR); write(read_file("/doc/help/wlmm")); ob->delete_temp("block_msg/all"); } else if( num == "11" ) { write(CLR); write(read_file("/doc/help/questlist")); ob->delete_temp("block_msg/all"); } else if( num == "q" || num == "Q" ) quit_help(ob); else { ob->delete_temp("block_msg/all"); write(HIR"\n 对不起,没有这个选项!\n"NOR); write(CYN"\n 请输入选择项(1-10选择相应项目,Q退出帮助系统):"NOR); ob->set_temp("block_msg/all"); input_to("help_new", ob); }}void quit_help(object ob){ ob->delete_temp("block_msg/all"); write(HIC"\n 谢谢使用帮助系统,祝您在海洋II里玩里快乐!\n\n"NOR); return;}int help(object me){ write(@HELP指令格式:help <主题> 例如:> help cmds help <函数名称>() 例如:> help call_out()这个指令提供你针对某一主题的详细说明文件,若是不指定主题,则提供你有关主题的文件。HELP ); return 1;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -