我正在尝试在学校使用adobe动画,直到现在,我仍在关注一个很酷的rpg游戏教程。但是教程很快就结束了,现在我自己浏览互联网了。我想添加一点星收集器功能,但是发现的教程适用于Flash,我不知道如何使用它。
他们的代码差不多
money = 0;
onClipEvent (enterFrame) {
if (_root.move_mc.hitTest (this)) {
_root.money++;
this._x = -50;
this._y = -50;
}
}
我把它挂到了
var star:Number = 0;
if(linkMc.hitBoxMc.hitTestObject(overworldMc.starMc1))
{
star += 1;
overworldMc.starMc1.alpha = 0;
}
它可以工作,但是现在我需要找出一种方法来在角落设置文本,告诉您有多少颗星星。
[链接到其图像](https://www.kirupa.com/developer/actionscript/images/textBox_settings.JPG)((((i尚无法发布图像,因为我没有足够的分数)))) 但是我的adobe animate版本似乎没有var选项!那我该如何设置文字呢?
答案 0 :(得分:0)
尝试以下类似的逻辑。该代码未经测试,但是对于您找到可行的解决方案将很有用:
var star :int = 0;
//# create an *enterFrame* function for multiple stars
overworldMc.starMc1.addEventListener( Event.ENTER_FRAME, myClipEvent );
overworldMc.starMc2.addEventListener( Event.ENTER_FRAME, myClipEvent );
overworldMc.starMc3.addEventListener( Event.ENTER_FRAME, myClipEvent );
function myClipEvent( myEvt:Event ) :void
{
//# or... myEvt.currentTarget
if(myEvt.target.hitTestObject(linkMc.hitBoxMc))
{
star += 1; //can be... star++;
myEvt.target.alpha = 0; //# also test replacing *target* with *currentTarget*
//# use String( xxx ) to cast Numeric data type into a Text data type
money_box.text = String(star) + " " + "Stars...";
}
}