|
發表於 8-5-2007 20:00:56
|
顯示全部樓層
原帖由 狂~劇情狂 於 2007-5-7 22:22 發表 
由於儲存現在生命值的 Single 資料(正數)在正常狀態下是不會出現負數的,因此也不太可能利用區間錯誤實行逆向的數值轉化--當然,這也是我臨時猜想的,你可以試試按照上面的理論--當現在生命值為 16777217 時會變成 16777216 --看看能否推算出合適的編排方法。
那我想問負數的極限是甚麼,是否也是-16777216?
英雄化,如果爆血(70/40),那加了16777177後會變成16777216(因為大過16777217),之後觸發會減掉16777177,會變回40/40。
但是,劇情裡卻不會,反而還好像加了數滴血(每次不同數量)
如果負數的極限也是16777216,我想, 我先扣了31(想扣剩的數量+1),再扣16777216, 再加回16777216, 再加30便可以
31血時, -31 = 0 , 0-16777216 = -16777216, -16777216+16777216 = 0 , 0 +30 = 30
30血時, -31 = -1, -1-16777216 = -16777217 = -16777216(程式?), -16777216+16777216 =0, 0+30 = 30, 但是劇情卻不能,為甚麼? |
|