Re: [wizs] 關於虛擬物品

看板mud_sanc (Sanctuary - 聖殿)作者 (小太保)時間13年前 (2012/11/06 09:48), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
> ls hiei.o 5 hiei.o > call hiei;set;"vobjs/a001";100 > call hiei;set;"vobjs/a002";100 . . > call hiei;set;"vobjs/a100";100 > ls hiei.o 6 hiei.o > call hiei;set;"vobjs/b001";100 > call hiei;set;"vobjs/b002";100 . . > call hiei;set;"vobjs/b100";100 > ls hiei.o 7 hiei.o 可以解釋為,每增加 100 筆資料,容量約增加 1K。 在 grep vobjs 相關的資料時,發現 /std/user.c,以及 /std/user 目錄下的部份檔案,都有定義 vobjs 的相關變 數及函數,其中 /std/user/save.c 的已廢棄。 依 laechan 在 2010 年的寫法,vobjs 是一個內部變數, 然後 laechan 寫了兩個專用的函數來存取這個變數: varargs mixed return_vobjs(string term); varargs void change_vobjs(string func,string term,int value,int k); 依據 /d/skill/skill_stat.c 可儲存的量來看,至少儲存 到 400 種(我想最多只會給到 300 種)物品是沒問題的。 那麼,假設物品的分類是依據字頭,有一種做法是: for(i='a';i<='z';i++) { foreach(tmp in keys_vobjs) { if(tmp[0]==i) { . . } } } 也就是說,用雙層迴圈的方式,來對物品的列表做自動分 類,它的好處就是容易控制總量,因為 sizeof(vobjs)是 經常會呼叫到的東西。 最後,sell 生命藥水 這樣的動作,如何識別說它是要找 p001呢?mixed OO草+XX翅膀+QQ尾巴 的動作又要如何實 現呢? 這是商業機密。 Belldandy. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.61.157.53
文章代碼(AID): #1Gc6o6fP (mud_sanc)
文章代碼(AID): #1Gc6o6fP (mud_sanc)