Доброго времени суток, дамы и господа мукеристы.
Сегодня я научу вас как показывать цифры на экране без всяких там дополнительных скриптов или плагинов.
Ну не то что бы совсем без. Я делаю смешанные механики на ивентах, но с использованием строчек кода.
Потому и называю всё это дело Рунной магией.
Мне нужна стандартная команда Вызвать скрипт и всего три строчки кода на показ, перемещение и удаление картинки... Ну и как кодом забить переменную.
Показать картинку
screen.pictures[index].show(name, position, x, y, x zoom, y zoom, opacity, blend type)
index - индекс картинки
name - имя файла
позиция - position = [0] по краю, [1] по центру
x, y - координаты
x zoom, y zoom - увеличение по x, y = масштаб
opacity - прозрачность, для непрозрачности ставится 255
смешивание - blend type = [0] обычное, [1] добавление, [2] замещение
Двигать картинку
screen.pictures[index].move(position, x, y, x zoom, y zoom, opacity, blend type, wait)
index - индекс картинки
position(позиция) = [0] по краю, [1] по центру
x, y - координаты
x zoom, y zoom - увеличение по x, y = масштаб
opacity - прозрачность, для непрозрачности ставится 255
blend type(смешивание) = [0] обычное, [1] добавление, [2] замещение
wait - продолжительность движения, в кадрах
Удалить картинку соответственно:
Для событий на карте
screen.pictures[index].erase
index - индекс картинки
И переменная
$game_variables[n]
Всё эти можно найти здесь. И даже больше.
rpgmaker.su/f32/%5Bvx-ace%5D-Простые-скр...ight=простые+скрипты
Погнали.
Для начала «нарисуем» сами цифры и кинем в папку Pictures. Я нарисовал такие вот крупноватые на скорую руку.
Вы можете нарисовать, скопировать или взять откуда угодно и как угодно.
Теперь нам нужно разбить цифру, которую мы хотим показать, на составляющие. Единицы, десятые, сотые и так далее. В примере до тысячных. Пока достаточно.
Я сделал это без скриптов. Ручками.
Смотрим Общее событие 1
В данном случае переменная 1 это и есть наша цифра для показа. Сделано специально чтобы способ был универсальным, а не завязан на какой-нибудь конкретной цифре.
Потом нам нужно понимать какую картинку для какой цифры показывать.
Делаем это в Общем 2. Возможно есть способ проще скриптом прибавить к nom_ цифру, но я его не знаю и мне так ручками проще.
Смотрим Общее событие 2
Ну теперь лепим сам показ цифр.
Добавляем переменную 9(№картинки) и 10(между бкувами).
Переменная 9 нужна чтобы не запутаться сколько картинок под какими номерами мы показали. Ставлю её от 50 по умолчанию. Можно поставить меньше если вдруг вы захотите показать больше 50 картинок.
Переменная 10 определяет расстояние между цифрами. Если она будет отрицательная, то цифры будут показываться справа налево.
Так же добавляем переменную 11 и 12, х и у положения первой картинки соответственно.
Можно добавить переменные для Зума, но это уже по желанию.
Всё. Собираем Общее событие 3 «Показать цифры»
Смотрим Общее событие 3
Теперь собираем это в рабочую конструкцию Общее событие 4(Комплект)
По сути это опционально, но я люблю такие вот комплектики.
Примечание 1: Всегда собирайте готовые конструкции из нескольких общих в одно.
Понятно, удобно, эффективно.
Ну и теперь собираем Общее событие 5. Пусть называется Показ заданной цифры. Смотри примечание 1
Смотрим Общее событие 5
ГОТОВО.
Можно открывать проект-пример, подойти к Скелету и смотреть что получилось.
Усложняем задачу!
Теперь я хочу показать всплывающие цифры.
Для начала делаю Общее событие 7 как шаблон показа ХП игрока.
Далее копируем Общее событие 3 и добавляем несколько строк для перемещения картинки.
screen.pictures[$game_variables[9]].
move(0, $game_variables[11], $game_variables[12]-50, 100, 100, 0, 0, 60)
Соответственно $game_variables[12]-50 — это наш У и цифра улетит на 50 пикселей вверх.
Я сделал на примере Урона игроку.
Грубо, но всё работает и циферки плывут.)
Примечание 2: Величайшая глупость думать, что худ на тот же ХП нужно немедленно пихать в какое-нибудь параллельное. Чаще всего достаточно его пихать общим событием после каждого изменения этого самого ХП. У меня в примере с шипами нет никаких параллельных.
На этом всё. Пользуйтесь на здоровье.
Скачать проект-пример здесь.
yadi.sk/d/6oc2LzaHC4Ulxg
Пример может не запуститься без РТП. Скачайте отсюда, установите один раз и больше не вспоминайте про это.
www.rpgmakerweb.com/run-time-package
Пы.Сы.
Это пример для Аси.
Но его так же можно адаптировать под МВ. Просто найдите здесь аналоги скриптовых команд из урока.
docs.google.com/spreadsheets/d/1-Oa0cRGp...etnvh7OHs/edit#gid=0
Пы.Сы.2
В качестве бонуса в примере есть сундук с золотом.