Actionscript 3 解决警告:1082:迁移问题:方法gameThread在ActionScript 3.0中的行为将不同
自从我使用adobe flash 2017+以来,我收到了1082/1083警告。 警告是:Actionscript 3 解决警告:1082:迁移问题:方法gameThread在ActionScript 3.0中的行为将不同,actionscript-3,Actionscript 3,自从我使用adobe flash 2017+以来,我收到了1082/1083警告。 警告是: 警告:1082:迁移问题:由于this关键字的作用域发生了变化,因此方法gameThread在ActionScript 3.0中的行为将有所不同。有关更多信息,请参阅警告1083的条目。 虽然我得到的唯一错误是将事件放入类中,但如果没有这些警告,我无法添加鼠标事件或任何事件,并且我不知道如何修复… 人们建议删除super(),这不是解决方案 我添加到主代码中的事件示例 “addEventListener
警告:1082:迁移问题:由于this关键字的作用域发生了变化,因此方法gameThread在ActionScript 3.0中的行为将有所不同。有关更多信息,请参阅警告1083的条目。
虽然我得到的唯一错误是将事件放入类中,但如果没有这些警告,我无法添加鼠标事件或任何事件,并且我不知道如何修复…人们建议删除
super()
,这不是解决方案
我添加到主代码中的事件示例
“addEventListener…”行出现错误
包{
导入flash.display.MovieClip;
导入flash.events.Event;
导入数据。播放器;
公共类游戏扩展MovieClip{
私有变量播放器:数组=新数组();
公共功能游戏(){
超级();
重置玩家();
addEventListener(Event.ENTER_FRAME,this.gameThread);
}
私有函数resetPlayers():void{
for(var i:int=0;i
只需删除this关键字,即可解决此问题。在这种情况下不需要它
addEventListener(Event.ENTER_FRAME, gameThread);
在AS3中,方法在定义的上下文(您的游戏类)中执行。
这个关键字的其他用法也是如此。
玩家是游戏的一个类变量,resetPlayers()和gameThread()是游戏->的方法,因此它们都在相同的上下文中。只需删除this关键字,您就可以克服这个问题。在这种情况下不需要它
addEventListener(Event.ENTER_FRAME, gameThread);
在AS3中,方法在定义的上下文(您的游戏类)中执行。
这个关键字的其他用法也是如此。
players是游戏的类变量,resetPlayers()和gameThread()是游戏->的方法,所以它们都在相同的上下文中。@KevinWang,编辑时也请格式化代码。您的措辞更改看起来很有帮助,但问题在代码框外的“package{”看起来仍然很草率。@KevinWang,请在编辑代码时也格式化代码。您的措辞更改看起来很有帮助,但问题在“package{”看起来仍然草率在代码框之外。这并不会真正改变任何事情……错误总是出现,不管我如何尝试编写函数(使用或不使用此函数)这真的很奇怪。我找不到一种方法来强迫我犯这个错误。也许警告消息被抑制了。你使用的是什么IDE?我使用的是adobe animate CCA,它并没有真正改变任何东西…错误总是出现,不管我如何尝试编写函数(使用或不使用它)这真的很奇怪。我找不到一种方法来强迫我犯这个错误。也许警告消息被抑制了。你在用什么IDE?我在用adobe animate CC