问题标签 [cs3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
64 浏览

actionscript-3 - 如何有效地更新游戏中的动画?

对于每个角色皮肤,它有 4 个 MovieClip 对应于每个可能的方向(上、下、左和右)。

例子:

对于我的 Player 1 皮肤,它会是这样的。

播放器 1 向上动画 (P1UAnim_mc)

播放器 1 向下动画 (P1DAnim_mc)

玩家 1 左动画 (P1LAnim_mc)

播放器 1 右动画 (P1RAnim_mc)

现在,我的移动工作方式是我们有一个与动画大小相匹配的影片剪辑(它们的大小不会改变),并且这个影片剪辑是不可见的,这就是我们告诉它时移动的内容(我称之为球员位置守门员)。这是通过单击 DPAD 上的一个方向来完成的,然后我们将玩家移动到适当的方向,并使用该方向对应的步行速度,然后我们检查是否在我的障碍物阵列中撞到了什么东西。如果我们这样做了,我们会将玩家移回。

所以现在我们已经解决了这个问题,我需要有与玩家使用/进入的方向和角色皮肤相对应的动画。

我有一个想法,每次我们进入一个帧时都有一个事件监听器,我们检查玩家正在使用什么 charSkin,然后检查方向,然后添加适当的动画。我们不需要更新动画 x,y 坐标,因为在它们的类文件中,它总是将自身更新为玩家位置保持器的坐标的 x 和 y,并且知道何时移除自身。所以我需要做的就是找到合适的时间来添加它,其余的留给动画的类。

我尝试过的这种技术的问题是代码真的很难理解,这是一连串的 if else 语句检查上述因素。

这是我的 MovementReworked 课程,其中不包含动画,所以你们可以实际阅读它。如果您希望我编辑帖子并添加带有草率动画代码的运动类,我会的,但它非常难以阅读。

0 投票
2 回答
95 浏览

actionscript-3 - 使用 .stage 没有给出想要的结果

我使一个全局变量等于一个movieclip

一个函数使用 if 语句运行,检查 [x] 电影剪辑是否存在,如果它不添加它。尽管 MovieClip 在舞台上,但它继续使用 if 语句。

文档类

单独的类(函数每帧运行)

0 投票
0 回答
15 浏览

flash - 如何在 Flash/animate 中创建单独/独立的交互区域?

我想创建一个游戏,然后将屏幕分成两个、三个或四个部分,并让该游戏实例出现在每个“部分”中。然后,游戏将由与部分对应的玩家数量独立进行。

谢谢

0 投票
1 回答
63 浏览

actionscript-3 - 为什么我不能删除此影片剪辑?

我在onTouch一个类的构造函数中有一个 TouchEvent 函数,该函数item_Potion在触摸 Movieclip 时运行。这个函数经过一系列不相关的检查,最后它应该删除自己(Movieclip)。

在 onTouch 函数结束时,它应该通过执行以下操作来移除自身:this.parent.removeChild(this);

但是,这不起作用。

我收到以下错误消息:

它为错误消息引用的行(第 56 行)具有以下内容:

我的进口:

我知道问题不在于我的代码的其他部分,因为我尝试将这条线换掉,visible = false;但没有收到任何错误。因此,我确定问题出在我删除 MovieClip 的方式上,这就是我需要帮助的地方。

我尝试过的类似来源不起作用:

如何在 AS3 中让 MovieClip 自行删除?

0 投票
0 回答
73 浏览

actionscript-3 - 我可以用什么来代替计时器来提高我的表现?

我的应用在移动设备上非常慢。

它使用了很多Event.ENTER_FRAME事件监听器,所以我切换到了一个全局计时器(当我读到它们的性能要高得多),如果它们需要更新,这些类会监听这个全局计时器(如果它们已由 a 启动,它们只会使用这些计时器TouchEvent) .

我还尝试启用硬件加速,并切换到使用 CPU,但这些对延迟问题没有明显帮助。(我的应用程序动画很少,所以我认为这是最好的决定)

我确实有很多电影剪辑,但其中很少有真正的动画,所以我怀疑这是一个问题。(这也是我不冻结和解冻对象的原因,因为它们永远不会从舞台上移除)

这个网站上,他们对定时器说了以下

– 系统中滞留的计时器实例越多,您就越能期待缓慢而不稳定的游戏玩法或无响应的 UI。

我只使用一个计时器,所以我认为这不是问题,但是我确实有很多事件侦听器使用这个计时器来更新,所以我只能认为计时器一定是问题所在。因此,为了避免滞后,我正在寻找更好的选择。

需要明确的是,我不再使用很多 Event.ENTER_FRAME 事件侦听器,我主要切换到计时器。话虽如此,这里有一个对资源要求更高的例子。

这个例子Event.ENTER_FRAME是少数几个实际上如此复杂的例子之一,其他Event.ENTER_FRAME的往往只是更新值(例如:更新文本字段以显示正确的数字变量)

例如:在 enterframe 中创建多个 var 可能会阻塞内存并导致延迟。

我已经避免做这样的事情,不仅是你所说的,而且在我看来,我认为在函数中连续定义它是没有意义的,我只更新这些值。

资源

http://help.adobe.com/en_US/as3/mobile/WS4bebcd66a74275c36cfb8137124318eebc6-8000.html

允许的最大链接数

0 投票
2 回答
108 浏览

actionscript-3 - 如何在不创建新变量的情况下引用现有变量?

我不知道怎么问这个问题。

我有一个变量

我有一个功能

这个功能唯一让我头疼的部分是这一行

它输出

更改前 0,0,0,0,0,0,0,0

更改后 0,MaxDurabilityTestItem,0,0,0,0,0,0

虽然我希望它输出

更改前 0,0,0,0,0,0,0,0

更改后 0,3,0,0,0,0,0,0

我知道这个问题,但是,我不知道如何解决它。 "MaxDurability" + Item生成一个名为的字符串MaxDurabilityTestItem,而不是引用我的变量MaxDurabilityTestItem

如何更改它以使其引用我的变量 MaxDurabilityTestItem,而不是它创建的这个字符串?

0 投票
1 回答
31 浏览

flash - 无法访问空对象引用的属性或方法:帮帮我

我已经粘贴了我的编码。最初,我在编写代码时不小心进入了第 2 帧,但后来我删除了代码文件并重新创建了文件。但是,问题仍然存在。谁能帮我这个代码

错误是

TypeError:错误 #1009:无法访问空对象引用的属性或方法。在 firstGame/gameLoop() 的 firstGame/playerControl() 处输入代码

请帮我解决

0 投票
1 回答
65 浏览

actionscript-3 - Adobe Flash CS3 - 仅在播放头到达定义的关键帧时“做某事”

我想知道如何在 Adob​​e Flash CS3 中创建一个将执行功能的按钮(如 gotoAndPlay(51)当播放头从时间轴上击中定义的关键帧时。 这是一张可以更好地解释我想要做什么的图

所以在我点击按钮后,它会等到播放头碰到最近的定义关键帧,然后它才会执行我想要的功能。

任何帮助表示赞赏。