添加插件
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Obi.Samples
|
||||
{
|
||||
[RequireComponent(typeof(ObiRope))]
|
||||
public class CursorController : MonoBehaviour
|
||||
{
|
||||
public float minLength = 0.1f;
|
||||
public float speed = 1;
|
||||
|
||||
private ObiRopeCursor cursor;
|
||||
private ObiRope rope;
|
||||
|
||||
void OnEnable()
|
||||
{
|
||||
rope = GetComponent<ObiRope>();
|
||||
cursor = GetComponent<ObiRopeCursor>();
|
||||
}
|
||||
|
||||
void Update()
|
||||
{
|
||||
float change = 0;
|
||||
|
||||
if (Input.GetKey(KeyCode.W) && cursor != null)
|
||||
{
|
||||
change -= speed * Time.deltaTime;
|
||||
}
|
||||
|
||||
if (Input.GetKey(KeyCode.S) && cursor != null)
|
||||
{
|
||||
change += speed * Time.deltaTime;
|
||||
}
|
||||
|
||||
if (rope.restLength + change < minLength)
|
||||
change = minLength - rope.restLength;
|
||||
|
||||
cursor.ChangeLength(change);
|
||||
|
||||
if (Input.GetKey(KeyCode.A))
|
||||
{
|
||||
rope.transform.Translate(Vector3.left * Time.deltaTime, Space.World);
|
||||
}
|
||||
|
||||
if (Input.GetKey(KeyCode.D))
|
||||
{
|
||||
rope.transform.Translate(Vector3.right * Time.deltaTime, Space.World);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user