当他们触摸按钮时如何使平台移动90度

时间:2018-11-01 12:58:29

标签: c# unity3d animation rotation collision

您好,我想让播放器与按钮碰撞时使平台旋转90度。我没有线索atm,只能使我的平台反复旋转。我希望它分开发生,因为每个平台都有其单独的按钮。我正在使用团结和尖锐。 地图图片 https://gyazo.com/0efce1c230d703b793cf7cab0384ee4e

橙色=按钮

我想移动通讯平台

1 个答案:

答案 0 :(得分:0)

将Collider2D附加到GameObject上以使其成为IsTrigger并在代码上附加一个脚本

void OnTriggerEnter2D(Collider2D col)
{
    if(col.gameObject.tag=="Player")
       platformObject.transform.rotation.x=90; //could be Y too 
}

类似的事情。

编辑

https://docs.unity3d.com/ScriptReference/Quaternion.Lerp.html

using UnityEngine;

public class Example : MonoBehaviour
{
    // Interpolates rotation between the rotations
    // of from and to.
    // (Choose from and to not to be the same as
    // the object you attach this script to)

    Transform from;
    Transform to;
    float speed = 0.1f;
    void Update()
    {
        transform.rotation = Quaternion.Lerp(from.rotation, to.rotation, Time.time * speed);
    }
}