我正试图使一个破折号/收费攻击光标位置与最大破折号长度,我不确定如何做,因为我是非常新的统一和编码一般。
它将类似于这个代码,除了不是瞬间移动的字符将破折号。
if (Physics.Raycast(ray, out hit, rayLength, layerMask) && Input.GetMouseButtonDown(1))
{
Vector3 hitPosition = new Vector3(hit.point.x, transform.position.y, hit.point.z);
player.transform.position = hitPosition;
}
2条答案
按热度按时间siv3szwd1#
在youtube上搜索“在Unity中移动对象的不同方法”。我建议的解决方案是使用AddForce而不是Transform.Position。示例:
1.使用AddForce就像向一个方向踢球一样。
1.使用变换位置就像把球带到所需的位置。
enyaitl32#
使用
AddForce
的解决方案如下所示:你可以把它放到
Update
方法中。但是请注意,您可能应该缓存
Camera.main
和Rigidbody2D
,因为每帧都进行查找的效率非常低。您还可以/应该将
force
设置为检查器中可用的字段,这样您就可以根据自己的喜好轻松地对其进行调整:)