我制作了一个自上而下的射击游戏,敌人在跟踪玩家.如果他们碰你,他们会用AddForce
英镑推你.我已经做到了,但只是在特定的方向上.问题是,如果敌人是从玩家的右边来的,他们仍然会把你推到右边,而不会推到他们来自的相反方向.我试着探测敌人的旋转,以增加他们所看到的地方的力量.以下是原始脚本,但它只能向右推:
public Rigidbody2d playerrb;
public GameObject enemy;
float force = 2f;
void OnCollisionEnter2D(Collision2D collision){
playerrb.AddForce(transform.right * force, ForceMode2D.Impulse);
}
以下是我try 过的:
public Rigidbody2d playerrb;
public GameObject enemy;
float force = 2f;
void OnCollisionEnter2D(Collision2D collision){
playerrb.AddForce(enemy.transform.rotation * force, ForceMode2D.Impulse);
}