2017-03-16 60 views
0

我正在嘗試在動作腳本2上創建縮放和平移選項。我想在舞臺上不要在動畫片段上做它。我已經做了一個基本的編碼,但我想創建拖動和縮放選項。任何幫助,將不勝感激。動作腳本2上的平移和縮放階段

這是我的代碼。我有舞臺上的兩個電影剪輯放大和縮小舞臺

zoom_mc.onPress = function() { 
    var zinxpos:Number; 
    var zinypos:Number; 
    zinxpos=zoom_mc._x; 
    zinypos=zoom_mc._y; 
    zoom_mc.onEnterFrame = function() { 
    Mouse.hide(); 
    this._x = _root._xmouse; 
    this._y = _root._ymouse; 
    } 
    _root.onMouseDown = function() { 
    this._xscale+=10; 
    this._yscale+=10; 
} 
} 

zoomout_mc.onPress = function() { 
    zoom_mc._x=zinxpos; 
    zoom_mc._y=zinypos; 
    zoomout_mc.onEnterFrame = function() { 
    Mouse.hide(); 
    this._x = _root._xmouse; 
    this._y = _root._ymouse; 
    } 
    _root.onMouseDown = function() { 
    this._xscale-=10; 
    this._yscale-=10; 
} 
} 
+0

更好的選擇是使用與舞臺相同大小的動畫片段。使用MC作爲所有內容的容器,然後在其上放置舞臺大小的** mask **(新圖層)。現在您可以擴大內容MC的大小(出現放大/放大),或者您可以更改內容MC的** x **或** y **位置以模擬平移。內容MC僅通過蒙版可見(因爲蒙版是畫布/舞臺大小),這將模擬您想實現的縮放/平移效果... –

回答

0

這應該做的工作。

var $stage = this; 
var isDragging = false; 
var mouseDownX = 0; 
var mouseDownY = 0; 

$stage.onEnterFrame = function() {  
    if(isDragging){ 
     $stage._x += $stage._xmouse - mouseDownX; 
     $stage._y += $stage._ymouse - mouseDownY; 
    }  
} 

$stage.onMouseDown = function() { 
    isDragging = true; 
    mouseDownX = $stage._xmouse; 
    mouseDownY = $stage._ymouse; 
} 

$stage.onMouseUp = function() { 
    isDragging = false; 
} 

zoom_mc.onPress = function() { 
    $stage._xscale += 10; 
    $stage._yscale += 10; 
} 

zoomout_mc.onPress = function() { 
    $stage._xscale -= 10; 
    $stage._yscale -= 10;  
}