作者laechan (小太保)
看板mud_sanc
標題Re: [wizs] base_shop.c 研究
時間Tue Jan 10 15:39:08 2012
今天改了防具店,初步測試是 ok 的。
※武器店還沒改所以 system shops 關於武器的部份目前還
無作用(但指令已寫好)。
> list
羅德斯 防具店
現有物品有:
序號 lv 物品名稱 價格 數量
────────────────────────────────
1. 45 菲里德布衣(Felid Cloth) 2500 枚影特幣 (5)
2. 80 惡鬼戰盔(Goblin Helmet) 3000 枚影特幣 (1)
3. 65 金玉頭飾 (gorden_jade headadron) 14000 枚影特幣 (1)
4. 5 木盾(Wood Shield) 200 枚影特幣 (10)
> system shops save eq
"/d/map/lodoos/room/eq_shop"->save_room() ok.
儲存檔: /open/wizs/eq_shop.o
將資料儲存起來,然後 buy shield 讓 shield 變 9,
再 sell brooch 讓商店增加一個新東西.
> list
羅德斯 防具店
現有物品有:
序號 lv 物品名稱 價格 數量
────────────────────────────────
1. 65 金玉胸針 (gorden_jade brooch) 8500 枚影特幣 (1)
2. 5 木盾(Wood Shield) 200 枚影特幣 (
9)
3. 45 菲里德布衣(Felid Cloth) 2500 枚影特幣 (5)
4. 80 惡鬼戰盔(Goblin Helmet) 3000 枚影特幣 (1)
5. 65 金玉頭飾 (gorden_jade headadron) 14000 枚影特幣 (1)
接著就做資料回存
> system shops restore eq
"/d/map/lodoos/room/eq_shop"->restore_room() ok.
回存檔: /open/wizs/eq_shop.o
> list
羅德斯 防具店
現有物品有:
序號 lv 物品名稱 價格 數量
────────────────────────────────
1. 65 金玉胸針 (gorden_jade brooch) 8500 枚影特幣 (1)
2. 5 木盾(Wood Shield) 200 枚影特幣 (10)
3. 45 菲里德布衣(Felid Cloth) 2500 枚影特幣 (5)
4. 80 惡鬼戰盔(Goblin Helmet) 3000 枚影特幣 (1)
5. 65 金玉頭飾 (gorden_jade headadron) 14000 枚影特幣 (1)
回存後
一、它判斷到木盾的數量 9 個小於儲存檔所存的 10 個
=> 就把數量改成 10 個
二、它判斷到儲存檔沒有 brooch 這個東西
=> 那麼資料做回存後 brooch 這個東西仍會被保留
這時再做儲存
> system shops save eq
"/d/map/lodoos/room/eq_shop"->save_room() ok.
儲存檔: /open/wizs/eq_shop.o
然後 update eq_shop.c 再 list,商店回到一開始的狀態
> list
羅德斯 防具店
現有物品有:
序號 lv 物品名稱 價格 數量
────────────────────────────────
1. 5 木盾(Wood Shield) 200 枚影特幣 (5)
這時做回存
> system shops restore eq
"/d/map/lodoos/room/eq_shop"->restore_room() ok.
回存檔: /open/wizs/eq_shop.o
> list
羅德斯 防具店
現有物品有:
序號 lv 物品名稱 價格 數量
────────────────────────────────
1. 65 金玉頭飾 (gorden_jade headadron) 14000 枚影特幣 (1)
2. 80 惡鬼戰盔(Goblin Helmet) 3000 枚影特幣 (1)
3. 65 金玉胸針 (gorden_jade brooch) 8500 枚影特幣 (1)
4. 45 菲里德布衣(Felid Cloth) 2500 枚影特幣 (5)
5. 5 木盾(Wood Shield) 200 枚影特幣 (10)
這樣理論上儲存檔的資料就能越存越多,而不會有減少。
接下來就是觀察 eq_shop.o 的大小,我是希望不要 > 30K。
順便補一下 system 指令
> system
system board 留言板系統
system shops 特殊商店的控制
system skyroom 天空城之家系統
> system shops
system shops list 商店資料的列表
system shops save 商店資料的儲存
system shops restore 商店資料的回存
> system shops save
system shops save eq 儲存recall處防具店的資料
system shops save wp 儲存recall處武器店的資料
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: laechan 來自: 223.142.159.68 (01/10 15:40)
1F:→ hlead :話說回存好像應該寫在 create() 裡? 01/10 18:39
2F:→ laechan :我並不想「自動回存」 01/10 22:34
3F:→ hlead :嗯,我覺得手動儲存,自動儲存,這樣量應該還好.. 01/10 22:58
4F:→ hlead :不然其實也測不到啥?.. 01/10 22:58
5F:→ hlead :手動儲存,自動回存..avert..打太快orz.. 01/10 22:59
6F:→ laechan :不是要測什麼.有需要就存,另外,理論上應該是要先做回 01/10 23:35
7F:→ laechan :存再做儲存,這樣才能存最多的量,所以用自動的也不好 01/10 23:36
8F:→ hlead :我暫時先在base_shop加幾行,處理數量0的問題.. 01/14 12:44
9F:→ laechan :其實 0 就是從 all_inventory(storeroom) 來的,基本 01/14 13:06
10F:→ laechan :上這是可以技術性排除的 01/14 13:06
11F:→ hlead :嗯 我知道,我默默在list把多餘的移除了.. 01/14 13:11
12F:→ laechan :偶爾就觀察一下 eq_shop.o 的大小以及每次的儲存回存 01/14 13:13
13F:→ laechan :情況,如果都正常沒問題就可以考慮自動回存再儲存 01/14 13:13