Uncaught TypeError: Cannot read property 'width' of null
Pessoal, esse erro está me infernizando a vida, só acontece as vezes e quando eu mando carregar um jogo salvo. Vamos do inicio.
Criei um sistema novo para o jogo para que ele seja salvo. Somente 1 jogo é salvo, não tem sistema de slots. Ao salvar ele cria o arquivo normalmente sem qualquer problema. Quando vou lá para carregar o jogo salvo (AS VEZES) esse erro ocorre, mas ocorre com certa frequência. De 10 vezes que eu tento carregar o jogo 6 vezes ele me inferniza com esse erro. Isso quando eu estou testando o jogo dentro do RPG Maker MV. Quando eu compilo e exporto o game (como se ele fosse ser distribuído), ele também ocorre, mas em proporções menores, cerca de 4 vezes em 10 que eu tento executa-lo.
Lembro-me que quando eu usava a versão 1.0.1 do RMMV esse erro não ocorria, talvez porque o projeto estivesse apenas no inicio, já agora com o maker atualizado pra versão 1.2.0 ocorre isso com essa frequência.
Pesquisando por aí, li que esse erro ocorre quando o maker tenta carregar um objeto que ainda não foi lido, então ele da esse erro, é como você tentar beber um como d'água sem ter colocado água dentro kkkk.
Li também que é porque o maker não consegue realizar trocas e carregamento de imagens em sequencia sem ter um "Wait" para ele carregar tudo, mais uma vez... é como você fosse tentar explicar algo pra alguém lerdo das ideias, você tem que ir devagar kkkk... Bom, agora eu não sei de fato o que causa esse erro. Li também que esse erro é comum em operações com JavaScript.
Agora li também que tem gente dizendo que isso não seria considerado um bug do maker, mas a questão é... porque tem tanta gente com esse mesmo problema? Eu acredito que se isso não fosse um bug o maker deveria tratar desse erro de uma forma viavel, afinal de contas, se não é um bug então ele deve criar uma forma qualquer desse problema não ocorrer correto? Bom, indiferente a isso como é que podemos resolver essa parada ai? Isso ta irritando legal. Toma um tempo danado da gente sem contar o fato de que o jogador vai ter que conviver com isso quando for jogar seu game, o que não seria nada correto.
Não sei se eu fiz alguma merda ou se isso é um bug ou tem algum macete pra acabar com isso, mas até agora eu não consegui resolver esse problema e estou procurando ajuda do pessoal pra tentar solucionar. Adianto também que a possibilidade de isso ser causado por algum plugin é remota, pra mim é coisa do próprio maker nos arquivos managers.js e objects.js... sei lah. Sou programador em Delphi e na minha concepção de programador, esse erro é causado por alguma "falha" do maker em interpretar algo não imaginado pelos programadores dele que pudesse vir a ocorrer com os usuários.
Abaixo vou colocar algumas screens que podem ajudar no problema.
Codigo do meu SaveGame (Salvando)
Console mostrando o erro.
Código:
if(DataManager.loadGame(1)){
if ($gameSystem.versionId() !== $dataSystem.versionId){
$gamePlayer.reserveTransfer($gameMap.mapId(), $gamePlayer.x, $gamePlayer.y);
$gamePlayer.requestMapReload();
}
$gameSystem.onAfterLoad();
SceneManager.goto(Scene_Map);
}
PS: Uma duvida... Olhem na screen 1. Como eu tiro essa maldita barra de endereços dali? kkkkk Ja tentei de tudo menos o certo.