- Сообщений: 11
- Спасибо получено: 3
Подкачка изображений через плагин
10 года 5 мес. назад #87400
от Logan
Logan создал тему: Подкачка изображений через плагин
Обращаюсь за помощью к знающим, так как сам в синтаксисе MV с ЯваСкрипт не очень рублю. Пытаюсь реализовать загрузку дополнительного изображения к каждому предмету, в "Notes" которого указан соответствующий файл, по типу <additional image: some_picture.png>.
Затем вывести кодом, соответствующее имени, изображение и вставить в нужное место инвентаря.
Не подскажете, как реализовать код вывода изображения? Как вставить - разберусь.
Затем вывести кодом, соответствующее имени, изображение и вставить в нужное место инвентаря.
Не подскажете, как реализовать код вывода изображения? Как вставить - разберусь.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 5 мес. назад #87416
от KageDesu
KageDesu ответил в теме Подкачка изображений через плагин
Чтобы вывести изображение, нужно создать Sprite.
var sprite = new Sprite(ImageManager.loadPicture(имя картинки без расширения));
Картинка должна быть в папке img/pictures.
У объекта sprite можно задать x и y. Лучше посмотреть справку по RPG Maker MV.
Теперь необходимо этот спрайт добавить на нашу сцену или окно, в котором мы хотим его показать.
За это отвечает функция addChild().
Пример:
Допустим мы хотим вывести картинку some.png в меню, в окне с золотом.
В конце функции Window_Base.prototype.drawCurrencyValue дописываем следующий код:
Метод addChild можно вызывать внутри функций окон (Window) и сцен (Scene).
var sprite = new Sprite(ImageManager.loadPicture(имя картинки без расширения));
Картинка должна быть в папке img/pictures.
У объекта sprite можно задать x и y. Лучше посмотреть справку по RPG Maker MV.
Теперь необходимо этот спрайт добавить на нашу сцену или окно, в котором мы хотим его показать.
За это отвечает функция addChild().
Пример:
Допустим мы хотим вывести картинку some.png в меню, в окне с золотом.
В конце функции Window_Base.prototype.drawCurrencyValue дописываем следующий код:
Code:
var sprite = new Sprite(ImageManager.loadPicture('some'));
sprite.x = 10;
sprite.y = 10;
this.addChild(sprite);
Метод addChild можно вызывать внутри функций окон (Window) и сцен (Scene).
Спасибо сказали: Logan
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 5 мес. назад - 10 года 5 мес. назад #87436
от Logan
Logan ответил в теме Подкачка изображений через плагин
Спасибо большое, отобразить получилось, правда теперь не получается это изображение убрать)
Я модифицирую плагин, поэтому попробую объяснить, какой код редактирую:
Выходит, что соответствующее предмету доп. изображение появляется, но не исчезает, когда мы выбираем следующий предмет - на него сверху накладывается новое.
Пробовал в начало функции вставить "this.removeChild(sprite);" но он здесь срабатывает только после addChild.
Я модифицирую плагин, поэтому попробую объяснить, какой код редактирую:
Code:
Window_ItemDetail.prototype.refresh = function() { // Эта функция обновляет нужное мне окно, с информацией о предмете, поэтому вношу изменения в нее
this.contents.clear(); // Этим мы стираем предыдущую информацию
this.drawItemName(this._item,0,0,this.contents.width-24); // Отрисовываем новую иконку и наименование
var obj = this._item; // Отсюда пошла модификация плагина. Мы заносим в переменную информацию о предмете
var notedata = obj.note.split(/[\r\n]+/); // Отрезаем лишние символы из от того, что мы приписали предмету в Базе Данных, в Note, чтобы на выходе получилось наименование изображения
var sprite = new Sprite(ImageManager.loadPicture(notedata));
this.addChild(sprite);
Выходит, что соответствующее предмету доп. изображение появляется, но не исчезает, когда мы выбираем следующий предмет - на него сверху накладывается новое.
Пробовал в начало функции вставить "this.removeChild(sprite);" но он здесь срабатывает только после addChild.
Последнее редактирование: 10 года 5 мес. назад пользователем Logan.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 5 мес. назад #87439
от DK
DK ответил в теме Подкачка изображений через плагин
Потому что изображение хранится в локальной переменной. Вместо var sprite попробуй this.sprite.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
10 года 5 мес. назад #87440
от Logan
Logan ответил в теме Подкачка изображений через плагин
Заработало, спасибо!
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Время создания страницы: 0.093 секунд
