********************************** 函數說明 **********************************

傳回所有任務的英文字串  	string	*query_quests ()
系統增加一個 quest	int	install_quest (string quest, string chinese)
系統刪除一件任務		int	delete_quest (string quest)
傳回整個任務的 mapping		mapping	query_quests_ob()
求已完成 quests 個數		int	query_n_f_quests (object who)
用英文字串求中文名稱 		string	quest_chinese (string str)
用索引值取回中文任務名稱	string	query_quest_cname (int idx)
用索引值取回英文任務名稱	string	query_quest_name (int idx)
設定玩家已經完成到第幾步	int set_quest(object ob, string quest, int step)
查詢玩家已經完成到第幾步        int query_quest(object ob, string quest)
設定某玩家已經完成一個任務	int set_finish_quest (object ob, string quest)
查詢是否完成一個任務		int query_finish_quest (object ob, string quest)

******************************** 實際上的運作 ********************************

    1. 所有 quests 都記錄在檔案裡, 函數則設在 /adm/daemons/questd 上,
         請參考最前面, 或者後面的說明
    2. 對玩家來說, 變數是設在身上, 但是每個任務可能分好幾步,
	 完成某 quest 就設 set("quests/xxxxxx",1);
         中間步驟採用暫時變數法, 即 set_temp()/query_temp()
         也就是說, 玩家身上的任務變數只記住有沒有完成, 完成的值就是 1
    3. 要安裝新的任務一定要透過用命令的方式
          setquests <英文> <中文>
       也可以砍掉, 用 delquests <英文>
       也可以查詢總數 quests

********************************** 使用範例 **********************************

    請參考 /cmds/arch/setquests.c
           /cmds/arch/delquests.c
           /cmds/usr/quests.c

********************************** 實例說明 **********************************
	   mapping sys_quests;		// 系統(任務問答機)上的所有任務資料庫
	   string *sys_quests_name;	// 系統(任務問答機)上的所有任務的英文名
	   mapping quests;		// 玩家身上已完成的任務
           object quest_man;		// 任務問答機
           object player;		// 玩家的物件
           string quest;		// 任務的英文名
           string cquest;		// 任務的中文名
	   int	  step;			// 任務的中間步驟

	 取得所有任務的英文名:
	     QUEST_D->query_quests();
	 取得任務的中文名:
	     cquest = QUEST_D->quest_chinese(quest);
         查詢玩家是否完成某一任務:
             if (player->query("quests/quest"))
	 設定玩家完成某任務的中間步驟:
	     player->set_temp(quest, step);
	 查詢玩家完成某任務到第幾步驟:
	     player->query_temp(quest);
         設定玩家完成某任務, 可以用
             player->set(quest, 1);
	 查詢玩家完成某任務:
	     player->query(quest);
	 查詢玩家完成的所有任務:
	     quests = player->query("quests");
	 查詢系統有幾個任務:
	     query_quests_n ()
	 查詢玩家完成幾個任務:
	     sizeof("quests");


by wade 10/31/1995
