Action Script 3.0 Счетчик очков - PullRequest
1 голос
/ 28 марта 2012

Я пытался создать счетчик очков для маленькой игры, где пользователь нажимает кнопку на сцене, каждый раз, когда пользователь нажимает кнопку, счет увеличивается на 10, однако я не могу отобразить счет на динамическое текстовое поле. Что я делаю не так?

var score:uint;
//scoreCounter is the instance name of the dynamic text box

    function updateScore():void{
     score += 10;
     scoreCounter.text = score.toString();
}

Ответы [ 2 ]

2 голосов
/ 29 марта 2012

убедитесь, что ваши встраиваемые шрифты находятся в вашем текстовом поле. чтобы проверить, работает ли он вообще, вы можете сделать:

 scoreCounter.embedFonts = false;

посмотрим, появится ли оно тогда.

2 голосов
/ 29 марта 2012

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

package{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.text.TextField;

public class Test extends Sprite{
    private var txt:TextField;
    private var score:uint = 0;
    public function Test()
    {
        //creating my text field
        txt = new TextField();
        addChild(txt);

        //drawing a black rectangle to use as a "button"
        var spt:Sprite = new Sprite();
        spt.graphics.beginFill(0x000000);
        spt.graphics.drawRect(0, 0, 50, 50);
        spt.graphics.endFill();
        addChild(spt);
        spt.y = 50;

        //adding the click event to the "button"
        spt.addEventListener(MouseEvent.CLICK, handleClick);

    }

    protected function handleClick(event:MouseEvent):void
    {
        //adding 10 to score
        score += 10;
        //setting the txt text field to score
        txt.text = score.toString();


    }
}
}
...