0

我想知道如何创建代码,当拍摄时,将计算我剩下的那个项目的数量?我在做一个射击场;没什么特别的。所以更详细地说,我有 8 个随机出现在屏幕上的怪物,我在侧面有另一个图形,它包含从 8 开始的计数器(怪物数量)。射击一个后,计数器将从 8 下降到 7、6、5、4,...等。

我有一个 Main 类,它包含将怪物放在列表中的所有代码,一个 Monsters 类,它只有动画,最后,另一个板类(计数器)我不知道如何获得计数器像我想要的那样工作。有人认为他们可以提供帮助吗?

此外,该板有一个动态文本字段,上面已经写着“Monster's Left”,它是用 Flash 制作的,我需要它来倒计时。

是的,对不起,这是我正在使用的代码:

private var _monsters:Array = []; 

for(var j:uint = 0; j < 8; j++)
{
    var monster:Monster = new Monster();
    this.addChild(monster);
    monster.x = 100 + j * 100;
    monster.y = 475;
    _monsters.push(monster);
    monster.addEventListener(MouseEvent.CLICK, monsterDestroy);
} 

上面的代码在主类中:下面是板的代码:

import flash.events.Event;

public class Board extends ScoreDisplayBase
{
    private var _monsters:Array = [];

    public function Board()
    {
        super();
        this.addEventListener(Event.ENTER_FRAME, countDown);
    }

    private function countDown(event:Event):void
    {
        //store the monster we clicked on in a new array
        var clickedMonster:monster = monster(event.currentTarget);

        var index:uint = _monsters.indexOf(clickedMonster);
    }
4

2 回答 2

0

或者,您可以添加var alive:Boolean到您的怪物类,并检查您将遍历您的列表并为每个真实添加 +1 的活怪物的数量。这将更具可扩展性,因为如果您添加或删除怪物,数字将保持准确。

于 2012-04-26T14:01:58.180 回答
0

啊,好吧,你就那样做……

你应该写一个 onclick-eventlistener。每次单击怪物时,您都会增加单击怪物的数量(并删除或删除该特定怪物)并比较单击的怪物数量是否等于您在开始时启动的数组的大小。

于 2012-04-26T13:27:48.163 回答