i have been trying to convert as2 code to as3 for scrollbar. and i managed to do everything except startDrag.
so basicly i want to be able to drag mc called drag but i need x coordinates to remain same only y coordinates should change.
I have been reading tutorials and help file for about 3-4 h now and still dont understand how to do it.
everything works just fine if i dont try to make it move only on y and that x remains same(if i put only startDrag()
this part is what needs to be changed (i think)
function fonpress(event:MouseEvent):void {
drag.startDrag(true, Mysprite);
}
var mySprite:Sprite = this.drag();
this.addChild(mySprite);
drag.addEventListener(MouseEvent.MOUSE_DOWN, fonpress ) ;
and this is how it looked in as2
startDrag(this, false, drag._x, min_y, drag._x, max_y);
here is the full code:
/////////////////////////////////////////////////////////
import fl.transitions.Tween;
import fl.transitions.easing.*;
import flash.events.MouseEvent;
import flash.display.Sprite;
var animacija_skrola:Boolean = true; // kasnjenje scrolla DA/NE
var time:Number =50; // kasnjenje u milisekundama
// y pomak kod skrola
/////////////////////////////////////////////////////////
sadrzaj.mask = maska;
drag.y = maska.y; // pocetna pozicija - drag
var min_y:Number = maska.y;
var max_y:Number = maska.y+maska.height-drag.height;
var dy:Number = maska.height-drag.height;
var d_height:Number = sadrzaj.height-maska.height;
function fdrag(event:Event):void {
var pozicija:Number = Math.round(maska.y-d_height*(drag.y-min_y)/dy);
if (animacija_skrola == false) {
sadrzaj.y = pozicija;
} else {
var motion:Tween = new Tween(sadrzaj, "y", Strong.easeOut, sadrzaj.y, pozicija, time, false);
}
}
this.addEventListener(Event.ENTER_FRAME, fdrag);
//////////////////////////////////////////////////////////////////
function fonpress(event:MouseEvent):void {
drag.startDrag(true, Mysprite);
}
var mySprite:Sprite = this.drag();
this.addChild(mySprite);
drag.addEventListener(MouseEvent.MOUSE_DOWN,fonpress);
function fonrelease(event:MouseEvent):void {
drag.stopDrag(true, Mysprite);
drag.alpha=30;
}
drag.addEventListener(MouseEvent.MOUSE_UP,fonrelease);
function fdragover(event:MouseEvent):void {
drag.alpha=100;
}
drag.addEventListener(MouseEvent.MOUSE_OVER ,fdragover);
function fdragout(event:MouseEvent):void {
drag.alpha=30;
}
drag.addEventListener(MouseEvent.MOUSE_OUT,fdragout);
/////////////////////////////////////////////////////////////////