只是一个快速的,我使用oop风格为我的JavaScript游戏,但由于某种原因,当我添加一个新的类,它杀死我已包括的其他类的任何功能。
以下是我正在讨论的脚本,这是我的主文件,我将包含所有类文件:
$(document).ready(function(){
var canvas = document.getElementById("TBG");
var context = canvas.getContext("2d");
var ui = new Gui();
// var level = new Level();
//----------Login/Register Gui --------------
$('#TBG').hide();
$('#load-new').hide();
$('#reg').hide();
$('#login').hide();
//if login_but is clicked do ui.login function
$('#login_but').click(ui.login);
//if reg_but is clicked do ui.register function
$('#reg_but').click(ui.register);
$('#new_but').click(function(){
game_settings("new");
});
$('#load_but').click(function(){
game_settings("load");
});
//if login_sumbit button is clicked do ui.login_ajax function
$("#login_submit").click(ui.login_ajax);
$("#reg_submit").click(ui.register_ajax);
$("#welcome").on("click", "#logout_but", ui.logout);
//___________________________________________________________________
//Initialisation of game
function game_settings(state){
if(state == "load"){
ui.load_game();
//do ajax call to load user last save
level.level_init(0,1);
}
else{
//set beginning params
//Change screens
ui.new_game();
alert("new game");
}
}
});
在上面的脚本的上下文中,我的问题是当我刚刚调用新的Gui()而没有调用下面的新级别或评论时你可以看到,然后在标题login下面的所有函数/ register gui工作正常,但只要我将调用放入新级别或取消注释,它就会杀死登录/注册gui标题下的所有函数。
为什么会这样?
编辑:这是level.js文件,以防您希望看到它以及我如何构建我的类:
function Level(){
this.level_init = function(level, location){
var saved_level = level;
var saved_location = location;
};
this.get_tileset = function(){
};
this.draw = function() {
}
}
由于
汤姆
答案 0 :(得分:0)
汤姆·