Bună ziua tuturor.
Am găsit un script pentru deschiderea ușilor pe Internet.
Aici este:
Text ascuns: arată
utilizând UnityEngine;
utilizând System.Collections;
clasa publica Usa. MonoBehour public bool deschis;
flota privată _timeout;
flotarea publicului public;
jucatorul privat GameObject;
float public MaxDistance = 3;
// Utilizați acest lucru pentru inițializare
void Start # 40; # 41;
player = GameObject.FindGameObjectWithTag # 40; "Player" # 41 ;;
>
// Actualizarea se numește o dată pe cadru
void Update # 40; # 41;
_timeout + = Time.deltaTime;
dacă ##; Input.GetKeyDown # 40; KeyCode.E # 41; _timeout> TimeoutVector3.Distance # 40; player.transform.position, transform.position # 41;
open =! open;
dacă # 40; deschis == adevărat # 41;
transform.animation.CrossFade # 40; "Open" # 41 ;;
>
dacă # 40; deschis == false # 41;
transform.animation.CrossFade # 40; "Close" # 41 ;;
>
>
>
>
Aproape că nu înțeleg scripturile. Pot înțelege niște trivia pur logic, dar eu nu pot schimba nimic în ele.
Scriptul funcționează bine, dar există două probleme:
1. Cum adaug sunetul de deschidere și închidere a unei uși?
2. Dacă închideți ușa și intrați în ea, ușa va trece prin player, cum să o rezolvați? (verificați animația fizică) merită.
1. Stai pe ușa AudioSource.
dacă # 40; deschis == true # 41;
# 123;
GetComponent
transformare. animație. crossfade # 40; "Open" # 41; ;
# 125;
.
2. Suspendați colizorul de ușă.