按键精灵如何控制鼠标在游戏中使人物达到转身的效果? 50
我玩一款游戏,在每个场景中要使用鼠标不断的转身。我用录制的方法不行,因为录制的是固定的坐标。怎样让鼠标在游戏中,无论什么场景,无论什么位置,都能让人物转身同样的角度呢?请...
我玩一款游戏,在每个场景中要使用鼠标不断的转身。我用录制的方法不行,因为录制的是固定的坐标。
怎样让鼠标在游戏中,无论什么场景,无论什么位置,都能让人物转身同样的角度呢?
请高手解答一下,我的QQ561655058
谢谢
我去脚本不太懂,你帮我看一下好吗?谢谢。
搞定的话,再帮你追加50分。 展开
怎样让鼠标在游戏中,无论什么场景,无论什么位置,都能让人物转身同样的角度呢?
请高手解答一下,我的QQ561655058
谢谢
我去脚本不太懂,你帮我看一下好吗?谢谢。
搞定的话,再帮你追加50分。 展开
2个回答
展开全部
Dim x0,y0//箭头移动的中心轴
弧间距 = 1//代表箭头每移动一次而产生的弧距离
半径 = 100
π = 4 * atn(1)
Do
n = 0
While n < π * 2
x = x0 + 半径 * sin(n)
y = y0 - 半径 * cos(n)
IfColor x,y,"FFFFFF",0 Then (小地图上的人物标记,假设是白色小箭头)
MessageBox x & y
End If
n = n + 弧间距 / 半径
Wend
loop
先确定你人物的视角 ,这个是思路 写法我不会
任何时候角色坐标都是已知的,目的地坐标也是已知的,那么用GetAngle函数就能知道角色到目的地方向(与X轴夹角)。这就是:desiredAngle = GetAngle(currentX, currentY, destX, destY)
另外,如果角色直线前进一段距离,那么可以知道角色启动前和移动后两个坐标,这样可以算出角色移动的方向,也就是间接知道了角色朝向。这是:currentAngle=GetAngle(lastX, lastY, currentX, currentY)
知道这两个方向后,就可以计算角色需要转向多少,正好面朝目标点。用目标方向减去角色朝向,就是这个角度。代码:dAngle=desiredAngle-currentAngle
但是,这个角度本身还需要规整一下,比如,目标在359度,角色面朝0度,减出来的夹角就是359度,那么你不会真的让角色逆时针转(向左转)359度吧?而是顺时针转(向右转)1度就够了,也就是要把这个夹角转换到-180度到+180度只间,正负号就代表了要要左转还是要右转。代码是:
if dAngle > pi then
dAngle=dAngle-pi*2
end if
if dAngle < -pi then
dAngle=dAngle+pi*2
end if
弧间距 = 1//代表箭头每移动一次而产生的弧距离
半径 = 100
π = 4 * atn(1)
Do
n = 0
While n < π * 2
x = x0 + 半径 * sin(n)
y = y0 - 半径 * cos(n)
IfColor x,y,"FFFFFF",0 Then (小地图上的人物标记,假设是白色小箭头)
MessageBox x & y
End If
n = n + 弧间距 / 半径
Wend
loop
先确定你人物的视角 ,这个是思路 写法我不会
任何时候角色坐标都是已知的,目的地坐标也是已知的,那么用GetAngle函数就能知道角色到目的地方向(与X轴夹角)。这就是:desiredAngle = GetAngle(currentX, currentY, destX, destY)
另外,如果角色直线前进一段距离,那么可以知道角色启动前和移动后两个坐标,这样可以算出角色移动的方向,也就是间接知道了角色朝向。这是:currentAngle=GetAngle(lastX, lastY, currentX, currentY)
知道这两个方向后,就可以计算角色需要转向多少,正好面朝目标点。用目标方向减去角色朝向,就是这个角度。代码:dAngle=desiredAngle-currentAngle
但是,这个角度本身还需要规整一下,比如,目标在359度,角色面朝0度,减出来的夹角就是359度,那么你不会真的让角色逆时针转(向左转)359度吧?而是顺时针转(向右转)1度就够了,也就是要把这个夹角转换到-180度到+180度只间,正负号就代表了要要左转还是要右转。代码是:
if dAngle > pi then
dAngle=dAngle-pi*2
end if
if dAngle < -pi then
dAngle=dAngle+pi*2
end if
展开全部
可以用方向键转身吗?如果可以的话你设一个按键脚本,用按方向键的次数来控制转身的角度比较精确
追问
我用方向键,但是转身太慢了,怎么办?
追答
你别用点击KeyPress "A", 1
KeyPress "A", 1
KeyPress "A", 1
KeyPress "A", 1
KeyPress "A", 1
这样肯定慢,可以用按下多长时间,然后弹起.应该可以实现.
KeyDown "A", 1
Delay 1000
KeyUp "A", 1
中间的时间可以去精确一下.调整到最合适的时间就可以做到精确转身
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询