【问题标题】:How to add a Timer in AS3如何在 AS3 中添加定时器
【发布时间】:2013-07-13 14:19:58
【问题描述】:

我想知道如何在 AS3 中添加游戏内计时器,我为敌方小怪制作了一个生命条,一旦小怪受到攻击,生命条就会可见。我需要添加一段代码,如果敌人在 5 秒内没有受到攻击,healthBar.visible = false; 但我不知道如何在 AS3 中处理时间

有什么想法吗?

【问题讨论】:

  • 你试过什么?你有任何代码吗?有很多方法。我想支持你的想法。
  • 是的,我有我的代码,一切正常,一旦忍者受到攻击,他就会失去生命值。重点是我需要知道如何在 5 秒后使 Healthbar 消失。附: Healthbar 是一个普通的 MovieClip

标签: actionscript-3 flash


【解决方案1】:

我的建议如下:

假设 MouseClick 是被忍者攻击的英雄。如果您使用此代码,则需要创建 Class 或 fit 类型。我刚刚写了骨架代码。

Download Source

import flash.events.MouseEvent;
import flash.utils.Timer;
import flash.events.TimerEvent;

stage.addEventListener(MouseEvent.CLICK, onAttacked);

var isAttacked:Boolean;
var timer:Timer = new Timer(100,50);
var alphaCount:Number = 1.0;
timer.addEventListener(TimerEvent.TIMER, onTick);
function onAttacked(e:MouseEvent):void
{
    isAttacked = true;
    timer.start();
}

function onTick(e:TimerEvent):void
{
    alphaCount = 1.0 - ( 2 * timer.currentCount ) / 100;
    if(!isAttacked)
    {
        goFadeStatusBar();
    }
    else
    {
        restoreStatusBar();
        alphaCount = 1.0;
        timer.reset();
        timer.start();
        isAttacked = false;
    }
}

function goFade():void
{
    bar.alpha = alphaCount;
}

function restore():void
{
    bar.alpha = 1;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-13
    • 1970-01-01
    • 2019-11-28
    • 1970-01-01
    • 2013-03-17
    • 1970-01-01
    • 2012-01-14
    相关资源
    最近更新 更多