global.game_width не установлен до его чтения

global variable name 'game_width' index (100009) not set before reading it.
at gml_Object_objTextbox_Create_0 (line 16) port_x = (global.game_width  
- box_width - port_width) * 0.5

Изображение ошибки

Я создал в игре global.game_height и ширину, но это не работает. Что я должен сделать?

Изображение ошибки 2


person Michelle Moonknight    schedule 22.04.2019    source источник
comment
Похоже, что objtextbox создается раньше, чем объект game, поэтому он не может найти global.game_width до его инициализации. Не уверен, как это можно изменить, поскольку вы запускаете его уже позже, чем объект game.   -  person Steven    schedule 23.04.2019
comment
Большое спасибо, теперь я знаю, что я не так, и переписал это, и это работает   -  person Michelle Moonknight    schedule 24.04.2019
comment
Похоже, теперь я понял проблему и решил сделать свой комментарий ответом. :)   -  person Steven    schedule 25.04.2019


Ответы (1)


Похоже, объект objtextbox создан раньше, чем объект game.
И поскольку объект game создает переменную, он не может найти global.game_width до своей инициализации.

Внутри свойств текстового слоя на левой боковой панели вы увидите все объекты, которые загружаются внутри комнаты. Объект game там не показан, поэтому вам нужно поместить объект game в комнату (и изменить порядок их загрузки первыми), чтобы он работал.

Я не уверен, что это все еще применимо, поскольку вы уже переписали свой код, но это нужно помнить в следующий раз.

person Steven    schedule 25.04.2019