[wizs] 關於任務發布區。
我打算做一個任務發布區之類的東西。(在想想要叫啥名字好...)
目前打算是列出可接取的表(附帶關鍵字),然後可以直接用quest指令接任務。
這樣的作法好處:簡單、方便,不用寫額外東西,完全由quest指令支援。
讀取關鍵字:implode(query_quest_key(),"、");
隨機產生任務的部份:
1.在任務發布區設定可接哪些任務...
程式碼如下:
mixed all_quests,quests=({});
int i,r,max_num;
string str;
all_quests = get_dir("/open/cmds/quest/mission/*.c"); // 新建個mission目錄專門存放。
for(i=0;i<10;i++) // 一次釋放出十個任務可接取
{
max_num = sizeof(all_quests); // 取得所有任務的數量。
r=random(max_num);
str=all_quests[r];
all_quests-=str; // 去掉已公佈的。
if( sscanf(str,"%s.c",str)==1 ) ; // 去除 .c 的部份
quests+=str;
}
set("can_quests",quests);
2.在任務檔裡面,寫上判別該格有無此任務,並設置可重複接取即可。
程式碼如下:
repeat=1## // 可重複接取。
step1_check=
member_array(xxx,can_quests)!=1) // xxx為此任務檔名,can_quests為可接取的任務
這裡沒有這個任務可以接取唷!##
----------------------------------------------------------
這樣基本上就可以作到隨機產生。
不過,這類任務應該大多是殺怪任務吧!感覺比較適合。
另外,任務方面我想稍微分一下難度。
大致上可能為:a001 a002 b003 a004 c005...之類的
a = 殺高等區域王的的任務。
b = 殺低等區域王的的任務、殺高等區域小怪的任務。
c = 殺滴等區域小怪的任務。
然後,假如總共有 10 個任務。
則 a型任務 可能為 1 個。
b型任務 可能為 3 個。
c型任務 可能為 6 個。
--------------------------------------------------
然後有幾個問題不太知道怎麼做:
1.上面的member_array的部份怎麼寫比較好?...
(寫在腳本裡就不太會寫了...感覺會很冗長...avert...)
--
Norr@Sanc
風,吹散了一切煩惱,只留下平靜的思考。
雨,淋落了一切紛亂,只剩下無比的快樂。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 175.182.50.63
※ 編輯: hlead 來自: 175.182.50.63 (05/04 21:47)
討論串 (同標題文章)
完整討論串 (本文為第 1 之 4 篇):
1
10
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章