问题标签 [craftyjs]

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 投票
1 回答
391 浏览

javascript - 在 Crafty JS 中居中图像/实体

我的页面上运行了一个 Crafty 实例,320x480。我正在尝试为一个小游戏开发一个菜单。在菜单场景的背景中,我想要一个旋转的风车式效果。

现在,轮换已经不是什么大问题了,我已经在游戏中出现了让事情无休止地移动的补间。但是我一辈子都不能把风车放在画布中间。

});

这是我在这里的代码。我还没有将补间用于旋转。

我尝试将它作为 DOM 元素而不是 Canvas 并尝试使用 CSS 来移动它,但 Crafty 似乎覆盖了这个 CSS。

有问题的图像是 2000 x 2000。我可以将其调整为 320 x 480,但是当它旋转时,边缘会出现。因此,图片必须是方形的,并且在旋转 45 度时也必须足够大以覆盖画布。但我就是不知道如何让图像的中心与画布的中心对齐!

0 投票
0 回答
116 浏览

javascript - Crafty.js 中的运动

我试图Motion在crafty.js 中使用该组件,但我在最基本的事情上失败了。似乎没有添加“运动”组件。

就像文档中示例代码中的这个非常简单的代码一样。

结果:TypeError: ent.velocity is not a function

我可以访问其他组件中的功能,比如MultivayText就好了。

0 投票
1 回答
204 浏览

javascript - 在 Craftyjs 中更改精灵帧

如何手动将精灵从第 0 帧设置到第 1 帧?

0 投票
1 回答
290 浏览

javascript - 如何在crafty.js 中使用多个hitbox 区域?

我正在尝试在我的游戏中创建多个 hitbox 区域,但我找不到任何文档或如何使用它们的示例。场景是,我的“英雄”有 2 个碰撞箱,一个在他的脚上,另一个在他的身体上。如果他用脚碰撞箱击中敌人,敌人就会死亡。如果他用身体击中敌人,他的健康必须减少。如何确定哪个碰撞箱创建了碰撞事件?

0 投票
1 回答
52 浏览

android - Cordova 更新并丢失了 craftyjs 的补间和重力

我正在尝试将移动 Cordova 游戏更新到以下版本:

/** *craftyjs 0.7.0 * http://craftyjs.com/

科尔多瓦:

{名称:'cordova',描述:'Cordova命令行界面工具','dist-tags':{最新:'6.0.0',

我失去了 .gravity() 和 .tween()

我检查了 Craftyjs 文档,我的代码看起来不错:

和:

有什么提示吗?

谢谢并恭祝安康

0 投票
1 回答
1022 浏览

javascript - 狡猾的 JS 碰撞动作

我目前正在玩狡猾的 js,并用实体对象创建了 2D 自上而下的世界。

当任何固体物体发生碰撞事件时,我希望我的玩家不再能够向所述物体的方向移动(因为有固体物体挡住了它的路径)。

我在网上找到了一些涵盖该主题的教程,但是它们调用的方法和函数已被贬低。

当我的玩家击中固体时,我可以记录碰撞,但我不知道如何停止运动。

我知道我可以为每次碰撞设置特定的解决方案(例如,顶部边框可以更新 y 以移出特定的顶部碰撞),但是我想要一种通用的方法,以便与任何可靠的结果发生碰撞,导致我的角色无法移动。

当我尝试打电话时,from.x我收到该元素是undefined,而其他元素(例如from.length确实起作用)对我来说没有意义。

或者提供一些与最新狡猾兼容的演示代码?

0 投票
1 回答
622 浏览

javascript - 如何修复 Crafty.js 中的“未捕获的类型错误:无法读取未定义的属性“调用”?

因此,对于我们的项目,我和我的团队正在尝试编写游戏。游戏的目标是改变其他玩家的船的颜色。

例如:如果玩家 1 的船为红色,玩家 2 的船为绿色,玩家 1 的每颗子弹击中玩家 2 都会慢慢地将玩家 2 从红色变为绿色。这是通过下面解释的位移来完成的。所以大部分时间我们都遇到了未捕获的类型错误,我们找不到问题所在。此文件使用:https://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.jshttp://craftyjs.com/release/0.4.2/crafty.js 作为依赖项帮助运行程序。

编辑:我设法删除了评论和一些不相关的代码

0 投票
1 回答
105 浏览

javascript - Craftyjs 画布旋转

如果我将 e1 属性 y 更改为 1 或其他一些正值,则此代码有效,但如果 y 为 0 或负数,则会失败。没有错误,但形状没有出现。如果我绘制其他类型的形状,则会出现同样的问题。无论如何,0、90和271等旋转值与y:0一起工作。x值没有这样的问题。这是为什么?它是与 Crafty.js 相关的错误吗?

0 投票
1 回答
225 浏览

javascript - 旋转实体以查看鼠标(Craftyjs)

我一直试图让我的玩家实体旋转到鼠标,但是我无法触发 MouseMove 事件。

当我用 click 或 mousedown 或任何其他鼠标事件替换 MouseMove 时,它​​会在该事件发生时旋转到鼠标。但是它从不调用 mousemove 函数。我究竟做错了什么?

0 投票
1 回答
113 浏览

javascript - 如何在 Craftyjs 中使用多行精灵表而不手动指定框架

我刚开始使用craftyjs,遇到了一个问题。

我有一个精灵表,它有两行用于相同的动画。上排有 4 个,下排有 3 个。

我不知道如何让它播放所有 7 张图像。我可以让它通过一排或另一排播放,但不能通过它们全部播放。

这是我的主要功能。注意注释掉的部分。如果我明确设置每一帧,我可以让它正常工作。这还不错,因为我只有 7 个……但我也有一些 100+!

有没有办法让它通过精灵表上的所有行而不必手动创建框架?

提前致谢!