set_pev(pev_maxspeed) 問題 (已自行解決)

Home Home
引用 | 編輯 岳岳
2015-08-05 00:09
樓主
推文 x0

複製程式
// Native: zp_get_weapon_speed
public Float:native_get_weapon_speed(id)


new Float:satan_exp_effect_speed = 0.75;


client_print(0, print_chat, "ID: %d , WSP: %f , SP: %f , T: %f", victim, zp_get_weapon_speed(victim), satan_exp_effect_speed, (zp_get_weapon_speed(victim) * satan_exp_effect_speed))



有誰能告訴我為何他計算出的值視亂碼嗎表情  


我甚至已經試過用新的Float變數計算好"T"、整數變數計算好"T"、
floatround(zp_get_weapon_speed)、
floatround(satan_exp_effect_speed)、
floatround(zp_get_weapon_speed(victim) * satan_exp_effect_speed)
他的顯示通通都是這樣~~~~為何阿~~~~~~~~~表情


註: "T" = zp_get_weapon_speed(victim) * satan_exp_effect_speed (同上面的client_print的最後一個計算)


原因:ZP主插件裡的zp_get_weapon_speed設定的Float:拿掉就解決了...


追加疑問: 
為何在ZP主插件用Float:反而會整體失效?
在print用%f正常顯示而用%d則會亂碼顯示,這代表應該型態是不有設定錯的才對...
難道不能在public設定型態?
沒設定型態的話回傳Float是會出問題的....
所以最終我在她所有回傳直轉回整數型態...
然後回傳整數廷泰在其他插件使用中並不需要轉乘float就可以使用...這又是為什麼呢??
然後用print顯示的%f反而顯示不出來變成"0"了....

獻花 x0
引用 | 編輯 tonyyoung
2016-04-18 09:35
1樓
  
下面是引用 岳岳 於 2015-08-05 00:09 發表的 計算問題......,|set_pev(pev_maxspeed) 問題 (已自行解決): 到引言文
[attachment=847036]

// Native: zp_get_weapon_speed
public Float:native_get_weapon_speed(id)

.......
我想應該是這樣吧....
複製程式
// Native: zp_get_weapon_speed
public native_get_weapon_speed(id)


new Float:satan_exp_effect_speed = 0.75;


client_print(0, print_chat, "ID: %d , WSP: %.2f , SP: %.2f , T: %.2f", victim, zp_get_weapon_speed(victim), satan_exp_effect_speed, float(zp_get_weapon_speed(victim) * satan_exp_effect_speed))
首先沒必要的話個人不建議直接在public掛float...
然後%d只能用來顯示單純的整數...要顯示小數點就要用%f...
另外我寫成%.2f的用意是控制它只顯示到二位小數...

獻花 x0