Flash 如何使用文本框更改AS3中的框架
所以我在做一个小游戏。数字累加,当它们达到另一个数字时,我想改变帧。例如,数字开始计数,当它们达到10时,将变为第20帧。顺便说一句,这是实际的脚本3。在文档类中,创建一个ter函数,当满足特定条件时,该函数将转到框架Flash 如何使用文本框更改AS3中的框架,flash,adobe,actionscript-3,Flash,Adobe,Actionscript 3,所以我在做一个小游戏。数字累加,当它们达到另一个数字时,我想改变帧。例如,数字开始计数,当它们达到10时,将变为第20帧。顺便说一句,这是实际的脚本3。在文档类中,创建一个ter函数,当满足特定条件时,该函数将转到框架 private var _counter:uint = 0; public function get counter ():uint { return _counter; } public function set counter (value:uint):void
private var _counter:uint = 0;
public function get counter ():uint
{
return _counter;
}
public function set counter (value:uint):void
{
if (value == _counter) return;
_counter = value;
if(_counter == 10) gotoAndStop(20);
}
现在简单地使用计数器
,就好像它是一个实变量一样:
counter += 5;
trace(counter);
counter = 10;
需要明确的是:您不应该只在文本字段中使用计数器变量。文本字段只是显示它的一种方式。您应该始终使用实数变量,因为TextField
是为String
s创建的,而不是数字。如果要在TextField
中显示计数器变量,请在set函数中也执行此操作:
public function set counter (value:uint):void
{
if (value == _counter) return;
_counter = value;
textField.text = _counter.toString(); //display counter in text
if(_counter == 10) gotoAndStop(20);
}
请注意,上述代码应位于ENTER_FRAME事件或TEXTField CHANGE事件中。理想情况下,通过文本字段事件
var counter:int = parseInt(yourTextField.text);
if(counter == 10)
{
gotoAndStop(20);
}