flash As3.0射箭游戏中怎样根据鼠标按下时间来决定射箭的力度?
2个回答
展开全部
有个Timer函数 是计时用的 按下的 时候触发他 开始计时, 让力度=Timer的毫秒数乘以一个系数就能得到力度了
追问
能不能加qq教我一下? qq:516749142
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import flash.display.Shape;
import flash.events.Event;
var strengthW:Number = 200;
var strengthH:Number = 10;
var dsX:Number = 0;
var dx:Number = 4;
var 力度:Number;
var strength:Shape=new Shape();
function drawStrength(obj:Shape,w:Number,h:Number):void
{
with (obj.graphics)
{
clear();
beginFill(0xFF0000,0.6);
drawRect(0,0,w,h);
endFill();
}
}
stage.addEventListener(MouseEvent.MOUSE_DOWN,onDow);
stage.addEventListener(MouseEvent.MOUSE_UP,onUp);
function onDow(evt:MouseEvent):void
{
addEventListener(Event.ENTER_FRAME,onEnter);
strength.x = mouseX;
strength.y = mouseY;
addChild(strength);
}
function onUp(evt:MouseEvent):void
{
//输出力度值,当然在这里你也可以用一个变量来获取这个值,具体根据应用来决定
力度=dsX;
trace(力度);
removeEventListener(Event.ENTER_FRAME,onEnter);
//恢复初始值,以备下次调用
dsX=0;
}
function onEnter(evt:Event):void
{
dsX += dx;
if (dsX>=strengthW)
{
dsX = strengthW;
removeEventListener(Event.ENTER_FRAME,onEnter);
}
drawStrength(strength,dsX,strengthH);
}
import flash.events.Event;
var strengthW:Number = 200;
var strengthH:Number = 10;
var dsX:Number = 0;
var dx:Number = 4;
var 力度:Number;
var strength:Shape=new Shape();
function drawStrength(obj:Shape,w:Number,h:Number):void
{
with (obj.graphics)
{
clear();
beginFill(0xFF0000,0.6);
drawRect(0,0,w,h);
endFill();
}
}
stage.addEventListener(MouseEvent.MOUSE_DOWN,onDow);
stage.addEventListener(MouseEvent.MOUSE_UP,onUp);
function onDow(evt:MouseEvent):void
{
addEventListener(Event.ENTER_FRAME,onEnter);
strength.x = mouseX;
strength.y = mouseY;
addChild(strength);
}
function onUp(evt:MouseEvent):void
{
//输出力度值,当然在这里你也可以用一个变量来获取这个值,具体根据应用来决定
力度=dsX;
trace(力度);
removeEventListener(Event.ENTER_FRAME,onEnter);
//恢复初始值,以备下次调用
dsX=0;
}
function onEnter(evt:Event):void
{
dsX += dx;
if (dsX>=strengthW)
{
dsX = strengthW;
removeEventListener(Event.ENTER_FRAME,onEnter);
}
drawStrength(strength,dsX,strengthH);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询