Войти на сайт

Авторизация, ждите ...
×

ТЕМА: Set Move Route через вызов скрипта

Set Move Route через вызов скрипта 8 года 5 мес. назад #92195

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель
Наткнулся я тут на пост вот такой:
пост [ Нажмите, чтобы развернуть ]


И всё никак не могу понять, что имели ввиду авторы. Если с первой частью я худо бедно разобрался, то вторая мне вообще не ясна. Конкретно, я не могу понять, как заставить эти две строки, верно работать:
newCommand.code       = 1
newRoute.list.insert(0,newCommand.clone)

Буду крайне благодарен за помощь!
Последнее редактирование: 8 года 5 мес. назад от Демий.
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92198

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Проект месяца 2 местоОраторПрограммист JavaScript РазработчикВетеранПрограммист Ruby2 место Проект месяца 1 местоПроект месяца 3 местоУчитель
А ты сделал newCommand = RPG::MoveCommand.new?
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92215

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель


Попробовал.
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92216

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Проект месяца 2 местоОраторПрограммист JavaScript РазработчикВетеранПрограммист Ruby2 место Проект месяца 1 местоПроект месяца 3 местоУчитель
Пришли код, который сделал эту ошибку.
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92217

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель
newCommand = RPG::MoveCommand.new? 
newCommand.code       = 1
newRoute.list.insert(0,newCommand.clone)
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92218

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Проект месяца 2 местоОраторПрограммист JavaScript РазработчикВетеранПрограммист Ruby2 место Проект месяца 1 местоПроект месяца 3 местоУчитель
Потерял в начале newRoute = RPG::MoveRoute.new
И вопрос после new не нужен
Последнее редактирование: 8 года 5 мес. назад от DK.
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92219

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель
Хорошо. Теперь вообще ничего не происходит. ХД Как задавать маршрут движения через них? Или может я не понимаю, чего добивались авторы.
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92220

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Проект месяца 2 местоОраторПрограммист JavaScript РазработчикВетеранПрограммист Ruby2 место Проект месяца 1 местоПроект месяца 3 местоУчитель
Потому что в конце надо дописать
Если для игрока:
$game_player.force_move_route(newRoute)
Если для события:
$game_map.events[ID].force_move_route(newRoute)
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92221

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель
Тогда я вообще не понимаю в чём преимущество данного метода над описанным выше. Т_Т
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92223

  • DK
  • DK аватар
  • Вне сайта
  • Светлый дракон
  • DKPlugins
  • Сообщений: 946
  • Спасибо получено: 1129
  • Проект месяца 2 местоОраторПрограммист JavaScript РазработчикВетеранПрограммист Ruby2 место Проект месяца 1 местоПроект месяца 3 местоУчитель
Не знаю, я просто "расшифровал" тебе инструкцию из твоего поста
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92226

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • Программист RubyОраторУчительПобедитель Сбитой кодировки2 место Готв
И ведь некоторое время назад я кому-то мусолил эту тему.
Суть примерно такая - задать маршрут можно через force_move_route, передав ему RPG::MoveRoute. Глянем в справку, видим
class RPG::MoveRoute
  def initialize
    @repeat = true
    @skippable = false
    @wait = false
    @list = [RPG::MoveCommand.new]
  end
  attr_accessor :repeat
  attr_accessor :skippable
  attr_accessor :wait
  attr_accessor :list
end
А потом в RPG::MoveCommand
class RPG::MoveCommand
  def initialize(code = 0, parameters = [])
    @code = code
    @parameters = parameters
  end
  attr_accessor :code
  attr_accessor :parameters
end
Маршрут состоит из списка команд. 3 параметра (repeat, skippable и wait) такие же, какие вы задаете через события. Каждое действие маршрута состоит из кода и параметр ЕСЛИ требуется. Список кодов для действий маршрута можно подсмотреть в скриптах Game_Character (там же в методе process_move_command смотрите где и какие параметры нужны, хотя тут уже придется потеть).

Зачем это надо? Ну, если надо скриптом составлять маршруты. Собственно и все. В тобой найденном посте эту тему пытались разжевать, видимо.
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Тема заблокирована.
За этот пост поблагодарили: Демий

Set Move Route через вызов скрипта 8 года 5 мес. назад #92228

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель
Амфи, спасибо конечно. Однако, в этом я и сам худо бедно разобрался. Меня смутили строки, помеченные как "Multiple Actions"и их я упорно не понимаю. В чём отличие?
Тема заблокирована.

Set Move Route через вызов скрипта 8 года 5 мес. назад #92229

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • Программист RubyОраторУчительПобедитель Сбитой кодировки2 место Готв
Если ты про
# Multiple Actions (Example)
# newCommand.code       = 1
# newRoute.list.insert(0,newCommand.clone)
# newCommand.code       = 3
# newRoute.list.insert(0,newCommand.clone)
# newCommand.code       = 1
# newRoute.list.insert(0,newCommand.clone)
то тут в список запихали 3 команды, которые выполняются последовательно. Т.е. сначала он показал маршрут с одной командой, а тут их 3, каждая идет друг за другом (1 3 1 это последовательность для пойти вниз, пойти вправо и снова вниз).
Или же вопрос заключается в "зачем тут клоны"?
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Тема заблокирована.
За этот пост поблагодарили: Демий

Set Move Route через вызов скрипта 8 года 5 мес. назад #92230

  • Демий
  • Демий аватар
  • Вне сайта
  • Модератор
  • Здесь могла быть ваша реклама
  • Сообщений: 1597
  • Спасибо получено: 1520
  • 3 место Готв1 место в Готв3 местоРазработчикВетеранТестерПисатель 2 местоУчитель
Всё, я понял. Тему закрываю. Спасибо обоим!
Последнее редактирование: 8 года 5 мес. назад от Демий.
Тема заблокирована.
Модераторы: NeKotZima
Время создания страницы: 0.326 секунд