Javascript 让cocos2d-html5与visual studio协同工作
Javascript 让cocos2d-html5与visual studio协同工作,javascript,visual-studio-2012,cocos2d-html5,Javascript,Visual Studio 2012,Cocos2d Html5,我发誓处理IDE问题是最糟糕的。我想做的就是用一些代码把我的手弄脏,但是做不到 正如标题所示,我正试图让Cocos2d-HTML5在VisualStudio2012中工作。我已经将Cocos2d-HTML5文件复制到我的web目录中,并学习了一些教程,但是我在jsloader.js方面遇到了问题 在下面的更改之前,它找不到jsloader.js: FROM: `engineDir: '../cocos2d/',` TO: `engineDir: '../GridWars/coco
我发誓处理IDE问题是最糟糕的。我想做的就是用一些代码把我的手弄脏,但是做不到<代码>
正如标题所示,我正试图让Cocos2d-HTML5在VisualStudio2012中工作。我已经将Cocos2d-HTML5文件复制到我的web目录中,并学习了一些教程,但是我在jsloader.js
方面遇到了问题
在下面的更改之前,它找不到jsloader.js
:
FROM: `engineDir: '../cocos2d/',`
TO: `engineDir: '../GridWars/cocos2d/'`
Gridwars
是项目的名称
现在它找到了jsloader.js
,但有一个错误
Unhandled exception at line 117, column 5 in http://localhost:51244/GridWars/cocos2d/platform/jsloader.js
0x800a138f - JavaScript runtime error: Unable to get property 'loadExtension' of undefined or null reference
对于这些代码行:
var d = document;
var c = d.ccConfig;
if (c.loadExtension != null && c.loadExtension == true) {
您使用了哪一版本的Cocos2d-html5 需要在cocos2d.js文件中配置您的设置。您可以在template文件夹中找到此文件 例如:
var c = {
COCOS2D_DEBUG:2, //0 to turn debug off, 1 for basic debug, and 2 for full debug
box2d:false,
chipmunk:false,
showFPS:true,
loadExtension:false, //**Hey, here is the loadExtension.....**
frameRate:60,
tag:'gameCanvas', //the dom element to run cocos2d on
engineDir:'../cocos2d/',
//SingleEngineFile:'',
appFiles:[
'src/resource.js',
'src/myApp.js'//add your own files in order here
]
};
答案贴在他们的网站上。我在听他们的一篇教程,最后在文章的底部找到了我的答案 答复: 在
cocos2d.js中
查找“s.c=c
”
将其更改为“document.ccConfig=c
”
在main.js中
查找“config:document.querySelector('#cocos2d-html5')['c'],
”
将其更改为“
config:document.ccConfig,
”v2.2也有类似错误。我发现在cocos2d.js文件中移动一行代码会有所帮助
window.addEventListener('DOMContentLoaded', function () {
...
d.body.appendChild(s);
document.ccConfig = c;
s.id = 'cocos2d-html5';
//else if single file specified, load singlefile
});
删除行:document.ccConfig=c编码>并将其移动到窗口之前。addEventListener
例如:
在很大程度上,这就是我的工作。除了我需要更改引擎以包含项目名称,使其看起来像:/cocos2d/您为我指出了正确的方向,但下面是我的答案,解决了这个问题
document.ccConfig = c;
window.addEventListener('DOMContentLoaded', function () {
// etc
});