005[拡大縮小]

2008/06/10

今回はMCを拡大縮小させるASです。ちょっと初心者には難しくなったような...

拡大縮小させるには、基本的に「_xscale」「_yscale」や「_width」「_height」を使用します。
今回は拡大率、つまり「_xscale」「_yscale」を使った拡大縮小です。

まずは拡大縮小させたいモノを描き、シンボル化しておきます。
インスタンスに対して以下のソースを記述。

*レシピ*

onClipEvent (load) { //インスタンスがロードされたとき
	scale = 100; //scale(変数名)を100にする
	flag = 0; //flag(変数名)を0にする
}
onClipEvent (enterFrame) { //インスタンスが再生されるたび
	_xscale = scale; //幅にscaleを代入する
	_yscale = scale; //高さにscaleを代入する
	if (flag == 0) { //flag=0ならば
		scale++; //scaleに1ずつ足す
		if (scale>300) { //scaleが300より大きくなったら
			flag = 1; //flag=1にする
		}
	} else {
		scale--; //scaleから1ずつ引く
		if (scale<100) { //scaleが100より少なくなったら
			flag = 0; //flag=0に戻す
		}
	}
}

拡大縮小を同時にやろうと思うと、上のような記述になります。要するに最初に拡大率(scale)と条件分岐のためのフラグ(flag)を設定しておかないと、拡大→縮小→拡大→縮小・・・ができないってことです。 (※onClipEventやifにonClipEventがネストできないため)

例えば、無限に拡大や無限に縮小となるとあっさりです。
*****無限拡大*****

onClipEvent (enterFrame) { //インスタンスが再生されるたび
	_xscale += 5; //幅の拡大率に5ずつ足す
	_yscale += 5; //高さの拡大率に5ずつ足す
}

こんな感じです。

ちょっと今回、初心者には難しくなってしまいました。
やっぱり移動、回転ときたら拡大縮小だろ?と思ったんですが...。

ブログランキング・にほんブログ村へ

トラックバック(0)

このブログ記事を参照しているブログ一覧: 005[拡大縮小]

このブログ記事に対するトラックバックURL: http://makuadmin.coresv.com/mt-tb.cgi/27