2008/10/9

[練習]Flex+AS3=>Genie Effect


自己出給自己的作業

等圖載入後,點圖看效果

左上角的type切換三種移動模式

上方網址列可輸入任意圖檔連結,載入別的圖試效果。

::Demo

9 則留言:

※樂音魅魔※ 提到...

你好~我是范銀霞老師的學生^^
聽老師說:您願意指導我們有關於flash程式的部份
真是太感謝你了^^
不知我該怎麼稱呼你好呢~?

以下我想先問個問題^^"
這是我在遊戲中寫的怪物的AI
onClipEvent (enterFrame)
{
if (this.hitTest(_root.QQ.QQ_cy))
{
di_suiji1 = random(100);
if (di_suiji1 == 10)
{
_parent.gotoAndPlay("毛毛打1");
}
}
}
這是寫在一個比怪物寬3倍左右的一個透明影片原件上,用來判斷主角(QQ)靠近時攻擊用的,不過這樣寫起來的AI感覺好笨喔@@"
不知道我應該怎麼寫才會比較好呢@@?

Maso 提到...

1.onClipEvent,這是Flash4~Flash5時代的舊語法,為什麼還要用?

2.能否描述一下所謂「感覺好笨」的狀況?是出現什麼情形讓你覺得怪物很笨?你想解決什麼問題?

※樂音魅魔※ 提到...

1.那樣寫是因為我參考的小遊戲是那樣寫的@@",之前學校老師也是敎這樣寫的,請問新寫法是如何呢?新跟舊又有何差別呢?

2.我的再靠近怪物的時候,怪並不太會攻擊,或是攻擊一下後就發呆好久,我希望能讓他聰明點;像是我不動的話他過來就會一值打我,但是又不能我ㄧ靠近他的感應範圍他就打不停。

以上這些問題麻煩妳了^^"

Maso 提到...

1.如果說這段code是參考教材來的,想先問你是否對裏面每一行的意義都了解?

2.新舊差別很大,Actionscript目前共分AS1,AS2,AS3 三個版本,你目前寫的是1。至於與2跟3的優點及差別,你可上網查查。

3.「再靠近怪物的時候,怪並不太會攻擊」是因為你的random(100),照你的寫法,是執行100次才有一次會去攻擊。(前提還要看你的fps多少,及怪物攻擊後,又執行了什麼程式)

4.「像是我不動的話他過來就會一值打我」那你就做個判斷,判斷主角是不處於「不動」的狀態

5.「但是又不能我ㄧ靠近他的感應範圍他就打不停」那你就要設一個條件,例如是時間還是怎樣的條件。當條件達成,且靠近感應範圍,才進行攻擊動作。

Yujing Wang 提到...

Wow, 棒棒~~
果然厲害阿MASO兄~

※樂音魅魔※ 提到...

大致上都了解....!!
不懂得我都在FLASH的說明裡面查,或是上網查,或是直接更改數值看看有何改變。

不過對於一些程式的使用規範跟應用就不是很了解了!

嗯嗯!!卸卸你的講解!我再寫寫看^^

Yu-jing 提到...

請問這種特效可以交我們怎ㄇ做嗎?還是有現成的資源可抓呢?

Maso 提到...

@Yu-jing:

如果有時間有閒情的話,我會寫成另一篇教學。

Viola 提到...

這特效真的很不錯,希望你真的可以抽空教教大家!!謝謝:)