[問題] 看不太懂要更改哪部分@@

看板Flash作者 (我是小涓)時間16年前 (2009/12/07 22:24), 編輯推噓3(309)
留言12則, 4人參與, 最新討論串1/1
原本要做中間亂數擴散的打蟑螂(3.0) 結果連老師都不知道要怎麼用= =" 最後只做出左右亂數出現 上下跟斜方的蟑螂都出不來 找了蠻多有關擴散的語法資料 但是要照著蟑螂的頭的方向跑 實在有點困難 (不然擴散有了 就是會變成很不自然的樣子跑 ex:屁股往前跑or側著跑 還有凌波微步的....) 分數跟計時方面都ok...就是蟑螂跑法很怪 嘴砲老師最後都說太難他不會= = 之後再國外網站抓到一個類似的遊戲(2.0) http://www.flashkit.com/movies/Games/POOCHI-PRASHANT-9989/index.php 裡面有完整的fla檔 他原本只有單一蟑螂mcHero 我複製把另一隻蟑螂的實體名稱改成mcHero2 速度跟box的數量我都調整過 但是 兩隻蟑螂跑的方向 不管怎樣都一樣 有沒有辦法讓他們兩支都亂數到處亂跑 原本要做10隻來試試看 結果第二隻就卡住了@@" 以上兩種語法方式 不知道哪個比較簡單明暸 我們本身就不是學這個的 莫名奇妙要我們做出一款flash的遊戲 買了蠻多書 但是都太淺 沒有講到我們所需 網路上的教學有擴散 但是都是同一個方向 還是哪邊有可以參考的書籍或者網頁 我們都願意去研究>< 麻煩大家的指導 拜託!!~~感恩!! 如需要講解比較詳細 可以用msn:D -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.73.183.231

12/08 00:44, , 1F
印象中cj的粒子特效中,有一個是蟑螂到處爬的(好像是)
12/08 00:44, 1F

12/08 01:17, , 2F
超可怕的啦~
12/08 01:17, 2F

12/08 05:41, , 3F
可是我們只能用FALSH做耶@@"
12/08 05:41, 3F

12/08 12:22, , 4F
cj的粒子特效...是flash啊
12/08 12:22, 4F

12/08 12:27, , 5F
那是哪部分>< 不太懂 可是他也是能 打一支少一支嗎?
12/08 12:27, 5F

12/08 12:28, , 6F
其實我不懂你的問題,它整個"全部"都是flash
12/08 12:28, 6F

12/08 12:28, , 7F
能不能做到跟滑鼠的互動是另外寫mouseevent listener
12/08 12:28, 7F

12/08 12:29, , 8F
handler來處理了
12/08 12:29, 8F

12/08 12:29, , 9F
但你要的"擴散"效果,應該是有範例的
12/08 12:29, 9F

12/08 14:20, , 10F
明明就是蝴蝶到處飛...
12/08 14:20, 10F
這特效我知道 但是他沒有辦法讓蟑螂的頭朝前進方向 他是以一張圖散開 這樣的話 有個蟑螂會側著走 有的變成用屁股往前 我要的是 他們上下左右左上下右上下 這樣亂數出現 往不同方向前進 就是搞定左右後 其他位置就弄不出來 弄了蟑螂就變怪怪的 ※ 編輯: JangM 來自: 203.73.183.231 (12/08 16:13) 剛剛跟朋友拿到語法 蟑螂就是bubble 目前做到的部份只有讓他左右 因為前面講 好像會不清楚 但是與法很長說一一 想知道 要怎麼讓他散開 就是往頭的方向跑 不是屁股往下跑 var bubbleArea:Sprite = new Sprite(); var bubbleTimer:Timer = new Timer(1000, 0); var speedY:Number = Math.random()*3-3; var speedZ:Number = Math.random()*20-15; var speed_acc:Number = 0.5; bubbleTimer.addEventListener(TimerEvent.TIMER, makeBubble); function makeBubble(event:TimerEvent) { var bubble:MovieClip = new Dveil(); bubble.x = stage.stageWidth/2; var yPos:int = 30+Math.random()*420; bubble.y = yPos; bubbleArea.addChild(bubble); bubble.addEventListener(Event.ENTER_FRAME, onFramePlaying); } bubbleTimer.start(); function onFramePlaying(event:Event):void { var speedX:Number = Math.random()*40-Math.random()*40; if ((event.target.x < stage.stageWidth)&&(event.target.x > 0)) { if (event.target.x==stage.stageWidth/2) { event.target.x += (speedX)*speed_acc; } else if (event.target.x>stage.stageWidth/2) { event.target.x += Math.abs(speedX)*speed_acc; } else { event.target.x -= Math.abs(speedX)*speed_acc; } if (event.target.x<stage.stageWidth/2) { event.target.rotation = 180; } if (event.target.x<=120) { event.target.gotoAndPlay(3); //event.target.rotation-=180; if (event.target.x<=45) { event.target.gotoAndPlay(1); } } if (event.target.x>=685) { event.target.gotoAndPlay(3); if (event.target.x>=777) { event.target.gotoAndPlay(1); } } if (event.target.y==stage.stageHeight/2) { event.target.y += (speedY)*speed_acc; } else if (event.target.x>stage.stageHeight/2) { event.target.y += Math.abs(speedY)*speed_acc; } else { event.target.y -= Math.abs(speedY)*speed_acc; } } else { if (score>-10) { score=score-1; score_txt.text=score.toString(); event.target.parent.removeChild(event.target); event.target.removeEventListener(Event.ENTER_FRAME, onFramePlaying); } } if (score<=-10) { gotoAndStop("end"); gameTimer.stop(); bubbleTimer.stop(); } } addChildAt(bubbleArea, 1); ※ 編輯: JangM 來自: 203.73.183.231 (12/08 16:22)

12/08 17:54, , 11F
要讓蟑螂的頭朝前進方向,提示:反正切函數atan()
12/08 17:54, 11F

12/08 18:52, , 12F
感謝 我請同學試試看
12/08 18:52, 12F
文章代碼(AID): #1B7H0e5b (Flash)