下面是引用 nswrth 於 2013-03-20 19:33 發表的 :
感謝一、二樓的回應 再仔細研究了一下那份傷據 終於知道為啥腳沒有"穿甲傷害數據" 因為腳不能穿護甲啊XD
還有右鍵刀實在太酷了 從背後砍到任何部位都是即死
對了 那牆和地板有沒有修正數據呢?
還有各種武器的"傷害距離衰減"我看不太懂 可否請大大解釋一下嗎?
HL SDK原碼的內容大略是:
每種子彈類型都有不同的子彈傷害和子彈飛行距離…
然後傷害的計算中間經過一堆穿牆次數、牆壁材質、傷害遞減之後最後的程式碼…
複製程式
iCurrentDamage *= pow( flCurrentDistance * 0.002, flRangeModifier );
flCurrentDistance:目前子彈的命中點位置
flRangeModifier:每個武器的子彈隨著距離威力減弱的數值,數值越小代表隨著射程越遠傷害越小
數值列表:
複製程式
new const Float:flRangeModifier[] = {
0.95, //m4a1 silencer
0.8, //p228
0.0, //-----
0.96, //scout
0.0, //-----
0.8, //xm1014
0.0, //-----
0.82, //mac10
0.96, //aug
0.0, //-----
0.75, //elites
0.885, //fiveseven
0.82, //ump45
0.98, //sg550
0.98, //galil
0.96, //famas
0.79, //usp
0.75, //glock18
0.99, //awp
0.84, //mp5navy
0.97, //m249
0.8, //m3
0.97, //m4a1
0.85, //tmp
0.98, //g3sg1
0.0, //-----
0.81, //deagle
0.955, //sg552
0.98, //ak47
0.0, //-----
0.885 //p90
}