Адаптированный гем - awesome_print

Программист Ruby Коммерсант Проект года 1 место Учитель Проект месяца 1 место
Больше
10 года 11 мес. назад #81084 от Iren_Rin
Автор: Michael Dvorkin
Адаптация для мейкера: Iren_Rin
Ссылка на оригинальный гем: гем на гитхабе
Ссылка на адаптированный гем: гем на гитхабе
Версия: 1.6.1

Описание:
Позволяет красиво форматировать массивы, хэши и т.п. и выводить это на STDOUT. Полное описание и примеры использования смотрите на гитхабе.

Как установить:
Спасибо сказали: DeadElf79, Ren310, strelokhalfer

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 1 место Программист Ruby Писатель 3 место 3 место Учитель Организатор конкурсов 1 место в Готв Ветеран Проект месяца 2 место
Больше
10 года 11 мес. назад #81085 от DeadElf79
Как его использовать-то, напишешь? Вставил, настроил под хп, не вылетает, но и не работает. Куда надо нажать, чтобы было хорошо?)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 3 место Проект месяца 1 место Проект месяца 2 место 3 место Готв Победитель Сбитой кодировки Программист JavaScript 2 место Сбитая кодировка Писатель 3 место 2 место 3 место Организатор конкурсов
Больше
10 года 11 мес. назад #81086 от Cerberus
Я чуть конкретнее спрошу: на какую версию Ruby рассчитан гем? Похоже, что в XP она более старая, чем надо, а из readme не совсем понятно.

Жуть болотная, на лапках, в тапках и с пулемётом...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Коммерсант Проект года 1 место Учитель Проект месяца 1 место
Больше
10 года 11 мес. назад #81089 от Iren_Rin
На rubygems сказано - REQUIRED RUBY VERSION: >= 0. Я проверил под VX ACE.
Как использовать:
Code:
ap [1, 2, 3, 4] #=> Форматированный вывод ap $game_party

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 1 место Программист Ruby Писатель 3 место 3 место Учитель Организатор конкурсов 1 место в Готв Ветеран Проект месяца 2 место
Больше
10 года 11 мес. назад - 10 года 11 мес. назад #81090 от DeadElf79
[strike]Только на RGSS2-3, не ниже. На хп без RGSS+ не пойдет. Да и с ним может не пойти, потому что он сам не без изъянов. Я уж проверил.[/strike]

Угу, ладно, возможно, оно несовместимо с RGSS+, я еще пересмотрю свой скрипт.

Для ХП требуются правки в четырех местах. Первые три можно выполнить в любом редакторе текста:
Ставим замену этого
Code:
instance_variable_defined?
на это:
Code:
instance_variables.include?
Еще одну - в строке 228 (batch.rb) меняем puts на print:
Code:
print object.ai(options)
потому что puts в оригинальном ХП не определен.
Последнее редактирование: 10 года 11 мес. назад пользователем DeadElf79. Причина: поправил код
Спасибо сказали: Iren_Rin

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 1 место Программист Ruby Писатель 3 место 3 место Учитель Организатор конкурсов 1 место в Готв Ветеран Проект месяца 2 место
Больше
10 года 11 мес. назад #81099 от DeadElf79
Еще немного слабости этого скрипта. Возможно, я что-то не понимаю или делаю не так.

Вот этот код:
Code:
ap RPG::Actor.new
Выводит:
[IMG


Пойду копать, в чем тут дело.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Организатор конкурсов Даритель Стимкея 2 место Сбитая кодировка Переводчик 2 место
Больше
10 года 11 мес. назад #81100 от strelokhalfer
Потому что ты функцию вызываешь

"Стрелок, что-то ты неочень похож на свой аватар..."(с)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 3 место Проект месяца 1 место Проект месяца 2 место 3 место Готв Победитель Сбитой кодировки Программист JavaScript 2 место Сбитая кодировка Писатель 3 место 2 место 3 место Организатор конкурсов
Больше
10 года 11 мес. назад #81101 от Cerberus
Да нет, Эльф пытается вывести содержимое свежесозданного объекта класса RPG::Actor, по идее.

Жуть болотная, на лапках, в тапках и с пулемётом...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Проект месяца 1 место Программист Ruby Писатель 3 место 3 место Учитель Организатор конкурсов 1 место в Готв Ветеран Проект месяца 2 место
Больше
10 года 11 мес. назад - 10 года 11 мес. назад #81102 от DeadElf79
А дело оказалось в методе awesome_object, который делает вывод по стандартным правилам. Видимо, для всех классов, которые сложнее хэш-таблиц, нужно прописывать свои методы вывода, не иначе.

Стрелок, что ты несешь опять? Оставил пост и рад, а о чем - хрен поймешь ^_^
Для примера стрелку, выводит тоже самое:
Code:
obj=RPG::Actor.new ap obj
Последнее редактирование: 10 года 11 мес. назад пользователем DeadElf79.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Программист Ruby Коммерсант Проект года 1 место Учитель Проект месяца 1 место
Больше
10 года 11 мес. назад #81103 от Iren_Rin
По умолчанию вывод обычных объектов не изменяется. Массивы да хэши.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.100 секунд
Работает на Kunena форум