Войти на сайт

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

ТЕМА: Time management

Time management 10 года 11 мес. назад #66043

  • caveman
  • caveman аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1274
  • Спасибо получено: 1307
  • 2 место Готв3 местоРазработчикПроект месяца 1 местоПроект месяца 2 местоПрограммист RubyПаладинВетеранПроект года 1 местоУчитель
Название: Time Management
Автор: caveman
Версия: 1.0
Тип: работа с переменными и свитчами


Описание:


Написал небольшой, но, потенциально полезный скриптик для управления временем.

Он умеет считывать с одного или нескольких файлов формата csv (строки из слов, разделенных точкой с запятой - трансформируется из Excel через Save as csv; а эксель, или calc - просто для удобства редактирования) набор данных по управлению переменными, свитчами и селфсвитчами в реальном времени (точность до секунды) и сходу применять их в игре, в том же реальном времени от начала игры/запуска файла.
Кроме этого, он поддерживает циклический запуск этого набора в заданном в нем же промежутке времени.

Вроде пока всё. Если ничего непонятно, поясню словами и демкой:

* Я хочу сделать демку, которая изображает два дня в лесу.
* Я хочу удобно управлять временами дня (хотя бы через screen color tone), погодой и событиями в течении этого времени.
* Я хочу думать в реальном времени, а не в фреймах, например, пусть мои сутки длятся 2 минуты.

- Я составляю 2 файлика (в экселе, так мне удобно) - тут приведу отконверченный в csv вариант обработки переменных, свитчей и селфсвитчей, предварительно настроенных в проекте для времен дня и погоды.
Файлик для огорода в демке.
ЗЫ: если видите пусто между двумя ";", то там ячейка попросту пуста
- Я добавляю скрипт, что внизу под спойлером, чуть выше Main.
- Я добавляю в авторане первой (и единственной) карты вызов
$time_owner.add_manager(1)
$time_owner.add_manager(2)
$time_owner.reload(1, "test") - тут файл погоды и времени дня
$time_owner.reload(2, "farm") - тут обработка роста овощей
$time_owner.start_all - для простоты - запускаю всё, можно запускать и по отдельности, командой $time_owner.start(1)

- Я запускаю демо и радуюсь :laugh:

Теперь разберем файлик, вот он:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]


Первая строка в нем - заголовок. Он ни к чему не обязывает, и просто служит мне для удобства.
Вторая строка показывает, запускаю ли я обработку файла циклически (yes/no).
Третья строка задает время начала запуска и окончания запуска (очень полезно для циклических запусков).
Четвертая и пятая - просто для удобства в экселе.
А далее начинаются команды (значения нечувствительны к регистру)

Время; - время срабатывания в формате hh:mm:ss
Тип; - тип (Variable, Switch, SelfSwitch)
Id; - номер переменной или свитча, для SelfSwitch бесполезно
Значение; - значение переменной/свитча. Для variable это - число; для остальных вариантов - True или False
Map_id; - номер карты, актуален для селфсвитча
Event_id; - номер события, актуален для селфсвитча
Letter; - буква-селфсвитч (A,B,C,D), актуален для селфсвитча
Comment - комментарий (для удобства)


Скрипт пока не поддерживает русские подписи, борюсь...

Вот он сам:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]


Демо тут: yadi.sk/d/wMk9CNKzDtYPZ

PS: я предполагал им настраивать день/ночь, погоду и жизненный цикл неписей, но вот, на нейтрале сразу же подумали про ферму :)
Последнее редактирование: 10 года 11 мес. назад от caveman. Причина: новая версия
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Lekste, aval__

Time management 10 года 11 мес. назад #66064

  • caveman
  • caveman аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1274
  • Спасибо получено: 1307
  • 2 место Готв3 местоРазработчикПроект месяца 1 местоПроект месяца 2 местоПрограммист RubyПаладинВетеранПроект года 1 местоУчитель
Допилил скриптик так, что он умеет поддерживать одновременную загрузку нескольких csvшек, а в демке, кроме времени суток и погоды, растет капустка и морковка, управление которой задано через новый файл.
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66069

  • aval__
  • aval__ аватар
  • Вне сайта
  • Бывалый
  • Сообщений: 51
  • Спасибо получено: 13
А для ACE будет версия ?
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66076

  • caveman
  • caveman аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1274
  • Спасибо получено: 1307
  • 2 место Готв3 местоРазработчикПроект месяца 1 местоПроект месяца 2 местоПрограммист RubyПаладинВетеранПроект года 1 местоУчитель
будет, но позже
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66077

  • Kian Ni
  • Kian Ni аватар
  • Вне сайта
  • Заблокирован
  • Я души кушаю людей.
  • Сообщений: 1247
  • Спасибо получено: 412
Што-то всех на фермы поперло, странно это.
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66079

  • caveman
  • caveman аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1274
  • Спасибо получено: 1307
  • 2 место Готв3 местоРазработчикПроект месяца 1 местоПроект месяца 2 местоПрограммист RubyПаладинВетеранПроект года 1 местоУчитель
Не, меня не поперло, я скрипт вообще для других целей писал, но раз предположили, что ферму на нем можно нахалявить - пусть халявят.
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66080

  • Kian Ni
  • Kian Ni аватар
  • Вне сайта
  • Заблокирован
  • Я души кушаю людей.
  • Сообщений: 1247
  • Спасибо получено: 412
Кстати, Кейв, всегда хотел спрасить, ты же прогер, вай мейкер, а не что-то другое?
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66081

  • caveman
  • caveman аватар
  • Вне сайта
  • Архитектор Миров
  • Сообщений: 1274
  • Спасибо получено: 1307
  • 2 место Готв3 местоРазработчикПроект месяца 1 местоПроект месяца 2 местоПрограммист RubyПаладинВетеранПроект года 1 местоУчитель
Попался под руку, когда мне стало лень писать конструктор для своего движка, а других не знал.
Ну а вообще пофиг что, если есть графика приличная - тута я сыплюсь :(
Администратор запретил публиковать записи гостям.

Time management 10 года 11 мес. назад #66083

  • Kian Ni
  • Kian Ni аватар
  • Вне сайта
  • Заблокирован
  • Я души кушаю людей.
  • Сообщений: 1247
  • Спасибо получено: 412
Понятно, тебя сдерживает только графика, хе-хе.
Администратор запретил публиковать записи гостям.
Модераторы: NeKotZima
Время создания страницы: 0.232 секунд