[flash]拉覇效果的banner partII

LINEで送る
[`evernote` not found]

第一版會當掉的問題應該是flash的tween的問題了
今天google了一下換tweener來試了一下
目前是沒有發生同樣的情形
不愧是高手高高手開發的東西阿

tweener還提供許多動態路線可以使用(這邊也有)
能做的當然也不只位移
模糊 大小 比例 透明 顏色….都可以
不過有的要先初始化才能控制到
像是要控制BLUR的話要先FilterShortcuts.init()
要控制COLOR的話要先ColorShortcuts.init()
不過每初始化一樣都會增加SWF的大小
可以參考節自官網的下表

Class path and nameDescriptionApproximate addition to SWF size
caurina.transitions.properties.ColorShortcutsIncludes properties for manipulating the color of display objects, such as individual channel multiplier and offsets, and special coloring such as hue, saturation, brightness and contrast.2.2 kb
caurina.transitions.properties.CurveModifiersModifiers that provide some kind of change for normal tweenings; right now, the bezier curve only.0.4 kb
caurina.transitions.properties.DisplayShortcutsSpecial properties for display objects such as Sprites, MovieClips, and TextField instances, include modifiers for visibility, frame position, and scrollRect size.0.8 kb
caurina.transitions.properties.FilterShortcutsA list of special properties that simplify the tweening of the built-in bitmap filters such as Blur, Glow, and many others.3.5 kb
caurina.transitions.properties.SoundShortcutsSpecial properties used when controlling sound.0.2 kb
caurina.transitions.properties.TextShortcutsAdditional special properties used to change some specific TextField properties, such as TextFormat properties, and the text content itself.0.9 kb

還有一個很方便的是它連EventListener也內建了
很容易就可以呼叫下一個動作並帶入參數
加上延遲的時間
很直覺性的可以做出希望完成的動作~

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import caurina.transitions.Tweener;
import caurina.transitions.properties.FilterShortcuts;
FilterShortcuts.init();
stage.frameRate =30;
 
var blurMax:Number = 64;
var loopMax:Number = 3;
var stopArr :Array = new Array("",-142,-99,-51,0);
var atArr :Array = new Array("","44444","33333","22222","11111");
var newgoAt:Number;
function init():void {
	for (var i=1; i<=5; i++) {
		var tmc:MovieClip = this["mov"+i+"_mc"];
		tmc.gotoAndStop(i);
	}
	movebar();
	newgoAt = 1;
	var playbar = setInterval(movebar , 6000);
}
 
 
function movebar():void {
	newgoAt ++;
	newgoAt = newgoAt >4? 1:newgoAt;
	for (var i=1; i<=5; i++) {
		var tmc:MovieClip = this["mov"+i+"_mc"];
		tmc.looptime = 0;
		setTimeout(next1,300*i,tmc);
	}
}
 
function next1(m:MovieClip):void {
	Tweener.addTween(m, {y:100, time:1, transition:"easeInQuint", onComplete:next2,onCompleteParams:[m]});
	Tweener.addTween(m, {_Blur_blurY:4, time:2.5, transition:"easeInQuint", onComplete:next2,onCompleteParams:[m]});
}
function next2(m:MovieClip) {
	m.y = -140;
	if(m.looptime<loopMax){
		m.looptime++;
		Tweener.addTween(m, {y:150, time:0.5, transition:"linear"});
		Tweener.addTween(m, {_Blur_blurY:blurMax, time:0.5, transition:"linear", onComplete:next2,onCompleteParams:[m]});
	}else{
		next3(m);
	}
}
 
function next3(m:MovieClip) {
	var num:Number = int(m.name.substr(3,1))-1;
	var stopAt:Number = stopArr[atArr[newgoAt].substr(num,1)];
	m.y = stopAt-150;
	Tweener.addTween(m, {y:stopAt, time:0.5, transition:"easeOutExpo"});
	Tweener.addTween(m, {_Blur_blurY:0, time:0.5, transition:"easeOutExpo"});
}
 
init();

改用tweener後程式碼感覺也簡單多了~

141 則迴響於《[flash]拉覇效果的banner partII

  1. 你好 我也正在做拉霸
    但怎麼做就是不像
    你做的好真實!
    可以跟您要個範例檔來學習一下嗎?
    感謝!

  2. 大大!好好玩的東西喔!

    不知道是否可以給我範例檔案
    我想要學習看看!
    謝謝您!

    原來拉霸機的效果就是這樣做出來的喔!

  3. 您好,看了你的範例的效果真是不錯
    蠻像真實的效果的!

    可以請你給我一份範例嗎?

    謝謝!!!

  4. 可以控制每列的停放嗎?
    或是控制每列最後要顯示的圖案?
    例如第一次我想要隨機
    第二次就中獎

  5. 這個我之前有研究過但是速度一直不流暢,請問一下大大可以提供檔案給小弟研究一下嗎???非常感謝!!!

  6. 大大這個效果不錯耶

    可以寄範例檔案給我嗎 ~~~ 超想學的!!!

    目前有一點點基礎 想要研究看看 ~~~

  7. 喔~超酷的~

    最近都在研究 Tweener 的效果

    不知道你可否寄
    這個範例擋給我呢?

    Thanks 啦~

  8. 這位大大真是利害!
    我找了好久這種效果教學!終於給我找到了!
    但是搞了老半天還是搞不出來= =||a
    在這懇請您分享一下範例檔給小弟研究研究!

    真是太感謝您了!麻煩您了!

  9. 大大!好好玩的東西喔!

    不知道是否可以給我範例檔案
    我想要學習看看!
    謝謝您!

    原來拉霸機的效果就是這樣做出來的喔!

回應已關閉。