home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Diversos / animal_artist.swf / scripts / Gamefile / PencilTool.as < prev    next >
Encoding:
Text File  |  2008-09-05  |  5.0 KB  |  192 lines

  1. package Gamefile
  2. {
  3.    import flash.display.MovieClip;
  4.    import flash.display.SimpleButton;
  5.    import flash.events.Event;
  6.    import flash.events.MouseEvent;
  7.    import flash.filters.GlowFilter;
  8.    
  9.    public class PencilTool
  10.    {
  11.        
  12.       
  13.       public var PencilMC:MovieClip;
  14.       
  15.       public var drawFlag:Boolean;
  16.       
  17.       private var pencilColor:uint;
  18.       
  19.       private var movingFlag:Boolean;
  20.       
  21.       public var pencilArr:Array;
  22.       
  23.       public const operateType:int = 3;
  24.       
  25.       private var previousBtn:SimpleButton;
  26.       
  27.       private var pencilBtnFilter:GlowFilter;
  28.       
  29.       private var PARENT:MovieClip;
  30.       
  31.       private var _brushBtn_:SimpleButton;
  32.       
  33.       private var pencilSize:int;
  34.       
  35.       public var pencilType:int;
  36.       
  37.       public function PencilTool(param1:MovieClip)
  38.       {
  39.          super();
  40.          initPencilTool(param1);
  41.       }
  42.       
  43.       private function choosePencil(param1:MouseEvent) : *
  44.       {
  45.          if(movingFlag == false)
  46.          {
  47.             SoundsManager.playSound("_GameMouseDown_");
  48.             pencilGlowFilter();
  49.             pencilType = 2;
  50.             PARENT.dispatchEvent(new Event("choosePencil",true));
  51.          }
  52.       }
  53.       
  54.       private function initProperty() : *
  55.       {
  56.          pencilBtnFilter = new GlowFilter(16776960,1,10,10,10,1,false,false);
  57.          pencilType = 0;
  58.          pencilSize = 1;
  59.          pencilArr = new Array();
  60.          drawFlag = false;
  61.          pencilColor = 16737380;
  62.          pencilSize = 10;
  63.          movingFlag = false;
  64.       }
  65.       
  66.       public function delEvent() : *
  67.       {
  68.          _brushBtn_.removeEventListener(MouseEvent.CLICK,choosePencil);
  69.          _brushBtn_.removeEventListener(MouseEvent.MOUSE_OVER,mouseIsOver);
  70.          _brushBtn_.removeEventListener(MouseEvent.MOUSE_OUT,mouseIsOut);
  71.       }
  72.       
  73.       private function initElement() : *
  74.       {
  75.          _brushBtn_ = PARENT.getChildByName("BrushBtn") as SimpleButton;
  76.       }
  77.       
  78.       public function Pencildrawing(param1:int, param2:int) : *
  79.       {
  80.          PencilMC.graphics.lineTo(param1,param2);
  81.       }
  82.       
  83.       public function pencilGlowFilter() : *
  84.       {
  85.          _brushBtn_.filters = [pencilBtnFilter];
  86.       }
  87.       
  88.       public function getMovingFlag(param1:Boolean) : *
  89.       {
  90.          movingFlag = param1;
  91.       }
  92.       
  93.       public function endPencilDraw(param1:MovieClip, param2:Boolean) : *
  94.       {
  95.          if(drawFlag == false)
  96.          {
  97.             param1.removeChild(PencilMC);
  98.          }
  99.          else if(drawFlag == true && param2 == false)
  100.          {
  101.             pencilArr.push(PencilMC);
  102.             pencilArr.push("end");
  103.             PencilMC.y = PencilMC.y;
  104.             drawFlag = false;
  105.          }
  106.       }
  107.       
  108.       private function mouseIsOut(param1:MouseEvent) : *
  109.       {
  110.          PARENT.dispatchEvent(new Event("mouseIsOut",true));
  111.       }
  112.       
  113.       public function setPencilColor(param1:uint) : *
  114.       {
  115.          pencilColor = param1;
  116.          if(PencilMC != null)
  117.          {
  118.             PencilMC.graphics.lineStyle(pencilSize,pencilColor,1);
  119.          }
  120.       }
  121.       
  122.       public function showPencilArr() : *
  123.       {
  124.          var _loc1_:int = 0;
  125.          _loc1_ = 0;
  126.          while(_loc1_ < pencilArr.length)
  127.          {
  128.             if(pencilArr[_loc1_] != "end")
  129.             {
  130.                pencilArr[_loc1_].visible = true;
  131.             }
  132.             _loc1_++;
  133.          }
  134.       }
  135.       
  136.       private function mouseIsOver(param1:MouseEvent) : *
  137.       {
  138.          if(movingFlag == true)
  139.          {
  140.             PARENT.dispatchEvent(new Event("mouseIsNotEnabled",true));
  141.          }
  142.          else
  143.          {
  144.             SoundsManager.playSound("_GameMouseOver_");
  145.             PARENT.dispatchEvent(new Event("mouseIsOver",true));
  146.          }
  147.       }
  148.       
  149.       private function initEvent() : *
  150.       {
  151.          _brushBtn_.addEventListener(MouseEvent.CLICK,choosePencil);
  152.          _brushBtn_.addEventListener(MouseEvent.MOUSE_OVER,mouseIsOver);
  153.          _brushBtn_.addEventListener(MouseEvent.MOUSE_OUT,mouseIsOut);
  154.       }
  155.       
  156.       public function hidePencilArr() : *
  157.       {
  158.          var _loc1_:int = 0;
  159.          _loc1_ = 0;
  160.          while(_loc1_ < pencilArr.length)
  161.          {
  162.             if(pencilArr[_loc1_] != "end")
  163.             {
  164.                pencilArr[_loc1_].visible = false;
  165.             }
  166.             _loc1_++;
  167.          }
  168.       }
  169.       
  170.       private function initPencilTool(param1:MovieClip) : *
  171.       {
  172.          PARENT = param1;
  173.          initElement();
  174.          initEvent();
  175.          initProperty();
  176.       }
  177.       
  178.       public function clearBtnFilters() : *
  179.       {
  180.          _brushBtn_.filters = [];
  181.       }
  182.       
  183.       public function createPencilMC(param1:MovieClip, param2:int, param3:int, param4:Number) : *
  184.       {
  185.          PencilMC = new MovieClip();
  186.          param1.addChild(PencilMC);
  187.          setPencilColor(param4);
  188.          PencilMC.graphics.moveTo(param2,param3);
  189.       }
  190.    }
  191. }
  192.