2016-12-16 13 views
0

私はこのコードをfunctionnalにするのに苦労しています。私はかなり新しいコーディングと日常学習をしています。私はこれまでだのはここhittestobjectドラッグアンドドロップで複数の機能を使用する

です:

  • a1がドラッグアンドドロップオブジェクトである
  • A2 A1は、その上にドロップされたときに、テキストフィールドに値5を追加した領域は、ある
  • A3はA1がその上にドロップされた領域であり、テキストフィールド

に値5をsubstract A1 IのA2に、A1ドラッグすると、私はバックにドラッグすると、それは、5を示し、A3領域に開始しますa3、それは0を示すので、それはうわーです意図したとおりにrking


今、私が苦労するもの:

  • A1がA2に既に存在するとき、私は、A1とA2を移動した場合に5を追加しないコード。
  • a3がすでにa3であるときに、a1をa3に移動すると5を引くことのないコード。

    var myTextBox:TextField = new TextField(); 
    
    var myTextBox2:TextField = new TextField(); 
    addChild(myTextBox2); 
    myTextBox2.width = 200;  
    myTextBox2.height = 100;  
    myTextBox2.x = 100;  
    myTextBox2.y = 20; 
    
    a1.addEventListener(MouseEvent.MOUSE_DOWN, drag); 
    stage.addEventListener(MouseEvent.MOUSE_UP, drop); 
    
    function drag(e:MouseEvent):void 
    { 
    e.target.startDrag(); 
    } 
    
    function drop(e:MouseEvent):void 
    { 
    stopDrag(); 
    if (a1.hitTestObject(a2)) 
    { 
        myTextBox.text = "5"; 
        var r:String=String(uint(myTextBox.text)+uint(myTextBox2.text)); 
        myTextBox2.text=r; 
    } 
    if (a1.hitTestObject(a3)) 
    { 
        myTextBox.text = "5"; 
        var r2:String=String(uint(myTextBox2.text)-uint(myTextBox.text)); 
        myTextBox2.text=r2; 
    } 
    
    else 
    { 
        trace("No collision."); 
    } 
    } 
    

    私はそれがあまりにも複雑だとは思わないが、私はそれを動作させるためにはまだ知識を持っていない、どのような援助がいただければ幸いです:

は、ここに私のコードです!ありがとう!

答えて

0

わかりました。誰かが必要な場合に備えてコードを投稿する方法を見つけましたか、誰かがより良いコードを持っていれば、常に勉強したい!ありがとう!

追加された複数のドラッグ&ドロップでテストするA4と命名可動物体は、

var myTextBox:TextField = new TextField(); 
var myTextBox2:TextField = new TextField(); 
var myTextBox3:TextField = new TextField(); 
addChild(myTextBox2); 
myTextBox2.width = 200;  
myTextBox2.height = 100;  
myTextBox2.x = 100;  
myTextBox2.y = 20; 

a1.addEventListener(MouseEvent.MOUSE_DOWN, drag); 
a1.addEventListener(MouseEvent.MOUSE_UP, drop); 
a4.addEventListener(MouseEvent.MOUSE_DOWN, drag); 
a4.addEventListener(MouseEvent.MOUSE_UP, drop); 

function drag(e:MouseEvent):void 
{ 
if (e.target.hitTestObject(a2)) 
{ 
    e.target.startDrag(); 
    myTextBox.text = "0"; 
    myTextBox3.text = "5"; 
} 
if (e.target.hitTestObject(a3)) 
{ 
    e.target.startDrag(); 
    myTextBox.text = "5"; 
    myTextBox3.text = "0"; 
} 
} 

function drop(e:MouseEvent):void 
{ 
stopDrag(); 
if (e.target.hitTestObject(a2)) 
{ 
    var r:String=String(uint(myTextBox.text)+uint(myTextBox2.text)); 
    myTextBox2.text=r; 
} 
if (e.target.hitTestObject(a3)) 
{ 
    var r2:String=String(uint(myTextBox2.text)-uint(myTextBox3.text)); 
    myTextBox2.text=r2; 
} 
} 
オブジェクト
関連する問題