- Сообщений: 3147
- Спасибо получено: 2651
Размещение окна команд в титульном меню
10 года 6 мес. назад - 10 года 6 мес. назад #86400
от DeadElf79
Автор: DeadElf79
Версия: 1.0
Описание: Размещает окно на титульном экране в нужном положении с привязкой к координатам. Альтернатива плагину, идущему в комплекте, который позволяет лишь сместить окно относительно центра, а не задать ему четкие координаты.
Параметры:
Первый пост с оформлением в этом разделе. Позднее нужно все последующие оформлять также, уже готовлю шаблон с описанием.
DeadElf79 создал тему: Размещение окна команд в титульном меню
Размещение окна команд в титульном меню
Название скрипта: Scene_Title - CommandPositionАвтор: DeadElf79
Версия: 1.0
Описание: Размещает окно на титульном экране в нужном положении с привязкой к координатам. Альтернатива плагину, идущему в комплекте, который позволяет лишь сместить окно относительно центра, а не задать ему четкие координаты.
Параметры:
- X - Координата по X относительно начала координат
- Y - Координата по Y относительно начала координат
- View Skin - Позволяет отключить скин окна. 0 - выкл. скин, 1 - вкл.
- Start Point - 0 - левый верхний угол, 1 - правый верхний, 2 - левый нижний, 3 - правый нижний
Code:
//=============================================================================
// Scene_Title - CommandPosition.js
//=============================================================================
/*:
* @plugindesc Размещает окно на титульном экране в нужном положении с привязкой к координатам
* @author DeadElf79
* @param X
* @desc Координата по X относительно начала координат
* @default -200
* @param Y
* @desc Координата по Y относительно начала координат
* @default -150
* @param View Skin
* @desc Позволяет отключить скин окна. 0 - выкл. скин, 1 - вкл.
* @default 0
* @param Start Point
* @desc 0 - левый верхний угол, 1 - правый верхний, 2 - левый нижний, 3 - правый нижний
* @default 3
*/
(function() {
var parameters = PluginManager.parameters('TitleCommandPosition');
var x = Number(parameters['X'] || 100);
var y = Number(parameters['Y'] || 20);
var skin = Number(parameters['View Skin'] || 0);
var start_point = Number(parameters['Start Point'] || 0);
var ox, oy;
switch (start_point){
case 0:
ox = 0;
oy = 0;
break;
case 1:
ox = Graphics.width;
oy = 0;
break;
case 2:
ox = 0;
oy = Graphics.height;
break;
case 3:
ox = Graphics.width;
oy = Graphics.height;
break;
default:
ox = 0;
oy = 0;
}
var _Window_TitleCommand_updatePlacement = Window_TitleCommand.prototype.updatePlacement;
Window_TitleCommand.prototype.updatePlacement = function() {
_Window_TitleCommand_updatePlacement.call(this);
this.x = ox + x;
this.y = oy + y;
};
})();
Первый пост с оформлением в этом разделе. Позднее нужно все последующие оформлять также, уже готовлю шаблон с описанием.
Последнее редактирование: 10 года 6 мес. назад пользователем DeadElf79.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Скрыть
Больше
- Сообщений: 1247
- Спасибо получено: 412
10 года 6 мес. назад #86401
от Kian Ni
Kian Ni ответил в теме Размещение окна команд в титульном меню
Спешу тебя огорчить, но такой скрипт идет в комплекте с мейкером.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 6 мес. назад - 10 года 6 мес. назад #86402
от DeadElf79
DeadElf79 ответил в теме Размещение окна команд в титульном меню
Спешу тебе ответить, что тот скрипт несёт лишь сдвиг относительно центра экрана. Мой - задает относительно указанного угла (что удобно, если хочется сделать меню в левом нижнем углу и чтобы при любом разрешении это работало верно).
На данный момент разбираюсь, как скрыть шкурку окна. И у меня проблема с получением Graphics.wdith - оно выводит undefined и я пока не понимаю, почему.
На данный момент разбираюсь, как скрыть шкурку окна. И у меня проблема с получением Graphics.wdith - оно выводит undefined и я пока не понимаю, почему.
Последнее редактирование: 10 года 6 мес. назад пользователем DeadElf79.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Скрыть
Больше
- Сообщений: 1247
- Спасибо получено: 412
10 года 6 мес. назад #86403
от Kian Ni
Kian Ni ответил в теме Размещение окна команд в титульном меню
Те же яйца, только в профиль.
Потому что там Graphics.boxWidth.
Потому что там Graphics.boxWidth.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 6 мес. назад #86405
от DeadElf79
DeadElf79 ответил в теме Размещение окна команд в титульном меню
Киан, первый плагин на десятой минуте изучения местного варианта JS, чего ты хотел? Боевую систему? Освещение? 
За параметр спасибо, попробую

