我想在游戏中使用弹簧关节2d。在这里,我有一些关于弹簧关节的代码我试图创建一个像愤怒的小鸟一样的游戏。但是在这里,我不能让弹簧接头2d工作。它的工作就像一根绳子,没有像弹簧一样受到伤害。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
public class Projectile_dragging : MonoBehaviour {
public LineRenderer catapultLineFront;
public LineRenderer catapultLineBack;
private bool clickedOn;
void Start(){
LineRenderersetup ();
}
void Update(){
if(clickedOn)
Dragging();
LineRendererUpdate ();
}
void OnMouseDown(){
clickedOn = true;
}
void OnMouseUp(){
GetComponent<Rigidbody2D>().isKinematic = false;
clickedOn = false;
}
void LineRendererUpdate(){
//Vector2 hold = transform.position - catapultLineFront.transform.position;
Vector3 hold = transform.position;
//leftRay.direction = projectile;
//Vector3 hold = leftRay.GetPoint(projectile.magnitude + radius);
catapultLineFront.SetPosition(1, hold);
catapultLineBack.SetPosition(1, hold);
}
void LineRenderersetup(){
catapultLineBack.SetPosition (0, catapultLineBack.transform.position);
catapultLineFront.SetPosition (0, catapultLineFront.transform.position);
catapultLineBack.sortingLayerName = "Foreground";
catapultLineFront.sortingLayerName = "Foreground";
catapultLineBack.sortingOrder = 1;
catapultLineFront.sortingOrder = 3;
}
void Dragging(){
Vector3 mouseworldpoint = Camera.main.ScreenToWorldPoint (Input.mousePosition);
mouseworldpoint.z = 0f;
transform.position = mouseworldpoint;
}
}