Re: [wizs] 任務設定
看板mud_sanc (Sanctuary - 聖殿)作者laechan (小太保)時間15年前 (2011/04/15 14:37)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/3 (看更多)
一般來說任務物件的資料宣告型式會定義如下...
mapping quest=([
"任務keyword":數字或字串,
"任務keyword":(["1":數字或字串,
"2":數字或字串,
]),
]);
我可能會用字串,它的好處是不像數字那麼不方便。
我舉例,假設某個叫 lodoos_1 的任務,設計了 10 個 partten
全部達成任務的標記:"1111111111"
剩下一個任務就完成:"111111111"
預設式的任務標記 :"0000000000" <- 預設都未完成
才剛完成第一個階段:"1" or "1000000000"
以才剛完成第一個階段為例,假設「第二步驟」是要去問
下一個 npc,那判斷如下...
quest_str=query_quest(me,"lodoos_1");
s=strlen(quest_str);
if(s<2) // 第一種判斷方式
return notify_fail("XXX告訴你: 你在說什麼, 我聽不懂喔.\n");
if(s>0 && quest_str[0..0]=="0") // 第二種判斷方式
return notify_fail("XXX告訴你: 你在說什麼, 我聽不懂喔.\n");
if(s>1 && quest_str[1..1]=="1") // 已經問過了
return notify_fail("XXX告訴你: 就像我剛說的那樣, 再來去問OOO吧!!\n");
因為採 mapping 的方式紀錄資料,就無需採預設式的寫法
,而唯有解過很多任務,物件資料儲存檔的資料才會變大,
又 mapping 式的另一個好處就是新增儲存子欄位又相當容
易,唯一的缺點就是要定 keyword 以及如何避免其重覆。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 115.83.3.89
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):
1
2
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
15
19