2013-03-26 55 views
0

只是一个快速的,即时通讯使用我的JavaScript游戏的一种操作方式,但由于某种原因,当我添加一个新的类时,它会杀死我包括其他类的任何功能。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() { 

} 
    } 

感谢

汤姆

+2

这听起来像你的'Level'函数有一个错误。 – ruakh 2013-03-26 18:12:48

+0

它不是严格的OOP,只是使用类来包含我的游戏的每个部分。例如level_loader,player,collision等 – 2013-03-26 18:12:57

+0

@ruakh,我会编辑包含我的关卡功能,我不知道它是如何导致js错误的 – 2013-03-26 18:13:34

回答

0

对不起你们,事实证明这是一个愚蠢的错误,我代表我没有添加脚本在HTML !,我需要更多的睡眠,我认为哈哈!感谢您的输入

TOm