За параметр спасибо, попробую
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Скрыть
Больше
- Сообщений: 1247
- Спасибо получено: 412
10 года 6 мес. назад #86406
от Kian Ni
Kian Ni ответил в теме Размещение окна команд в титульном меню
Нет, я не хотел тебя обидеть или задеть, просто зачем делать то, что уже есть?
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 6 мес. назад #86407
от DeadElf79
DeadElf79 ответил в теме Размещение окна команд в титульном меню
Потому что я пока даже того, что есть, не понимаю. Вот, буду учиться на ошибках.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Скрыть
Больше
- Сообщений: 1247
- Спасибо получено: 412
10 года 6 мес. назад #86408
от Kian Ni
Kian Ni ответил в теме Размещение окна команд в титульном меню
Ладно, удачи тебе бро.
Спасибо сказали: DeadElf79
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 6 мес. назад - 10 года 6 мес. назад #86520
от DeadElf79
DeadElf79 ответил в теме Размещение окна команд в титульном меню
Проблема с размещением окна с зависимостью от разрешения экрана решается очень просто и не имеет последствий (я, по крайней мере, их не увидел):
js/main.js
js/rpg_manager.js строка 1470
Прошу EvilCat и всех разбирающихся проверить на совместимость с их плагинами. Если всё в порядке, то всякие странные плагины эльфа можно будет использовать с этим костылем
js/main.js
Code:
//=============================================================================
// main.js
//=============================================================================
//PluginManager.setup($plugins);
window.onload = function() {
SceneManager.run(Scene_Boot);
};
js/rpg_manager.js строка 1470
Code:
SceneManager.run = function(sceneClass) {
try {
this.initialize();
// --- ADDED PLUGIN LOADING AFTER INITIALIZE
PluginManager.setup($plugins);
// ---
this.goto(sceneClass);
this.requestUpdate();
} catch (e) {
this.catchException(e);
}
};
Прошу EvilCat и всех разбирающихся проверить на совместимость с их плагинами. Если всё в порядке, то всякие странные плагины эльфа можно будет использовать с этим костылем
Последнее редактирование: 10 года 6 мес. назад пользователем DeadElf79.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
7 года 2 мес. назад - 7 года 2 мес. назад #109369
от Alexandr_7
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Alexandr_7 ответил в теме Размещение окна команд в титульном меню
Изменил оригинальный скрипт.
Добавил так EnableOffset. Он отвечает будет ли задано смещение или будет задана позиция.
Позже переведу и доведу до удобства к версии 1.5.
Ещебы потом скинуть разроаботчику оригинала. Тоесть самому Yoji Ojima. Но его найти бы на форуме или его почту.
смещения.
В отличите от твоего все функции оригинала присутствуют. Тоесть тотже background некуда не делся и его можно использоввать.
Вообще не понимаю этих японцев. Во всяком случае Yoji Ojima ленивый раз поленился добавить пару строчек кода.
Добавил так EnableOffset. Он отвечает будет ли задано смещение или будет задана позиция.
Позже переведу и доведу до удобства к версии 1.5.
Ещебы потом скинуть разроаботчику оригинала. Тоесть самому Yoji Ojima. Но его найти бы на форуме или его почту.
Code:
//=============================================================================
// TitleCommandPosition.js
//=============================================================================
/*:
* @plugindesc Changes the position of the title command window.
* @author Yoji Ojima (Fix from Alexandr_7)
*
* @param EnableOffset
* @desc Set by offset
* @type boolean
* @on Enable
* @off Disable
* NO - false YES - true
* @default false
*
* @param Offset X
* @desc The offset value for the x coordinate.
* @default 0
*
* @param Offset Y
* @desc The offset value for the y coordinate.
* @default 0
*
* @param Width
* @desc The width of the command window.
* @default 240
*
* @param Background
* @desc The background type. 0: Normal, 1: Dim, 2: Transparent
* @default 0
*
* @help This plugin does not provide plugin commands.
*/
/*:ja
* @plugindesc タイトルコマンドウィンドウの位置を変更します。
* @author Yoji Ojima
*
* @param EnableOffset
* @desc Set by offset
* @type boolean
* @on Enable
* @off Disable
* NO - false YES - true
* @default false
*
* @param Offset X
* @desc X座標のオフセット値です。
* @default 0
*
* @param Offset Y
* @desc Y座標のオフセット値です。
* @default 0
*
* @param Width
* @desc コマンドウィンドウの幅です。
* @default 240
*
* @param Background
* @desc 背景タイプです。0: 通常、1: 暗くする、2: 透明
* @default 0
*
* @help このプラグインには、プラグインコマンドはありません。
*/
(function() {
var parameters = PluginManager.parameters('TitleCommandPosition');
var EnableOffset = eval(String(parameters['EnableOffset']));
var offsetX = Number(parameters['Offset X'] || 0);
var offsetY = Number(parameters['Offset Y'] || 0);
var width = Number(parameters['Width'] || 240);
var background = Number(parameters['Background'] || 0);
var _Window_TitleCommand_updatePlacement =
Window_TitleCommand.prototype.updatePlacement;
Window_TitleCommand.prototype.updatePlacement = function() {
_Window_TitleCommand_updatePlacement.call(this);
if (EnableOffset == true) {
this.x += offsetX;
this.y += offsetY;
} else {
this.x = offsetX;
this.y = offsetY;
}
this.setBackgroundType(background);
};
Window_TitleCommand.prototype.windowWidth = function() {
return width;
};
})();
В отличите от твоего все функции оригинала присутствуют. Тоесть тотже background некуда не делся и его можно использоввать.
Вообще не понимаю этих японцев. Во всяком случае Yoji Ojima ленивый раз поленился добавить пару строчек кода.
Мой вк: vk.com/borisov_alexandr_5
Мой ютуб канал: www.youtube.com/@alexandr_5836
Мой бусти: boosty.to/alexandr-7
Последнее редактирование: 7 года 2 мес. назад пользователем Alexandr_7.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Время создания страницы: 0.109 секунд
