[閒聊] 20151111修改事項

作者: laechan (揮淚斬馬雲)   2015-11-11 09:13:03
這禮拜二到五,都有排到設備檢測,依昨天檢測的情況,比我想的
還要多花時間,今天排了不少測項。
一、實裝光棍節 buff
/d/wiz/mob/lodao.c 不備份修改
主要新增一個自訂的 init 函數,判斷每個回到巨型高塔的玩
家,只要是單身(沒有結婚對象),就自動上底下的 buff:
> a
第[120]級 摳頂機器(Laechan:進階牧師)
主要武器:砂鍋大的拳頭
攻擊力:860X 戰鬥速度:1500X 命中力:626X
躲避力:812X 防禦力:1895X
如果你有發現數值是負的情況,就請 quit 再進來一次。
1.光棍節buff:內力上限(11111X) 血量上限(11111X) 法力上限(11111X) 30 分鐘
該判斷保留到明天早上差不多這個時間。
二、3p 計算函數修正
/adm/simul_efun/new_and_count.c 備份為 20151111
前幾天順手修正了 count_damage 函數,它也有產生負值的問題。
目前 new_3p 函數修正為,當計算出來的 3p 底值 > 150 萬時,
就改採別的計算式,以避免數值出現超過 21 億的情況。
三、修改 /open/cmds/quest/quest_d.c、quest_data/quest_data.c
quest_d.c 備份為 bak/quest_d.20151111
quest_data.c 不備份修改
執行 quest show/shows 時,讓 give_obj 的顯示支援「虛擬物
品」,例如腳本檔裡面如果是這樣寫
give_obj(ppl,"m001",1)
> quest show l099
┌──────────────────────────────────┐
│任務編號:l099(一次性任務) │
├──────────────────────────────────┤
│任務獎勵:    │
│    │
│ 哀唱草 x 1 │
└──────────────────────────────────┘
> quest shows l099
┌──────────────────────────────────┐
│任務編號:"l099", quest_times=0, quest_repeat=0 │
├──────────────────────────────────┤
│任務獎勵:    │
│    │
│ 哀唱草(m001) x 1 │
└──────────────────────────────────┘
寫在 quest_d.c 的 give_obj 函數也做了相對映修改。
另外,questing 全域函數新增 questing("vobjs" 語法
questing("vobjs","get_name","m001") => 讀出 "m001" 的物品名稱
questing("vobjs","get_value","m001") => 讀出 "m001" 的價錢
.
.
這部份可參考 /open/cmds/vobjs_d.c 的 vobjs_data 函數下面,
有 switch 哪些項目,裡面上都可用 questing 去呼叫。
questing("vobjs",names,quest_num,var)
↓ 對映了
vobjs_data( names,quest_num,var)
四、/std/user.c 的 vobjs 函數修正
/std/user.c 備份為 user.20151111
目前 set 與 add 的部份都加上攜帶量的判斷,這項更新在玩家有
重新 login 時會生效,或者等下周 shutdown 後也會生效。
> ob
你的物品欄帶著 83/99 種物品:
╔════════════╗
║ 3.尾巴袋子 ( 1)║
╚════════════╝
> ob view 尾巴袋子
────────────────────────────
尾巴袋子(物品編號: b005)
────────────────────────────
攜帶:1 / 10
> call me;vobjs;"add";"b005";10
玩家(laechan /std/user)-> vobjs( "add", "b005", 10
) = 0
> ob
你的物品欄帶著 83/99 種物品:
╔════════════╗
║ 3.尾巴袋子 ( 10)║
╚════════════╝
它會變成 10(攜帶量上限),而不是 11。
因為現在有了 questing("vobjs") 全域函數可用,最近將會對
user.c 的 vobjs 函數做更多的修正。
五、

Links booklink

Contact Us: admin [ a t ] ucptt.com