旋转实体以查看鼠标(Craftyjs)
Rotate entity to view mouse (Craftyjs)
我一直试图让我的玩家实体旋转到鼠标上,但我无法触发MouseMove事件。
Crafty.e("2D, Mouse, Canvas, Color"
.attr({ w:1000, h:1000, x:0, y:0 })
.bind('MouseMove', function(e)
{
console.log("Mouse Pos:"+ e.x +","+e.y);
//get hero
var pos1 = {
x: e.x,
y: e.y
}
var pos2 = {
x: player.x,
y: player.y
}
player.rotation = 0;
player.rotation = -Engine.degree(pos1, pos2);
})
当我用点击或鼠标向下或任何其他鼠标事件替换MouseMove时,当该事件发生时,它会旋转到鼠标。然而,它从不调用mousemove函数。我做错了什么?
看看社区制作的CraftyMouseFace组件:
该组件执行以下操作:
- 它会找到给定精灵和鼠标位置之间的角度,并触发一个Crafty事件,该事件包含有关当前鼠标位置以及以弧度和度数计算的角度的信息
- 确定精灵朝向的方向
- 当鼠标按钮在游戏屏幕上的任何位置按下或释放时,触发Crafty事件
第一个功能听起来像你需要的。
让我们在下面的代码段中测试MouseMoved
事件及其事件数据
移动鼠标指针,注意绿色矩形如何旋转以面对指针
Crafty.init();
Crafty.e("2D, DOM, Color, MouseFace")
.attr({x: 75, y: 75, w: 60, h: 60})
.origin("center")
.color('green')
.bind("MouseMoved", function(data) {
this.rotation = data.rad * 180 / Math.PI;
});
<script src="https://github.com/craftyjs/Crafty/releases/download/0.7.1/crafty-min.js"></script>
<script src="https://cdn.rawgit.com/petarov/CraftyMouseFace/master/src/craftyMFace.js"></script>
相关文章:
- EaseJS拖放;放下(动画CC)电影剪辑的鼠标坐标
- 当鼠标悬停在文本中的单词上时显示警报
- JsFiddle上的鼠标事件不起作用
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 鼠标悬停事件影响列表中所有行中的按钮,而不仅仅是特定按钮
- 将鼠标旋转限制为特定的度数
- 跟踪jqplot垂直折线图的鼠标位置
- node-webkit-从父窗口捕获iframe鼠标事件
- 悬停下拉菜单即使在鼠标移出后也保持活动状态
- Javascript-在视频中跟踪鼠标位置
- JQuery UI可拖动潜水与滚动棒到鼠标
- 如何在jquery中找到鼠标滚轮/触摸移动事件的走向
- 在鼠标悬停时展开列表
- jQuery悬停在没有鼠标悬停的情况下启动
- 鼠标输入在 YUI 的 chrome 中不起作用
- 鼠标悬停时如何居中放大背景图像
- 鼠标光标-用于wordpress网站
- 当我在节点上拖动鼠标时,我如何防止使用d3.ehavior.zoom().on(“缩放”,重绘)
- 旋转实体以查看鼠标(Craftyjs)