gpt4 book ai didi

c# - 碰撞后如何为我的播放器关闭重力?

转载 作者:行者123 更新时间:2023-12-04 09:06:20 26 4
gpt4 key购买 nike

当我的玩家撞到一个物体时如何关闭我的重力以创建一个很酷的飞行碰撞效果

到目前为止,这是我的代码:

using UnityEngine;

public class PlayerCollision : MonoBehaviour{

public PlayerMovement movement;
void OnCollisionEnter (Collision CollisionInfo) {

Debug.Log(CollisionInfo.collider.name);

if (CollisionInfo.collider.tag == "Obstacle"){
movement.enabled = false;
// Rigidbody.useGravity = false;
}
}
}

我尝试了 Rigidbody.useGravity = false; 但它仍然不起作用。

P.S.:禁用移动意味着我无法控制移动,而不是我的播放器完全停止移动。

最佳答案

最适合您的解决方案是使用 GetComponent,它会获取播放器的刚体组件,您将能够对其进行修改:

public class PlayerCollision : MonoBehaviour{

public PlayerMovement movement;
void OnCollisionEnter (Collision CollisionInfo) {

Debug.Log(CollisionInfo.collider.name);

if (CollisionInfo.collider.tag == "Obstacle"){
movement.enabled = false;
GetComponent<Rigidbody>().useGravity = false;
}
}
}

关于c# - 碰撞后如何为我的播放器关闭重力?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63436801/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com