2010
5-25
首先来看一个演示,如果你装了麦克风,那么请对着你的麦克风大声的啊一下,下面的flash演示就会动起来
随着你声音的大小不一,他每次跳动的高度和速度也不一样下面是源代码,不过是接口展示而已,所以是一个很简单的例子,也是很容易看懂的
评论Feed: http://www.xiaos8.com/feed.asp?q=comment&id=568
随着你声音的大小不一,他每次跳动的高度和速度也不一样下面是源代码,不过是接口展示而已,所以是一个很简单的例子,也是很容易看懂的
package {
import flash.display.Shape;
import flash.display.Sprite;
import flash.events.ActivityEvent;
import flash.events.Event;
import flash.media.Microphone; public class SoundGame extends Sprite
{
private var main:Sprite;
private var mic:Microphone;
private var minHigh:int = 0;
private var intervalValue:int = 0;
public function SoundGame()
{
init();
}
//初始化
private function init():void{
initMic();
createSky();
createLand();
createMain();
}
//初始化麦克风
private function initMic():void{
mic = Microphone.getMicrophone();
mic.setSilenceLevel(30,0);
mic.setLoopBack();
mic.addEventListener(ActivityEvent.ACTIVITY,micActivityHandle);
}
//创建操作
private function createMain():void{
var mainContainer:Sprite = new Sprite;
main = new Sprite;
main.graphics.beginFill(0xffffff);
main.graphics.drawCircle(-2,-4,4);
mainContainer.x = 100;
mainContainer.y = 250;
mainContainer.addChild(main);
addChild(mainContainer);
main.addEventListener(Event.ENTER_FRAME,frameHandle);
}
//创建天
private function createSky():void{
var shape:Shape = new Shape;
shape.graphics.beginFill(0x6699cc,1);
shape.graphics.drawRect(0,0,400,250);
addChild(shape);
}
//创建陆地
private function createLand():void{
var shape:Shape = new Shape;
shape.graphics.beginFill(0x002222,1);
shape.graphics.drawRect(0,250,400,150);
addChild(shape);
}
//麦克风活跃处理
private function micActivityHandle(e:ActivityEvent):void{
if(e.activating && intervalValue == 0){
intervalValue = mic.activityLevel / 5;
}
}
//持续处理
private function frameHandle(e:Event):void{
if(intervalValue == 0) return;
main.y -= intervalValue;
intervalValue --;
if(intervalValue == 0) intervalValue -= 1;
//落地
var min:int = - minHigh;
if(min < main.y){
main.y = min;
intervalValue = 0;
}
}
}
}
import flash.display.Shape;
import flash.display.Sprite;
import flash.events.ActivityEvent;
import flash.events.Event;
import flash.media.Microphone; public class SoundGame extends Sprite
{
private var main:Sprite;
private var mic:Microphone;
private var minHigh:int = 0;
private var intervalValue:int = 0;
public function SoundGame()
{
init();
}
//初始化
private function init():void{
initMic();
createSky();
createLand();
createMain();
}
//初始化麦克风
private function initMic():void{
mic = Microphone.getMicrophone();
mic.setSilenceLevel(30,0);
mic.setLoopBack();
mic.addEventListener(ActivityEvent.ACTIVITY,micActivityHandle);
}
//创建操作
private function createMain():void{
var mainContainer:Sprite = new Sprite;
main = new Sprite;
main.graphics.beginFill(0xffffff);
main.graphics.drawCircle(-2,-4,4);
mainContainer.x = 100;
mainContainer.y = 250;
mainContainer.addChild(main);
addChild(mainContainer);
main.addEventListener(Event.ENTER_FRAME,frameHandle);
}
//创建天
private function createSky():void{
var shape:Shape = new Shape;
shape.graphics.beginFill(0x6699cc,1);
shape.graphics.drawRect(0,0,400,250);
addChild(shape);
}
//创建陆地
private function createLand():void{
var shape:Shape = new Shape;
shape.graphics.beginFill(0x002222,1);
shape.graphics.drawRect(0,250,400,150);
addChild(shape);
}
//麦克风活跃处理
private function micActivityHandle(e:ActivityEvent):void{
if(e.activating && intervalValue == 0){
intervalValue = mic.activityLevel / 5;
}
}
//持续处理
private function frameHandle(e:Event):void{
if(intervalValue == 0) return;
main.y -= intervalValue;
intervalValue --;
if(intervalValue == 0) intervalValue -= 1;
//落地
var min:int = - minHigh;
if(min < main.y){
main.y = min;
intervalValue = 0;
}
}
}
}
[最后修改由 sunbright, 于 2010-05-25 14:24:29]
评论Feed: http://www.xiaos8.com/feed.asp?q=comment&id=568
快速浏览
类别
标题
评论/流量
日期




- 查看svn更新内容以及最新状态(实时更新)
- 查看框架API文档(09.6.15更新)
- 查看框架代码(09.4.20更新)
框架暂停开发,且没有完全竣工,目前只能使用air包和library包!