flash 拉霸教學 Part1(超簡單喔!)

  • 11967
  • 0

摘要:flash 拉霸教學 Part1(超簡單喔!)

為什麼會是拉霸呢?這個歷久不衰的小遊戲,

SV也一直以為上網找就有一拖拉庫的程式或範例。

但想不到,SV又錯了!!!!(繼上上一篇的點兩下與上一篇的Android圖片改位置)

 

為了SV最心愛的姊姊(姊姊到底要SV做多少遊戲呀XDD)的寓教於樂,

SV想做類似RandomLife的單行拉霸機。

可是網上都是三行而且超複雜的,SV對google大神無奈,只好做最簡單的拉霸機(反正是給小朋友玩←誤)。

 

本來想要把讀者都當新手的教,但發現會很佔版面(圖片),所以就用有一點點基礎到進階的教學了。

首先的思維是這樣:循環的圖片。

SV認為,拉霸機最難的就是中間的卷軸霸的動畫,但學了SV這個小技巧,C#又可以依樣畫葫蘆了~heart(SV是有多喜歡C#)

先從只有一個開始。只要一個會了,其他兩個就是用frame取多寡來產生速度快慢的錯覺~

那麼開始囉!!!!

請先準備下面的幾個元件~

也就是一個框框當做人的眼睛看到的拉霸中間部分,然後複製後中間加入你喜歡的圖案,並且將他們合成元件~(SV以四種造型做簡單示範)

最後是代表拉霸的按鈕(你也可以做成動畫按鈕,這樣移動到按鈕上可以有"準備拉的動畫"和按下後的拉霸機關造型,因為不是介紹按鈕製作,所以這邊就用最簡單的按鈕囉~)

 

再來,你要幫按鈕取名字~依照C#慣例,SV會把它取名為btnStart( 這是習慣啦,也就是變數前面加個型態讓你知道他其實是什麼)

然後可以看一下,場景一,SV把layer用成這樣:btnStart, 0, 3, 2, 1, 0, frame。

