アクションスクリプトのフォトビューアの制作にあったての質問
フォトビューア作成で困っています。
http://hfm-kenchan.com/Lesson/sample/daniwell_3d.htm
これがサンプルのフラッシュです。
各BOXごとにムービクリップローダーで外部からイメージ写真を読み込ませるところまでできたのですが
画面の中央に来た写真をクリックすると拡大表示されて、マウスが写真上からなくなると元に戻るようにしたいのですどうしてもできません。
これが、そのスクリプトです。
Stage.scaleMode = "exactFit";
var yoko :Number = 4;
var oku :Number = 4;
var edge :Number = 5;
var cx :Number = 320;
var cy :Number = 0;
var vp :Number = 200;
var sx :Number = 400;
var sy :Number = 240;
var sz :Number = 100;
var nx :Number = 0;
var nz :Array = new Array();
var ax :Array = new Array();
var az :Array = new Array();
function func_projection ( px :Number, py :Number, pz :Number, cx :Number, cy :Number, f :Number ) :Object {
var s :Number = f /( f - pz );
var obj :Object = new Object();
obj.x = cx + s * px;
obj.y = cy + s * py;
obj.s = s * 100;
return( obj );
}
var mcl :MovieClipLoader = new MovieClipLoader();
var listener :Object = new Object();
listener.onLoadInit = function ( mc :MovieClip ) {
mc._x = -mc._width/2;
mc._y = -mc._height/2;
with ( mc._parent.back ) {
_width = mc._width + edge*2;
_height = mc._height + edge*2;
_x = mc._x - edge;
_y = mc._y - edge;
}
}
mcl.addListener( listener );
for ( var i = 0; i < yoko; i ++ ) {
az[ i ] = new Array();
for ( var k = 0; k < oku; k ++ ) {
var mc :MovieClip = _root.attachMovie( "box", "box"+ i +"_"+ k, (yoko-k) * yoko + i );
mc.createEmptyMovieClip( "image_load", 0 );
mcl.loadClip( "image"+ i +"/image"+k+".jpg", mc.image_load );
var obj :Object = func_projection( i * sx, sy, - k * sz, cx, cy, vp );
mc._x = obj.x;
mc._y = obj.y;
mc._xscale = mc._yscale = obj.s;
mc.i = i;
mc.k = k;
mc.onPress = function ( ) {
nx = this.i;
for ( var i = 0; i < yoko; i ++ )
nz[ i ] = 0;
nz[ this.i ] = this.k;
}
az[ i ][ k ] = - k * sz;
}
ax[ i ] = i * sx;
nz[ i ] = 0;
}
_root.onEnterFrame = function ( ) {
for ( var i = 0; i < yoko; i ++ ) {
ax[ i ] += ( (i-nx) * sx - ax[ i ] ) / 5;
for ( var k = 0; k < oku; k ++ ) {
var mc :MovieClip = _root[ "box"+ i +"_"+ k ];
mc.swapDepths( (yoko-k+nz[i]) * yoko + i );
az[ i ][ k ] += ( (-k+nz[ i ]) * sz - az[ i ][ k ] ) / 5;
if ( az[ i ][ k ] <= 0 )mc._alpha = 100;
else mc._alpha = (sz-az[ i ][ k ])/sz * 100;
if ( 1 < mc._alpha ) mc._visible = true;
else mc._visible = false;
var obj :Object = func_projection( ax[ i ], 240, az[ i ][ k ], cx, cy, vp );
mc._x = obj.x;
mc._y = obj.y;
mc._xscale = mc._yscale = obj.s;
}
}
}
http://hfm-kenchan.com/Lesson/contents/index.htm
このサイトを参考にしています。
アクションスクリプトに詳しい方
よろしくお願いします。