Добавление текста в динамическое текстовое поле случайным образом в as3 - PullRequest
1 голос
/ 09 января 2012

У меня есть текстовое поле с именем Moneytxt, и я хочу, чтобы, когда вы нажимаете на поле, иногда добавляется 200, а иногда добавляется 100 (также я хотел бы, чтобы оно сложилось в примере с числовым значением: если оно добавляет 100 и имеет200 это равно 300, а не 200100).У меня также есть penniestxt, где иногда он добавляет 30, а иногда добавляет 40.

это код (поле добавления не включено или addeventlistener)

public function boxclick(event:MouseEvent):void {
            var _box:Box=event.currentTarget as Box;
            logtxt.appendText(" You collected the box");
            Moneytxt.random.appendText("100")
            Moneytxt.random.appendText("200")
            penniestxt.random.appendText("40")


            boxAmount--;

            removeChild(_box);
        }

1 Ответ

1 голос
/ 09 января 2012

Метод appendText делает именно то, что говорит - он добавляет текст в конец текста в текстовом поле - вот почему вы получаете «200100» вместо «300».

Чтобы иметьчисла складываются вместе, вам нужно сохранить сумму денег в виде числа или целого числа.

var money:int = 0;
money += 100;
money += 200;
Moneytxt.text = String(money);

Обратите внимание, что вам, вероятно, придется приводить значение к строке, когда вы присваиваете его тексту текстового поля..

Чтобы сделать случайное значение, вы можете использовать Math.random(). Возвращает число от 0 до 1. Вы можете использовать это значение, чтобы определить, добавляете ли вы 100 или 200.

var money:int = 0;
public function boxclick(event:MouseEvent):void {
    var randVal:Number = Math.random();
    if(randVal >= 0.5){
        money += 100;
    } else {
        money += 200;
    }

   Moneytxt.text = String(money);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...