问题标签 [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.
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 课程,其中不包含动画,所以你们可以实际阅读它。如果您希望我编辑帖子并添加带有草率动画代码的运动类,我会的,但它非常难以阅读。
actionscript-3 - 使用 .stage 没有给出想要的结果
我使一个全局变量等于一个movieclip
一个函数使用 if 语句运行,检查 [x] 电影剪辑是否存在,如果它不添加它。尽管 MovieClip 在舞台上,但它继续使用 if 语句。
文档类
单独的类(函数每帧运行)
flash - 如何在 Flash/animate 中创建单独/独立的交互区域?
我想创建一个游戏,然后将屏幕分成两个、三个或四个部分,并让该游戏实例出现在每个“部分”中。然后,游戏将由与部分对应的玩家数量独立进行。
谢谢
actionscript-3 - 为什么我不能删除此影片剪辑?
我在onTouch
一个类的构造函数中有一个 TouchEvent 函数,该函数item_Potion
在触摸 Movieclip 时运行。这个函数经过一系列不相关的检查,最后它应该删除自己(Movieclip)。
在 onTouch 函数结束时,它应该通过执行以下操作来移除自身:this.parent.removeChild(this);
但是,这不起作用。
我收到以下错误消息:
它为错误消息引用的行(第 56 行)具有以下内容:
我的进口:
我知道问题不在于我的代码的其他部分,因为我尝试将这条线换掉,visible = false;
但没有收到任何错误。因此,我确定问题出在我删除 MovieClip 的方式上,这就是我需要帮助的地方。
我尝试过的类似来源不起作用:
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
允许的最大链接数
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,而不是它创建的这个字符串?
flash - 无法访问空对象引用的属性或方法:帮帮我
我已经粘贴了我的编码。最初,我在编写代码时不小心进入了第 2 帧,但后来我删除了代码文件并重新创建了文件。但是,问题仍然存在。谁能帮我这个代码
错误是
TypeError:错误 #1009:无法访问空对象引用的属性或方法。在 firstGame/gameLoop() 的 firstGame/playerControl() 处输入代码
请帮我解决
actionscript-3 - Adobe Flash CS3 - 仅在播放头到达定义的关键帧时“做某事”
我想知道如何在 Adobe Flash CS3 中创建一个将执行功能的按钮(如 gotoAndPlay(51)但仅当播放头从时间轴上击中定义的关键帧时。 这是一张可以更好地解释我想要做什么的图
所以在我点击按钮后,它会等到播放头碰到最近的定义关键帧,然后它才会执行我想要的功能。
任何帮助表示赞赏。