Skip to main content
October 8, 2012
Question

What code blue or red hit with one if?

  • October 8, 2012
  • 1 reply
  • 656 views


What code can be written so that it looked for a blue hit or a red hit with only one if?

package
{
//class name defined or symbol in library
import flash.display.Sprite;
import flash.events.MouseEvent;
public class Drag extends Sprite {;

var redCircle:Sprite;
var redRect:Sprite;
var blueCircle:Sprite;
var blueRect:Sprite;


public function Drag()
{
  redCircle=new redCircle_mc();
  redCircle.x = 300;
  redCircle.y = 100;
  addChild(redCircle);

  blueCircle=new blueCircle_mc();
  blueCircle.x = 10;
  blueCircle.y = 10;
  addChild(blueCircle);

  redRect=new redRect_mc();
  redRect.x = 200;
  redRect.y = 300;
  addChild(redRect);

  blueRect=new blueRect_mc();
  blueRect.x = 100;
  blueRect.y = 200;
  addChild(blueRect);

  redCircle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
  redCircle.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);

  blueCircle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
  blueCircle.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);


  function mouseDownHandler(evt:MouseEvent):void
  {
   var mouseDownObject = evt.target;
   mouseDownObject.startDrag();


  }


  function mouseUpHandler(evt:MouseEvent):void
  {
   var mouseUpObject = evt.target;
   mouseUpObject.stopDrag();

   if (redCircle.hitTestObject(redRect))
   {
    trace("RED HIT");
   }
   if (blueCircle.hitTestObject(blueRect))
   {
    trace("BLUE HIT");

   }
  }
}

}
}

This topic has been closed for replies.

1 reply

Ned Murphy
Legend
October 8, 2012

Is this what you are asking?

if (redCircle.hitTestObject(redRect) || blueCircle.hitTestObject(blueRect))

{

    trace("RED HIT or BLUE HIT");

}

October 9, 2012

What did I do wrong?

package
{
//class name defined or symbol in library
import flash.display.Sprite;
import flash.events.MouseEvent;
public class Drag extends Sprite {;

var redCircle:Sprite;
var redRect:Sprite;
var blueCircle:Sprite;
var blueRect:Sprite;


public function Drag()
{
  redCircle=new redCircle_mc();
  redCircle.x = 300;
  redCircle.y = 100;
  addChild(redCircle);

  blueCircle=new blueCircle_mc();
  blueCircle.x = 10;
  blueCircle.y = 10;
  addChild(blueCircle);

  redRect=new redRect_mc();
  redRect.x = 200;
  redRect.y = 300;
  addChild(redRect);

  blueRect=new blueRect_mc();
  blueRect.x = 100;
  blueRect.y = 200;
  addChild(blueRect);

  redCircle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
  redCircle.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);

  blueCircle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
  blueCircle.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);


  function mouseDownHandler(evt:MouseEvent):void
  {
   var mouseDownObject = evt.target;
   mouseDownObject.startDrag();


  }

  function mouseUpHandler(evt:MouseEvent):void
  {
   var mouseUpObject = evt.target;
   mouseUpObject.stopDrag();


    //test here//
    if (redCircle.hitTestObject(redRect)) blueCircle.hitTestObject(blueRect))

{
    trace("RED HIT or BLUE HIT");
}


   }
  }
}

}
}

Ned Murphy
Legend
October 9, 2012

As far as using the code I showed, you did not do that, so that is possibky what you did wrong