Announcement

Collapse
No announcement yet.

Advance Movie Clip While Draging (AS3)

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Advance Movie Clip While Draging (AS3)

    Ok, so I've been trying to learn AS3 and I've got a pretty good handle on being able to "read" it, but I'm having a hard time trying to wrap my head around "writing" it.

    What I am trying to do is clicking on a movie clip and dragging it, but as I drag it I want it to advance frame by frame (for example, I drag the movie clip one pixel from the original place and the movie clip would advance one frame)

    So, right now, I just have a movie clip on my stage and here is the actionscript for it...

    Code:
    grow_mc.addEventListener(MouseEvent.MOUSE_DOWN, dragGrow);
    
    function dragGrow(event:MouseEvent):void
    {
        grow_mc.nextFrame();
        grow_mc.startDrag();
        grow_mc.removeEventListener(MouseEvent.MOUSE_DOWN, dragGrow);
        grow_mc.addEventListener(MouseEvent.MOUSE_UP, dropGrow);
    }
    
    function dropGrow(event:MouseEvent):void
    {
        grow_mc.stopDrag();
        grow_mc.addEventListener(MouseEvent.MOUSE_DOWN, dragGrow);
        grow_mc.removeEventListener(MouseEvent.MOUSE_UP, dropGrow);
    }
    Of course, it only advances one frame on the MOUSE_DOWN, so to get it to advance again I would need to "drop" it and then click on it to start dragging.

    Also, I wonder, should I just make a mathematical function since the tween is just scaling the object?

    Just kind of stuck.. any insight would be much appreciated. Thanks in advance.
    [insert clever signature here]

  • #2
    Code:
    grow_mc.addEventListener(MouseEvent.MOUSE_DOWN, dragGrow);
    
    function dragGrow(event:MouseEvent):void
    {
        grow_mc.startDrag();
        grow_mc.removeEventListener(MouseEvent.MOUSE_DOWN, dragGrow);
        grow_mc.addEventListener(MouseEvent.MOUSE_UP, dropGrow);
        
        
        grow_mc.addEventListener(MouseEvent.MOUSE_MOVE, advanceGrow);
        function advanceGrow(event:MouseEvent):void
        {
            grow_mc.nextFrame();
        }
    }
    
    function dropGrow(event:MouseEvent):void
    {
        grow_mc.stopDrag();
        grow_mc.addEventListener(MouseEvent.MOUSE_DOWN, dragGrow);
        grow_mc.removeEventListener(MouseEvent.MOUSE_UP, dropGrow);
    }
    Ok, so made a couple of changes... and I got it to advance while dragging... I'm going to keep tweaking with it though because it would be kind of cool for it to be relative to a certain point, like if I could make it appear as if the user was "dragging" the object closer to them... so when you drag it to the right it grows, but when you drag it to the left it shrinks.

    Sorry if this thread is annoying, but I figure in the least it could potentially spark a couple of ideas or answer a future question.
    [insert clever signature here]

    Comment

    Search

    Collapse

    Advertisement

    Collapse

    Latest Topics

    Collapse

    • ChrisJW
      Time for a UX overhaul...opinions welcome
      ChrisJW
      Hi everyone,

      So I work for a web design agency in Sydney and we're overhauling the website. Our 3 focus pages are our home, portfolio and services (where 80% of our users go).
      ...
      Today, 09:32 AM
    • btwenty1
      Hello
      btwenty1
      Hi everyone,

      Just joined because this looks like a great forum for graphic design.
      I currently work as a graphic designer for a gaming company but I am looking for any tips, info and...
      Today, 09:25 AM
    • max86
      Design Layout
      max86
      I do a lot of power sports wraps such as snowmobiles, dirt bikes, waverunners, and ATVs. I usually just show proofs laid out on the template, but have recently started laying them out on the actual...
      Today, 09:10 AM
    • vdeshof
      Reply to Chinese Food, guess what are they
      vdeshof
      Well, I'm sure it's not the famous Peking Duck ^^
      Today, 08:53 AM
    • StudioMonkey
      Reply to identify font from logo.
      StudioMonkey
      Point well taken about Range Rover / Garamond and England / France. However this particular British national pride of an automaker is now owned by Indian conglomerate Tata Group (India once of the British...
      Today, 07:58 AM

    GDF A division of Mediabistro Holdings Adweek | Mediabistro | Clio | Film Expo Group Contact Us | Terms of Use | Privacy Policy Copyright 2016 Mediabistro Holdings
    Working...
    X