2016-07-18 9 views
0

私はActionScript 3の新機能です。現在、ドロップとスナップを同時にドラッグできるカラーキューブがあるゲームを作成しています。また、キューブのドラッグアンドドロップも無制限(クローン)です。私は別のカラーキューブを一緒にスナップすることができましたが、同じ色のキューブはスナップしませんでした。ドロップ時に同じ色立方体の別の名前を設定しようとしましたが、違いはありません。誰でも私の間違いがどこにあるのか、どのように修正するのか教えてくれますか?以下は白いキューブのコードです。私は、あなたがそうではなくそれよりも、if文の内側にドラッグ&ドロップの機能actionscript 3

var whiteCubes : MovieClip = new myWhiteCubes(); 

を使用していた

import flash.display.MovieClip; 
    import flash.events.MouseEvent; 

var myWhiteCubes = new MovieClip(); 
white.addEventListener (MouseEvent.MOUSE_DOWN, whitePressed); 
function whitePressed (event:MouseEvent):void 
{ 
myWhiteCubes = new White(); 
myWhiteCubes.x = event.stageX; 
myWhiteCubes.y = event.stageY; 
addChild(myWhiteCubes); 
myWhiteCubes.startDrag(); 
myWhiteCubes.addEventListener(MouseEvent.MOUSE_DOWN, cloneWhitePressed); 
} 

function cloneWhitePressed (event:MouseEvent):void 
{ 
myWhiteCubes = MovieClip(event.currentTarget); 
addChild(myWhiteCubes); 
myWhiteCubes.startDrag(); 
var topPos:uint = this.numChildren - 1; 
this.setChildIndex(myWhiteCubes,topPos); 
myWhiteCubes.buttonMode = true; 
} 

stage.addEventListener (MouseEvent.MOUSE_UP, cloneWhiteReleased); 
function cloneWhiteReleased (event:MouseEvent) : void 
{ 
myWhiteCubes.stopDrag(); 

if (myWhiteCubes.hitTestPoint(myWhiteCubes.x+50,myWhiteCubes.y+10,true)) 
{ 
var whiteCubes : MovieClip = new myWhiteCubes(); 
    whiteCubes.x = myWhiteCubes.x + 46; 
    whiteCubes.y = myWhiteCubes.y; 
} 

if (myWhiteCubes.hitTestPoint(latestTaro.x+50,latestTaro.y+10,true)) 
{ 
    myWhiteCubes.x = latestTaro.x + 46; 
    myWhiteCubes.y = latestTaro.y; 
} 

if (myWhiteCubes.hitTestPoint(latestPurple.x+50,latestPurple.y+10,true)) 
{ 
    myWhiteCubes.x = latestPurple.x + 46; 
    myWhiteCubes.y = latestPurple.y; 
} 

if (myWhiteCubes.hitTestPoint(latestBlue.x+50,latestBlue.y+10,true)) 
{ 
    myWhiteCubes.x = latestBlue.x + 46; 
    myWhiteCubes.y = latestBlue.y; 
} 

if (myWhiteCubes.hitTestPoint(latestPurple.x+50,latestPurple.y+10,true)) 
{ 
    myWhiteCubes.x = latestPurple.x + 46; 
    myWhiteCubes.y = latestPurple.y; 
} 

if (myWhiteCubes.hitTestPoint(latestBlue.x+50,latestBlue.y+10,true)) 
{ 
    myWhiteCubes.x = latestBlue.x + 46; 
    myWhiteCubes.y = latestBlue.y; 
} 

if (myWhiteCubes.hitTestPoint(latestTurquois.x+50,latestTurquois.y+10,true)) 
{ 
    myWhiteCubes.x = latestTurquois.x + 46; 
    myWhiteCubes.y = latestTurquois.y; 
} 

if (myWhiteCubes.hitTestPoint(latestLime.x+50,latestLime.y+10,true)) 
{ 
    myWhiteCubes.x = latestLime.x + 46; 
    myWhiteCubes.y = latestLime.y; 
} 

if (myWhiteCubes.hitTestPoint(latestYellow.x+50,latestYellow.y+10,true)) 
{ 
    myWhiteCubes.x = latestYellow.x + 46; 
    myWhiteCubes.y = latestYellow.y; 
} 

if (myWhiteCubes.hitTestPoint(latestOrange.x+50,latestOrange.y+10,true)) 
{ 
    myWhiteCubes.x = latestOrange.x + 46; 
    myWhiteCubes.y = latestOrange.y; 
} 

if (myWhiteCubes.hitTestPoint(latestRed.x+50,latestRed.y+10,true)) 
{ 
    myWhiteCubes.x = latestRed.x + 46; 
    myWhiteCubes.y = latestRed.y; 
} 



} 

white.buttonMode = true; 

答えて

1

:-)あなたの助けを感謝する関数宣言の下にそれを使用したい

function cloneWhitePressed (event:MouseEvent):void 
{ 
var whiteCubes : MovieClip = new myWhiteCubes(); 
関連する問題