如何使用JavaScript使我的角色随机移动 var-dx:Number=0; 变量dy:Number=0; var目标:点; var速度:数字=10; 目标=新点(Math.random()*500,Math.random()*400); 跟踪(目标); stage.addEventListener(Event.ENTER_FRAME,FollowBall); 函数跟随球(事件:事件):无效{ 变量角度=数学atan2(dy,dx)/Math.PI*180; 旋转=角度; dx=Mozzie.x-target.x; dy=Mozzie.y—target.y; Mozzie.x-=dx/速度; Mozzie.y-=dy/速度; var hyp=Math.sqrt((dx*dx)+(dy*dy)); 如果(hyp

如何使用JavaScript使我的角色随机移动 var-dx:Number=0; 变量dy:Number=0; var目标:点; var速度:数字=10; 目标=新点(Math.random()*500,Math.random()*400); 跟踪(目标); stage.addEventListener(Event.ENTER_FRAME,FollowBall); 函数跟随球(事件:事件):无效{ 变量角度=数学atan2(dy,dx)/Math.PI*180; 旋转=角度; dx=Mozzie.x-target.x; dy=Mozzie.y—target.y; Mozzie.x-=dx/速度; Mozzie.y-=dy/速度; var hyp=Math.sqrt((dx*dx)+(dy*dy)); 如果(hyp,javascript,html5-canvas,Javascript,Html5 Canvas,好的,这是一个起点。我将AS3转换为ES6JavaScript,对现有代码进行了最小的修饰性更改。您可以看到它们是多么的相似 除非您使用的是第三方ActionScript库,否则我相信您90%以上的逻辑都能很好地移植。尽管AS3使用的是ECMAScript 4,但它比JavaScript中的ES4和ES5实现标准化领先了很多 您需要调整事件处理程序,因为我不确定事件的工作方式。ENTER_FRAME工作,我已经有一段时间没有使用Flex了。我假设这是某种鼠标事件。至于跟踪,我只是通过分割传入参数

好的,这是一个起点。我将AS3转换为ES6JavaScript,对现有代码进行了最小的修饰性更改。您可以看到它们是多么的相似

除非您使用的是第三方ActionScript库,否则我相信您90%以上的逻辑都能很好地移植。尽管AS3使用的是ECMAScript 4,但它比JavaScript中的ES4和ES5实现标准化领先了很多

您需要调整事件处理程序,因为我不确定
事件的工作方式。ENTER_FRAME
工作,我已经有一段时间没有使用Flex了。我假设这是某种鼠标事件。至于跟踪,我只是通过分割传入参数来模拟它的功能,因为它们可以在Flash中用逗号分隔;然后映射到嗯

我强烈建议立即切换到JavaScript。Flex/AS/Flash是一种正在消亡的语言,ES6+HTML5是一种新的生活方式

//=====================================================================
//设置
// =====================================================================
类点{
构造函数(x,y){
这个.x=x;
这个。y=y;
}
}
类Mozzie{}
Mozzie.x=0;
Mozzie.y=0;
Mozzie.rotation=0;
函数跟踪(){
log([].slice.call(arguments).map(x=>JSON.stringify(x)).join(“”));
}
var stage=document.getElementById('stage');
// =====================================================================
var-dx=0;
var-dy=0;
var target;//点
无功转速=10;
目标=新点(Math.random()*500,Math.random()*400);
跟踪(目标);
stage.addEventListener('mouseenter',FollowBall);
函数跟踪球(事件){
变量角度=数学atan2(dy,dx)/Math.PI*180;
旋转=角度;
dx=Mozzie.x-target.x;
dy=Mozzie.y—target.y;
Mozzie.x-=dx/速度;
Mozzie.y-=dy/速度;
var hyp=Math.sqrt((dx*dx)+(dy*dy));
如果(hyp