using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Player1Control : MonoBehaviour {
// private Rigidbody2D playerRig;
public float speed;
private bool isMove = false;
private float process = 0;
private Vector3 dest;
private void Awake()
{
// playerRig = GetComponent<Rigidbody2D>();
}
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown(KeyCode.A))
{
if (!isMove)
{
dest= new Vector3(this.transform.position.x - 1.2f, this.transform.position.y,0);
isMove = true;
process = 0;
}
//playerRig.MovePosition(new Vector2(this.transform.localScale.x, this.transform.position.y));
}
if (Input.GetKeyDown(KeyCode.D))
{
if (!isMove)
{
dest = new Vector3(this.transform.position.x + 1.2f, this.transform.position.y, 0);
isMove = true;
process = 0;
}
}
if (isMove)
{
process += Time.deltaTime;
if (process < 1)
transform.position = Vector3.Lerp(transform.position, dest, process);
// transform.position = Vector3.Lerp(transform.position, dest, process);
else
{
isMove = false;
}
}
}
}
unity实现物体移动固定距离
最新推荐文章于 2025-04-11 10:53:15 发布
本文介绍了一个Unity中的玩家角色控制脚本,使用了Rigidbody2D组件进行2D物理模拟,通过键盘输入控制角色左右移动。当按下A键或D键时,角色将向左或向右移动1.2单位距离,移动过程采用平滑过渡。

1834





