Как подстроить интерфейс под размер окна?[MV]
8 года 1 мес. назад - 8 года 1 мес. назад #102908
от AnnTenna
AnnTenna создал тему: Как подстроить интерфейс под размер окна?[MV]
Проблема такая: есть интерфейс, я использую от MOG вот эти плагины для отображения: MOG_ActorHud и MOG_GoldHud, а для изменения размеров окна RS_ScreenManager
Проблема в том, что получается вот такая вот вещь:
При других размерах съезжает по-другому...всегда оставаясь на заданных координатах. Вот нашла, что там координаты задаются напрямую прям внутри плагина:
А у меня координаты могут скакать - в зависимости от разрешения экрана быть разными, и в зависимости от этого положение будет разным, а не напрямую зависящим от конкретного числа. Пыталась задавать параметрами -не получается..или я неправильно параметр задаю.
Как можно решить эту проблему?
Можно ли вбивать туда какие-нибудь параметры типа "размер окна"? И как вообще вытащить текущий размер окна? Если не получится в настройки плагина засунуть, можно же в сам плагин, просто убрать эту настройку?
То есть мне главное нужно как-то понять, как так добавить, чтобы интерфейс мог подстраиваться под размер экрана игрока.
Во вложении приложила два плагина - худ и скрин-менеджер. Думаю, все эти худы одинаково работают, стоит сначала с одним разобраться.
Проблема в том, что получается вот такая вот вещь:
При других размерах съезжает по-другому...всегда оставаясь на заданных координатах. Вот нашла, что там координаты задаются напрямую прям внутри плагина:
А у меня координаты могут скакать - в зависимости от разрешения экрана быть разными, и в зависимости от этого положение будет разным, а не напрямую зависящим от конкретного числа. Пыталась задавать параметрами -не получается..или я неправильно параметр задаю.
Как можно решить эту проблему?
Можно ли вбивать туда какие-нибудь параметры типа "размер окна"? И как вообще вытащить текущий размер окна? Если не получится в настройки плагина засунуть, можно же в сам плагин, просто убрать эту настройку?
То есть мне главное нужно как-то понять, как так добавить, чтобы интерфейс мог подстраиваться под размер экрана игрока.
Во вложении приложила два плагина - худ и скрин-менеджер. Думаю, все эти худы одинаково работают, стоит сначала с одним разобраться.
Последнее редактирование: 8 года 1 мес. назад пользователем AnnTenna.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
8 года 1 мес. назад - 8 года 1 мес. назад #102930
от Mur
Ну текущий размер окна можно получить из:
Так что можно попробовать формулы для HP типа:
Y-Axis: eval(SceneManager._screenHeight - высота картинки)
Ну и соотвественно для золота
X-Axis: eval(SceneManager._screenWidth- ширина картинки)
Y-Axis: eval(SceneManager._screenHeight- высота картинки)
p.s. не могу сказать на верняка,что это сработает, но вдруг. Возможно eval может и не понадобится.
p.p.s. возможно придётся сделать мини-заплатку к плагину
Mur ответил в теме Как подстроить интерфейс под размер окна?[MV]
AnnTenna пишет: Можно ли вбивать туда какие-нибудь параметры типа "размер окна"? И как вообще вытащить текущий размер окна?
Ну текущий размер окна можно получить из:
Code:
SceneManager._screenWidth
SceneManager._screenHeight
Так что можно попробовать формулы для HP типа:
Y-Axis: eval(SceneManager._screenHeight - высота картинки)
Ну и соотвественно для золота
X-Axis: eval(SceneManager._screenWidth- ширина картинки)
Y-Axis: eval(SceneManager._screenHeight- высота картинки)
p.s. не могу сказать на верняка,что это сработает, но вдруг. Возможно eval может и не понадобится.
p.p.s. возможно придётся сделать мини-заплатку к плагину
Последнее редактирование: 8 года 1 мес. назад пользователем Mur.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
8 года 1 мес. назад #102932
от DK
DK ответил в теме Как подстроить интерфейс под размер окна?[MV]
Можно еще получить:
Как сказал бы Dmy: Не пользуйся приватными переменными...
Code:
Graphics.boxWidth
Graphics.boxHeight
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
8 года 1 мес. назад - 8 года 1 мес. назад #102934
от AnnTenna
AnnTenna ответил в теме Как подстроить интерфейс под размер окна?[MV]
Спасибо, что откликнулись!
Я вообще неправильно изначально параметр прописывала, но даже если писать в редактор в менеджер плагинов правильно как вы советуете, и то и то пыталась в настройки плагина - один фиг, игра не вылетает, но нужный худ вообще в этом случае не отображает, видимо там в плагине стоит какая-то "защита от дурака" на этот случай 
Попробовала забраться в сами плагины, дабы прям там вмешаться в их работу и переопределить нужные мне параметры, но и это не увенчалось успехом.
Вот, например в голд-худ
Вроде бы и место правильное, но почему то либо не отображает вообще худ, если пишу, как сказал ДК:
либо отображает где-то не там, если как сказала Мур, похоже, по умолчанию.
Не туда чтоли пишу куда.
И вообще, наверное, плохая идея была лезть в сами плагины, надо было делать свой заплаткой..но если и так не работает, то ведь и заплатка не будет работать
Попробовала забраться в сами плагины, дабы прям там вмешаться в их работу и переопределить нужные мне параметры, но и это не увенчалось успехом.
Code:
//=============================================================================
// ** PLUGIN PARAMETERS
//=============================================================================
var Imported = Imported || {};
Imported.MOG_GoldHud = true;
var Moghunter = Moghunter || {};
Moghunter.parameters = PluginManager.parameters('MOG_GoldHud');
// HUD POSITION
Moghunter.ghud_pos_x = Number(Moghunter.parameters['Hud X-Axis'] || 555); // ТуТ же менять вроде!?
Moghunter.ghud_pos_y = Number(Moghunter.parameters['Hud Y-Axis'] || 560); // И ТУТ
Moghunter.ghud_number_pos_x = Number(Moghunter.parameters['Number X-Axis'] || 240);
Moghunter.ghud_number_pos_y = Number(Moghunter.parameters['Number Y-Axis'] || 24);
Moghunter.ghud_fade_limit = Number(Moghunter.parameters['Fade Max'] || 60);
Moghunter.ghud_hudvisible = String(Moghunter.parameters['Initial Visible'] || "true");
Вроде бы и место правильное, но почему то либо не отображает вообще худ, если пишу, как сказал ДК:
Code:
Moghunter.ghud_pos_x = Number(Graphics.boxWidth-286);
Moghunter.ghud_pos_y = Number(Graphics.boxHeight-81);
либо отображает где-то не там, если как сказала Мур, похоже, по умолчанию.
Code:
Moghunter.ghud_pos_x = Number(eval(SceneManager._screenWidth-286));
Moghunter.ghud_pos_y = Number(eval(SceneManager._screenHeight-81));
И вообще, наверное, плохая идея была лезть в сами плагины, надо было делать свой заплаткой..но если и так не работает, то ведь и заплатка не будет работать
Последнее редактирование: 8 года 1 мес. назад пользователем AnnTenna.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
8 года 1 мес. назад #102936
от DK
DK ответил в теме Как подстроить интерфейс под размер окна?[MV]
Попробуй найти в коде место, где используется (не присваивается) Moghunter.ghud_pos_x и вместо него написать (Graphics.boxWidth-286). Видимо, на момент присваивания размер экрана еще не поменялся, и поэтому может криво отображаться.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
8 года 1 мес. назад #102971
от AnnTenna
AnnTenna ответил в теме Как подстроить интерфейс под размер окна?[MV]
Сработало! Спасибо большое!!!!
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Время создания страницы: 0.099 секунд
