-1

我想我开始喜欢这种编码的东西了。无论如何,在我目前的射击画廊项目中,我有一个 JavaScript 问题。我在 Unity3d 中构建,并且在下面插入的代码中出现“转换”不是“对象”错误的成员。

var newball;
static var tempBasketBall :Rigidbody;
private var canFire = true;
var pos :Transform[];
var ball1 :Rigidbody;
var canControl1 = true;
var destroyTime :int = 6;
var player1 :GameObject;
var b1Parent :Transform;

var yVel :float;
var zVel :float;

function Start()
{
    ball1 = Instantiate (tempBasketBall, pos[0].position, pos[0].rotation);
    ball1.transform.parent = b1Parent;
}

function Update() { 
    if(Input.GetButton("Fire1"))
        animation.PlayQueued("fire", QueueMode.PlayNow);   
}

function TapFunction() {
    animation.PlayQueued("fire", QueueMode.PlayNow);
    player1.animation.PlayQueued("fire");
    ball1.transform.parent = null;
    ball1.useGravity = true;
    ball1.velocity = transform.TransformDirection(0, yVel, zVel);
    MakeBall1(pos[0]);
    canControl1 = false;
    player1.animation.PlayQueued("idle");
}

function MakeBall1(pos)
{
    yield new WaitForSeconds(1);
    ball1 = Instantiate(tempBasketBall, pos.transform.position, pos.transform.rotation);
    ball1.transform.parent = b1Parent;
    canControl1 = true;
}

错误在最后的 MakeBall 函数中。在我未经训练的头脑中,似乎我在 start 函数中建立了变换。像往常一样,我们将非常感谢任何帮助和共享知识。

4

1 回答 1

0

转换(您将传递此提示的一个参数作为参数)没有“转换”成员,您应该使用 pos.position

于 2011-10-18T12:24:36.230 回答