千萬不要馬上用成這樣!因為還會改變,這只是給你看layer大神的好處!(這就是C#很難做到的了Orz)

也就是這樣就不會互相干擾啦~

其實btnStart和frame應該排在一起,讓"不會有動畫"的layer放一起,會動的以及需要group(群組)的放一起。

因為是教學,SV沒做到這點=3=

接著在最上面插入可愛的as層,要coding囉~(別怕,只有幾行)

因為場景一的功用只是"展示",所以他不用做動畫。你只要想像使用者按下按鈕後,會跑到一個不斷動畫或主要動畫的部分即可。

因此等等就會有場景2囉~(當然,也是可以寫在一塊,不分場景,但SV覺得場景分開有好處,就分開囉~←什麼理論??)

按下F9就可以在加入關鍵影格的影格加入Actionscript!

 


stop();
btnStart.addEventListener(MouseEvent.CLICK,StartSlot);
function StartSlot(event:MouseEvent)
{
	gotoAndPlay(1,"Scene 2");
}

(以上竟然沒有actionscript, 只好用javascript了sad)

就是一開始停止(其實也可以不用啦),按下按鈕才會到有動畫的場景二~

於是新增個場景二囉~

因為網上還真的有人在找如何新增場景→SV就是一個,於是順便教一下:

然後就跟元件的新增類似的增加場景二吧!雖然發現是因為我用的是CS4所以跟CS3不太一樣才找不到場景Orz

基本上場景二的一開始跟場景一差不多,

拉霸動畫的小技巧就是:

有人stand by!

就像這樣:

1

0

3

零的上面是一,一的上面是二,二的上面是三,最後再回來零在三的上面。

所以先這樣:

注意第一格和第六格的layers,

一開始就是0在1的上面,而btnStart(按鈕)與frame(那個框框)都是不會動的,可以無限延長~(就類似背景)唉,這就是沒規劃的下場Orz(兩個應該並排圖層)

再來,這就是最經典的步驟了!因為不管你之後有幾個造型,都是照著做!

在6的影格差入關鍵影格,然後把0移動到像是離開螢幕的位置(就像離開大家的視線的位置),

而1就是stand by的那位,就這樣登場吧!至於2,因為現在是1做為登場人物,2就在1的上面stand by囉~

再來,就是將1~6做傳統補間(classic)動畫,就可以有感覺囉~

依照這樣的動作,你可以作到0→1,1→2,2→3,

就像這樣:

最後就是回到0的圖層,將他stand by到3的上面,就等於回到影格1的長相囉~

咦,如果你就這樣,會發現F12後,圖片只跑一次?沒有循環耶!

於是as2誕生了!

一樣是在最上面加入as圖層,在最後一個影格插入關鍵影格,按F9後,輸入以下as:


gotoAndPlay(1);

什麼,就這樣!沒錯,就一行,讓他回到影格1,這樣他就會不斷跑了~

SV看到可以插入flash好開心呀,

 

然後SV似乎覺得很失望Orz(原本都是用MegaSWF,但現在不太會用了),因為不知道怎麼跑出flash效果Orz

總之,效果就是:

按下按鈕後,就開始跑卷軸囉~

你說那怎麼停止?就是設timer囉~

之後的教學就是把timer加進去囉~(因為C#而習慣這樣叫呀XDDDDDDDD總之就是類似timer的東西)

timer到,畫面停到關鍵影格,然後設亂數(比方2就表示停在影格10,1表示停在影格5)。這樣,最簡單的一格拉霸就完成囉~
然後你把這一組作成群組,複製兩個,就成了三個的拉霸囉~~~

依此類推你可以作很多種造型的拉霸^^

怎樣,真的不難吧!!!!(等SV把timer部分作出來?)
我就不明白為什麼這個網路上很少找到,SV真的太不會使用關鍵字還是?SV還比較習慣用英文搜尋,竟然也找不太到,

不然就是找到遊戲或要錢的程式碼......

 

後來意外發現有應徵作拉霸機的公司,聽說兩萬元一個project......

不過SV不喜歡外包(也沒作過),因為SV比較喜歡寫自己的小遊戲XDDDD(而且其實SV真的覺得自己的程式能力還是很低...)

什麼,你說作到這邊旁邊stand by的都被看到了?

是呀,所以你之後要做一個代表"機台"的圖片,有點類似國字的"回",回中間的口就是你的單一捲筒。
蓋住stand by與離場的角色~

這樣就可以偷吃步了(突然又想起第一篇的點兩下XDDDD)

反正真正的拉霸機也是這樣,所以我們做的就是捲軸的部分。最後再用象徵機台的圖片蓋上去。

 

然後SV就等姊姊的詞彙了,本來想一舉完成它,但是姊姊竟然說詞彙要一段日子= =|||

(是說準備詞彙有比寫程式難嗎?←忍不住抱怨)

所以明天就繼續培根貓囉~(Android小遊戲製作)

 

話說SV又想到小遊戲靈感,所以用要用C#小遊戲了~

等幫姊姊差不多就可以做了~

什麼,為什麼是又?

因為SV第一個"像樣"的遊戲是C#寫的,然後RPG大師與base等等都做得比較好的拙作:
http://code.google.com/p/only-two-and-no-three/

因為是從我自己的小漫畫出來的作品,因此就.....阿哈哈很簡單Orz

不過將來的C#或其他小遊戲都是放在google code就是。

希望有原始碼的務必跟SV說,SV很歡迎!!!!!

(因為總覺得SV的程度很低,應該沒人要Orz有人要是SV的榮幸呀!!!!!)

 

然後附上原始檔~

http://code.google.com/p/flash-slot-machine-test/downloads/detail?name=slot.fla&can=2&q=#makechanges

slot.rar