Javascript Processing.js won';我跑不了。最小误差?
编辑:我只想介绍一下背景。这是一款类似流氓的自上而下地图游戏,使用方格“GridSq”作为精灵移动的背景,由用户通过鼠标、箭头键和WASD键输入控制。栅格的每个正方形都有自己的对象,如下所述 我以一种非常受JAVA影响的方式编程处理,所以我认为这可能就是脚本没有在带有Processing.js的浏览器中运行的原因。我在OSX 10.9上使用最新的Chrome v 33.0.1750.152。我只是得到了一张白色画布和以下错误 未捕获引用错误:未定义GridSq 未捕获的TypeError:无法读取null的属性“0” 关于处理,分别是:Javascript Processing.js won';我跑不了。最小误差?,javascript,html5-canvas,processing,processing.js,Javascript,Html5 Canvas,Processing,Processing.js,编辑:我只想介绍一下背景。这是一款类似流氓的自上而下地图游戏,使用方格“GridSq”作为精灵移动的背景,由用户通过鼠标、箭头键和WASD键输入控制。栅格的每个正方形都有自己的对象,如下所述 我以一种非常受JAVA影响的方式编程处理,所以我认为这可能就是脚本没有在带有Processing.js的浏览器中运行的原因。我在OSX 10.9上使用最新的Chrome v 33.0.1750.152。我只是得到了一张白色画布和以下错误 未捕获引用错误:未定义GridSq 未捕获的TypeError:无法读
... g[i][j] = new GridSq(cTemp, false, -1, -1); ...
... if (!grid[i][j].shown) { } ...
// Declaration for 'grid' double array
GridSq[][] grid;
下面是GridSq类,错误表明该类未定义。但是,它是在其类中定义的,并且已包括在内
class GridSq {
String type;
boolean movable;
int goblin;
int chest;
boolean shown;
GridSq(String t, boolean m, int g, int c) {
type = t;
movable = m;
goblin = g;
chest = c;
shown = false;
}
}
在我的HTML中,我为声音导入Processing.js和minim.js
<script src="js/processing.js"></script>
<script src="js/minim.js"></script>
<article id="baliDiv" title="Bali Brawl">
<canvas data-processing-sources="pde/BaliBrawl/BaliBrawl.pde"></canvas>
</article>
现在是现场直播。包含画布的div已加载,但style=display:none;因此,您可以打开JavaScript控制台,立即查看错误。不需要导航到它,它只是显示一个空白画布
在我的处理代码中,有一种可能是错误发生在其他地方,但是在这里发布太多了。感谢您提供的任何帮助。您的页面仅加载BaliBrawl.pde,它不包含
GridSq
Mike的任何类定义-您完全正确。在常规处理中,只要类位于同一文件夹中,就可以自动访问它们。据我所知,在processing.js中,所有类都必须包含在主类中。完成此操作并调整“数据”文件名调用后,它完全可以正常工作。你的评论真的让我走上了正确的轨道,非常感谢。他们不必这么做。您可以使用数据处理源=“BaliBrawl.pde GridSq.pde etc.pde”
指示多个加载,空格分隔。Processing.js随后将加载所有这些文件
// GridSq constructor from GridSq Class
// The errors I am receiving indicate that the first time this constructor is called
// is when I am getting an error
GridSq(String t, boolean m, int g, int c) {
type = t;
movable = m;
goblin = g;
chest = c;
shown = false;
}