下面是引用 s8720419 於 2013-04-30 05:26 發表的 小問題,需老手幫忙:
我的問題
new Float:angle[3]
pev(id, pev_angles, angle)
angle[0] += 0.0
angle[1] += 90.0
angle[2] += 0.0
set_pev(id, pev_angles, angle)
我寫這段進去插件裡面
用於想讓畫面準心角度移動
可是 怎麼試 好像都沒什麼用
我也用過 動能+轉換角度
結果一樣 還是 沒有變...
是不是 我寫錯了 還是 本來就沒辦法 改變畫面準心秒準的位置
你有將
pev_fixangle 設成1嗎?
設成1會強制更新 pev_angles 的數據…
例子:<chr_engine>裡的 entity_set_aim(我自己修改過…拿來玩自瞄用的…)
複製程式
stock entity_set_aim(id,const Float:target_origin[3],bone=0)
{
if(!pev_valid(id)) return 0
new Float:player_start[3], Float:player_end[3]
pev(id,pev_origin,player_start)
pev(id,pev_view_ofs,player_end)
player_start[0] += player_end[0], player_start[1] += player_end[1], player_start[2] += player_end[2]
new Float:angles[3]
if(bone) engfunc(EngFunc_GetBonePosition,id,bone,target_origin,angles)
new Float:aim_vector[3],Float:new_angles[3]
aim_vector[0] = target_origin[0] - player_start[0]
aim_vector[1] = target_origin[1] - player_start[1]
aim_vector[2] = target_origin[2] - player_start[2]
vector_to_angle(aim_vector,new_angles)
new_angles[0] *= -1
while(new_angles[1]>360.0) new_angles[1] -= 360.0
while(new_angles[1]<0.0) new_angles[1] += 360.0
set_pev(id,pev_angles,new_angles)
set_pev(id,pev_fixangle,1)
return 1;
}