※ 引述《justinj (黑旋風)》之銘言:
: 問一下...
: frog->shut("$N使出了"HIC"數字"HIM"迷"HIR"魂"HIG"掌"NOR"攻擊$O",50000,8888,
: ({"wind","physics",2}),ppl,3+random(3));
: 後面的physics設定成magic,stick有什麼差別嗎?
這個最主要是 /adm/daemons/shut_d.c 在使用的。
vareity 就是 "physics" 那個欄位,c 就是 2 那個欄位,目前
主要用在當玩家有穿上特殊的 body 類防具時用的。
wand=(object)tar->query("armor_body"); // 玩家身上的 body
anti_tmp=(int)wand->query("anti_kind/"+variety); // 是否有 anti_kind/xx
if(anti_tmp != 0) // 有防護級數的話
{
anti_tmp = anti_tmp - (c+1); // 防護級數 - 傷害級數
if(anti_tmp >= 0 && anti_tmp < 5)
damage = (1+damage/200) * kind_table[anti_tmp]; // 有的話就做減傷計算
}
不過我剛有看了設定不是挺合理。這我以前就提過,要設定這方
面的東西一定要畫表格,然後做成 mapping table。
防護級數 1 2 3 4 5
傷害級數
1
2
3
4
5
然後各自訂出什麼樣的防護級數,對上什麼樣的傷害級數時,它
的減傷率是多少,不這樣訂光是靠兩個級數的相減去做對映的計
算,是很容易失真的。
這部份若你有興趣,可以來討論如何修改。
Laechan