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
Actionscript 3 我想在actionscript上使用hittestobject创建一个基本draganddrop,但我被卡住了。。我想_Actionscript 3_Actionscript - Fatal编程技术网

Actionscript 3 我想在actionscript上使用hittestobject创建一个基本draganddrop,但我被卡住了。。我想

Actionscript 3 我想在actionscript上使用hittestobject创建一个基本draganddrop,但我被卡住了。。我想,actionscript-3,actionscript,Actionscript 3,Actionscript,有3个目标dogrucevap1,dogrucevap2和dogrucevap3。还有28块拼图 目的是将拼图块(cvp1、cvp2、…cvp28)拖动到目标 拼图块粘贴到目标后不会发生碰撞,每个目标上只有一个拼图块。因此,如果拼图块相互碰撞,它们将返回到第一个位置 我无法将这些碎片恢复到原来的位置 请检查returnfirstposition() var-puzzle:MovieClip=new-MovieClip(); parcalari变量:字符串; var-ilkX:int; var i

有3个目标
dogrucevap1
dogrucevap2
dogrucevap3
。还有28块拼图

目的是将拼图块(
cvp1、cvp2、…cvp28
)拖动到目标

拼图块粘贴到目标后不会发生碰撞,每个目标上只有一个拼图块。因此,如果拼图块相互碰撞,它们将返回到第一个位置

我无法将这些碎片恢复到原来的位置

请检查
returnfirstposition()

var-puzzle:MovieClip=new-MovieClip();
parcalari变量:字符串;
var-ilkX:int;
var ilkY:int;
对于(var i:int=1;i如果“cvp”+i是一个movieclip,您只需添加“originalX”和“originalY”比例,并使用它们返回movieclip:

//将此添加到第一个循环:

var puzzle:MovieClip=new MovieClip(); 
var puzzleparcalari:String;
var ilkX:int;
var ilkY:int;
for (var i:int=1; i<=28; i++)
{
    puzzleparcalari = "cvp" + i;
    puzzle = this[puzzleparcalari];//this["cvp" + i].buttonMode = true;
    this["cvp" + i].addEventListener(MouseEvent.MOUSE_DOWN,surukle);
    this["cvp" + i].addEventListener(MouseEvent.MOUSE_UP,birak);
}


function kontrol(e:Event)   // checking recording first positions as ilkX and ilkY
{
    this["cvp" + i].addEventListener(Event.ENTER_FRAME , kontrol);
    ilkX = this["cvp" + i].x;
    ilkY = this["cvp" + i].y;//this["cvp" + i].removeEventListener(Event.ENTER_FRAME , kontrol);
}




function surukle(e:MouseEvent)  // starting drag and tracing x position 
{
    e.currentTarget.startDrag();
    ilkX = e.currentTarget.x;
    ilkY = e.currentTarget.y;//e.currentTarget.buttonMode = true;
    trace(e.currentTarget.x);
}


var kutucuk:MovieClip=new MovieClip();
var kutucukismi:String;//d1.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
 function returnfirstposition()  /creating return first position function
{
    this.puzzle.x = ilkX;
    this.puzzle.y = ilkY;
}
function birak(e:MouseEvent)
{
    e.currentTarget.stopDrag();

    for (var k:int=1; k<=3; k++)
    {
        kutucukismi = "dogrucevap" + k;
        kutucuk = this[kutucukismi];



        if (e.currentTarget.hitTestObject(this.kutucuk))
        {
            e.currentTarget.x = ilkX;
            e.currentTarget.y = ilkY;
            trace("kutucuk");


            for (var i:int=1; i<=28; i++)
            {
                puzzleparcalari = "cvp" + i;
                puzzle = this[puzzleparcalari];
                if (e.currentTarget.hitTestObject(this.puzzle))
                {
                    e.currentTarget.x = this.kutucuk.x;
                    e.currentTarget.y = this.kutucuk.y;
                    trace("this puzzle a değdi");
                }
                else
                {

                    returnfirstposition();


                }
            }
        }
    }
}
for(变量i:int=1;i
var puzzle:MovieClip=new MovieClip(); 
var puzzleparcalari:String;
var ilkX:int;
var ilkY:int;
for (var i:int=1; i<=28; i++)
{
    puzzleparcalari = "cvp" + i;
    puzzle = this[puzzleparcalari];//this["cvp" + i].buttonMode = true;
    this["cvp" + i].addEventListener(MouseEvent.MOUSE_DOWN,surukle);
    this["cvp" + i].addEventListener(MouseEvent.MOUSE_UP,birak);
}


function kontrol(e:Event)   // checking recording first positions as ilkX and ilkY
{
    this["cvp" + i].addEventListener(Event.ENTER_FRAME , kontrol);
    ilkX = this["cvp" + i].x;
    ilkY = this["cvp" + i].y;//this["cvp" + i].removeEventListener(Event.ENTER_FRAME , kontrol);
}




function surukle(e:MouseEvent)  // starting drag and tracing x position 
{
    e.currentTarget.startDrag();
    ilkX = e.currentTarget.x;
    ilkY = e.currentTarget.y;//e.currentTarget.buttonMode = true;
    trace(e.currentTarget.x);
}


var kutucuk:MovieClip=new MovieClip();
var kutucukismi:String;//d1.addEventListener(MouseEvent.MOUSE_DOWN,surukle);
 function returnfirstposition()  /creating return first position function
{
    this.puzzle.x = ilkX;
    this.puzzle.y = ilkY;
}
function birak(e:MouseEvent)
{
    e.currentTarget.stopDrag();

    for (var k:int=1; k<=3; k++)
    {
        kutucukismi = "dogrucevap" + k;
        kutucuk = this[kutucukismi];



        if (e.currentTarget.hitTestObject(this.kutucuk))
        {
            e.currentTarget.x = ilkX;
            e.currentTarget.y = ilkY;
            trace("kutucuk");


            for (var i:int=1; i<=28; i++)
            {
                puzzleparcalari = "cvp" + i;
                puzzle = this[puzzleparcalari];
                if (e.currentTarget.hitTestObject(this.puzzle))
                {
                    e.currentTarget.x = this.kutucuk.x;
                    e.currentTarget.y = this.kutucuk.y;
                    trace("this puzzle a değdi");
                }
                else
                {

                    returnfirstposition();


                }
            }
        }
    }
}
for (var i:int=1; i<=2; i++)
{
    puzzleparcalari = "cvp" + i;
    puzzle = this[puzzleparcalari];
    this["cvp" + i].addEventListener(MouseEvent.MOUSE_DOWN,surukle);
    this["cvp" + i].addEventListener(MouseEvent.MOUSE_UP,birak);
    this["cvp" + i].originalX=this["cvp" + i].x;
    this["cvp" + i].originalY=this["cvp" + i].y;
}

//and then in you drop function (e.currentTarget is the dropped piece):

if (e.currentTarget.hitTestObject(this.puzzle))
                {
                    e.currentTarget.x = this.kutucuk.x;
                    e.currentTarget.y = this.kutucuk.y;
                    trace("this puzzle a değdi");
                }
                else
                {

                    e.currentTarget.x =  e.currentTarget.originalX;
                     e.currentTarget.y =  e.currentTarget.originalY;

                }