Re: [wizs] 關於虛擬物品 (定案)
接著是打怪掉虛擬物品的設定問題,先從 mob_d.c 的
die 函數開始看。
if(killer && me && userp(killer))
find_object_or_load("/adm/daemons/mob_drop")->mob_drop(killer,me,"test");
laechan 允許 wizs 可以自訂打什麼怪物會掉什麼東西
,以及這些東西應提供什麼基本訊息,但是我不贊成這
樣做..
一、應該告訴 wiz,當他要新增什麼東西時,就去哪裡
做設定、或是下什麼指令就可。
二、設定及查詢的流程「指令化」。
三、他不需要擔心「配號」的問題。
這樣我們依舊可以呼叫上面的 mob_drop 函數,但是更
改其內容,例如底下的程式段可保留
files=base_name(mob);
換言之,「什麼怪物會掉什麼」,用該怪物的檔名做識
別是最直覺的做法,而理論上是..
mapping mob_drop=([
"怪物檔名" : ([ 他會掉什麼東西的設定資料, ... ]),
.
.
]);
那麼,我認為的理想做法就是:
一、我們先決定 tree 會掉什麼,比方「毒刺棘的樹根」
,然後我們就使用指令去設定這個東西的一些資料,
並取得它的編號(例如 m001)。
這樣不管以後要新增什麼,都採同樣的動作即可。
二、於是我們有了一些編號,接著就要 link 毒刺棘的掉
落物為這些編號,這部份可以採取 mob_drop 現有的
做法..
mapping mob_drop=([
"怪物目錄":(["怪物檔名":(["m001":..
"m002":..
]),
]),
]),
換言之,物品編號←→物品資料,這中間的對映是絕
對的,這樣我們就可以用「編號」來代表「物品」。
我會在本週完成虛擬物品系統及怪物掉落物系統的設計,
根據 laechan 的規劃,虛擬物品系統是很多後續系統及
設定的基礎,它必須好使用、好設定、好管理。
Belldandys.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.61.157.53
mud_sanc 近期熱門文章
PTT遊戲區 即時熱門文章
29
45