Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 Actionscript 3-在同一项目中将一个变量从一个对象传递到另一个对象_Actionscript 3_Flash_Variables - Fatal编程技术网

Actionscript 3 Actionscript 3-在同一项目中将一个变量从一个对象传递到另一个对象

Actionscript 3 Actionscript 3-在同一项目中将一个变量从一个对象传递到另一个对象,actionscript-3,flash,variables,Actionscript 3,Flash,Variables,我对ActionScript3相当陌生,但我正在研究它,并试图通过阅读和修改ActionScript源代码来学习 到目前为止一切都很好,但是我偶然发现了一个我自己似乎无法解决的问题。这对你们来说应该很简单 情况: 我得到了一个可以点击的对象,它给出了一个随机值,这个值也保存在一个变量中。 我得到了另一个物体,它做同样的事情,但只是有一个不同的名字。 我希望将第一个对象中的变量传递给第二个对象,我如何才能做到这一点?传递值的一种方法依赖于使用对对象的引用 // mc1 and mc2 exist

我对ActionScript3相当陌生,但我正在研究它,并试图通过阅读和修改ActionScript源代码来学习

到目前为止一切都很好,但是我偶然发现了一个我自己似乎无法解决的问题。这对你们来说应该很简单

情况:

我得到了一个可以点击的对象,它给出了一个随机值,这个值也保存在一个变量中。 我得到了另一个物体,它做同样的事情,但只是有一个不同的名字。
我希望将第一个对象中的变量传递给第二个对象,我如何才能做到这一点?

传递值的一种方法依赖于使用对对象的引用

// mc1 and mc2 exist as movieclips on the stage

mc1.addEventListener( MouseEvent.CLICK, onClick );
mc2.addEventListener( MouseEvent.CLICK, onClick );

function onClick( event:MouseEvent ):void
{
    // reference clicked movieclip through click target
    var mc:MovieClip = event.target as MovieClip;

    // if our clip matches one, assign the other clip the value.
    if ( mc === mc1 )
    {
        mc2.value = mc.value;
    }
    else if ( mc === mc2 )
    {
        mc1.value = mc.value;
    }
}

传递引用的方法有一千种,这只是其中之一。

好吧,伙计们,让我向你们展示代码的重要部分,因为我付了钱,我不知道作者是否同意我发布所有内容

我在那里找到了这两件东西。当我点击一个骰子对象时,它基本上给出了这个代码

var faceValue:int = 6;

// Add mouse click functionality to roll the die
addEventListener(MouseEvent.CLICK, onClickDie, false, 0, true);
mouseChildren = false;
buttonMode = true;

function onClickDie(e:MouseEvent):void {
    removeEventListener(MouseEvent.CLICK, onClickDie);
    buttonMode = false;

    // Initiate the roll-out sequence
    if(faceValue == 6) {
        gotoAndPlay("rollout6");
         etc...
然后,在旋转骰子的帧中的某个位置,它将一个数字随机化,并将其保存到facevalue中

// Calculate a random face value between 1 and 6
faceValue = 1 + Math.floor(Math.random()*6);

// Initiate the roll-in sequence
if(faceValue == 6) {
    gotoAndPlay("rollin6");
    ...etc

现在,我如何从旋转的骰子框中获得随机的面值,并将其传递给另一个骰子?

能否发布一些代码让我们理解?在给定的信息有限的情况下,第一个对象是可单击的,因此您可以使用eventlisteners。让另一个对象监听并获取数据?你基本上想让两个对象共享该值并允许其中一个将其设置为新值吗?我现在添加了源代码;