0
A
回答
0
創建一個新的Flash的ActionScript 3文檔。保存。
把你的聲音像名字
boom.mp3
放在同一個目錄中。在舞臺上繪製正方形形狀並將其轉換爲Movie Clip符號。
在舞臺上總共放置2個此Movie Clip符號的實例。
調出「動作」面板並添加以下代碼。
下面的代碼,當播放聲音時,只需將鼠標拖動到mc1和mc2碰撞。是與聲音播放的基本碰撞。
import flash.media.Sound;
import flash.events.MouseEvent;
import flash.net.URLRequest;
mc1.addEventListener(MouseEvent.MOUSE_DOWN, drag);
stage.addEventListener(MouseEvent.MOUSE_UP, drop);
var sound:Sound=new Sound();
sound.load(new URLRequest("boom.mp3"));
function drag(e:MouseEvent):void
{
mc1.startDrag();
}
function drop(e:MouseEvent):void
{
mc1.stopDrag();
if (mc1.hitTestObject(mc2))
{
trace("Collision detected!");
sound.play(0);
}
else
{
trace("No collision.");
}
}
如果你想使用的KeyboardEvent試試這個:
function playIsCollision(char:DisplayObject, target:DisplayObject):void
{
if(char.hitTestObject(target))
{
sound.play(0);
}
}
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
function keyDownHandler(e:KeyboardEvent):void
{
if(e.keyCode == Keyboard.RIGHT)
{
trace("right move");
mc1.x += 1;
playIsCollision(mc1,mc2);
}
else if(e.keyCode == Keyboard.LEFT)
{
trace("left move");
mc1.x -= 1;
playIsCollision(mc1,mc2);
}
else if(e.keyCode == Keyboard.UP)
{
trace("up move");
mc1.y -= 1;
playIsCollision(mc1,mc2);
}
else if(e.keyCode == Keyboard.DOWN)
{
trace("down move");
mc1.y += 1;
playIsCollision(mc1,mc2);
}
}
這裏是我的代碼:Collision
相關問題
- 1. FLASH AS3 SOUND_COMPLETE在聲音開始時觸發
- 2. Flash as3觸發器點擊
- 3. AS3聲音播放時打MC
- 4. 當imageView被移動時觸發聲音
- 5. 如果聲明不觸發
- 6. AS3 - MovieClip中的按鈕觸發MC的事件
- 7. Javascript觸發的CSS效果
- 8. AS3:觸發人工的MouseEvent
- 9. 當你滾動時觸發jQuery效果
- 10. 未經授權,Javascript觸發聲音?
- 11. 設置聲音在後臺觸發
- 12. 用NSSpeechRecognizer觸發聲音播放()Swift
- 13. AS3型未發現:聲音
- 14. FLASH AS3聲音重疊
- 15. AS3 NetStatusEvent事件未觸發
- 16. Flash AS3定義聲音結束時間
- 17. cocos2d - 僅當用戶觸摸時才能播放聲音效果?
- 18. 如何在觸摸按鈕時啓用聲音效果?
- 19. 觸發FLASH事件功能
- 20. Oracle觸發無效
- 21. 如果觸發MySQL的聲明
- 22. 聲音效果的AS3對象池
- 23. 的Flash CS6 AS3,重置聲音聲道
- 24. jQuery的效果基本show不觸發
- 25. SQL觸發器取消刪除效果
- 26. SOX效果:可再觸發沉默
- 27. 從INSERT觸發器更新時觸發更新後未觸發
- 28. UINavigationBar按鈕在觸摸條之下發生觸發時觸發
- 29. 當觸發器不應該觸發時觸發消息
- 30. Windows 8聲音主題不會觸發VS2012發佈
Awwww太感謝你了。這將適用於鍵盤事件嗎? – Jen 2013-03-07 23:20:12
而不是拖動我想使用我編輯的鍵盤事件 – Jen 2013-03-07 23:25:51
。請檢查。 – 2013-03-07 23:30:34