赞
踩

要点:需要给门添加父物体(创建一个空物体),让父物体带着子物体一起移动。
父物体的中心需要转化为pivot(按Z键切换)
蓝色的Cube挂的脚本为

需要给门增加碰撞尺寸,扩大被碰撞的范围。
黄色的门所挂脚本为:

给教室内的所有座椅增加标签tag,标签为:Desks,获取对应的数组。
选中所有座椅,给他们增加一个碰撞区,调整碰撞区的大小。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class DeskTrigger : MonoBehaviour { private GameObject[] m_desk; // Use this for initialization void Start () { m_desk = GameObject.FindGameObjectsWithTag("Desks"); foreach (var item in m_desk) { Debug.Log(item.name); } } // Update is called once per frame void Update () { if (Input.GetKeyDown(KeyCode.Z)) { //上升桌子 DeskUp(); } if (Input.GetKeyUp(KeyCode.Z)) { //下降桌子 DeskDown(); } } void DeskUp() { foreach (var item in m_desk) { item.GetComponent<Transform>().Translate(Vector3.up * 2, Space.Self); } } void DeskDown() { foreach (var item in m_desk) { item.GetComponent<Transform>().Translate(Vector3.down * 2, Space.Self); } } void OnTriggerEnter(Collider other) { if (other.name == "Student") { DeskUp(); } } void OnTriggerExit(Collider other) { if (other.name == "Student") { DeskDown(); } } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。