0
目前我有一個腳本,當你打一個立方體時,它跟隨着玩家......但是當你站立時它與你重疊。我想要的是能夠將立方體的位置始終設置在玩家後面五步......我將如何做到這一點?使立方體跟隨字符落後五個步驟統一
GameObject.Find("Cube2").transform.position = Vector3(0.5, 0.5, 0.5);
這就是我到目前爲止所嘗試的,但這只是使立方體消失?
腳本的全部:
static var target : Transform; //the enemy's target
var moveSpeed = 3; //move speed
var rotationSpeed = 3; //speed of turning
var Player = GameObject.Find("Player").transform.position;
var Cube2 = GameObject.Find("Cube2").transform.position;
var myTransform : Transform; //current transform data of this enemy
function Awake()
{
//myTransform = transform; //cache transform data for easy access/preformance
}
function Start()
{
//target = GameObject.FindWithTag("Player1").transform; //target the player
}
//var distance = Vector3.Distance(Player.transform.position, Cube2.transform.position);
//Debug.Log(distance);
function Update() {
Debug.Log(Player);
//var distance = Vector3.Distance(Player.transform.position, Cube2.transform.position);
//var distance = Vector3.Distance(player_distance, cube_distance);
// if (distance > 5)
// {
if (target == GameObject.FindWithTag("Player").transform)
{
//rotate to look at the player
GameObject.Find("Cube2").transform.position = Vector3(0.5, 0.5, 0.5);
myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);
//move towards the player
myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
}
//}
}
您應該跟蹤播放器並測量從播放器到立方體的距離。當它超過目標距離時,移動立方體 - 將立方體位置設置爲'Vector3(0.5,0.5,0.5)'將其設置爲絕對位置。我以前沒有寫過任何統一腳本,但如果您願意,我可以在解決方案中使用 – Charleh