Случайная подборка модов
Игра Душ: Эксельсиор
4.4
Lost World 3.0
3.9
Пространственная аномалия (Update 3)
4.0
EPILOGUE
3.5
Связной
4.2
Dead City Mod v. 4.80
3.7
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
Динамическое подключение/отключение функций.
Российская Федерация  Mirage
Пятница, 08.02.2013, 13:31 | Сообщение # 16
Независимый аниматор
Статус:
Бывалый:
Сообщений: 1130
Награды: 2
Регистрация: 09.06.2012

Понятно. Я чуток не так сделал.

Добавлено (08.02.2013, 13:31)
---------------------------------------------
ColR_iT, А ты не мог бы еще описать, как сделать медленное восстановление хп?

  Злобная реклама
Пятница, 08.02.2013, 13:31
Статус:
Сообщений: 666
Регистрация: 09.06.2012
Украина  BozKurt
Пятница, 08.02.2013, 15:29 | Сообщение # 17
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

Mirage, уже давно есть на Wiki: >>ClicK Me<<. Правда там способ отличный от рассказанного в этой теме, но это легко адаптируются руками.
  Злобная реклама
Пятница, 08.02.2013, 15:29
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  Sanjaaa
Воскресенье, 10.02.2013, 16:39 | Сообщение # 18
Dark Reaper Souls
Статус:
Бывалый:
Сообщений: 926
Награды: 6
Регистрация: 22.08.2012

новерно скажите что я ленивый идиот но можете выложить готовый вариант?
  Злобная реклама
Воскресенье, 10.02.2013, 16:39
Статус:
Сообщений: 666
Регистрация: 22.08.2012
Украина  BozKurt
Воскресенье, 10.02.2013, 17:31 | Сообщение # 19
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

Sanjaaa, готовый вариант чего? Ссылка на файл xr_s.script, есть в конце статьи, не "промажешь". Остальное же нужно адаптировать под себя, в том числе и пример...
  Злобная реклама
Воскресенье, 10.02.2013, 17:31
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  Mirage
Воскресенье, 10.02.2013, 20:32 | Сообщение # 20
Независимый аниматор
Статус:
Бывалый:
Сообщений: 1130
Награды: 2
Регистрация: 09.06.2012

ColR_iT, по твоему уроку сделал уборку оружия, но не смог адаптировать медленное восстановление хп. По моему они конфликтуют друг с другом. Хотя я напичкал много всего, может и из-за этого.
  Злобная реклама
Воскресенье, 10.02.2013, 20:32
Статус:
Сообщений: 666
Регистрация: 09.06.2012
Украина  BozKurt
Понедельник, 11.02.2013, 12:05 | Сообщение # 21
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

Mirage, и что ты мне предлагаешь? У меня это всё работает на данной схеме безотказно. Что написал ты, я даже не представляю и каким образом может конфликтовать пример из шапки и пример из приведённой ссылке, где реализуется медленное восстановление здоровья.
  Злобная реклама
Понедельник, 11.02.2013, 12:05
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Молдова  6poHR777
Суббота, 16.02.2013, 17:44 | Сообщение # 22
Статус:
Опытный:
Сообщений: 1480
Награды: 0
Регистрация: 05.01.2012

ColR_iT, задам возможно глупый вопрос.
А как поступить с едой? Там как бы разные названия, как с аптечками не выйдет.
Сообщение отредактировал 6poHR777 - Суббота, 16.02.2013, 17:47
  Злобная реклама
Суббота, 16.02.2013, 17:44
Статус:
Сообщений: 666
Регистрация: 05.01.2012
Украина  BozKurt
Понедельник, 18.02.2013, 19:40 | Сообщение # 23
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

6poHR777, здесь как тебе уже будет удобно, можно проверять и отдельно взятые названия, можно и в секции предметов, во время употребления которых нужно убирать оружие, дописать какой-нибудь параметр и считывать его... в общем способы есть, выбор за тобою.

Добавлено (18.02.2013, 19:40)
---------------------------------------------
"ПЛЮШКА"

По нежеланию трудящихся трудится, выкладываю урок, так сказать, "без лишних слов".
В уроке: убирание оружия при использовании аптечек.
В качестве бонуса: медленное восстановление здоровья, невозможность пользоваться другой аптечкой, пока мы используем первую и прерывание восстановления здоровья, в случае какого либо воздействия, приведшее к потере здоровья, иными словами, если мы получили хит, восстановление жизни прекращается. Кроме того, "бонусы" можно отключать по желанию. Реализоваться это будет, понятное дело, на схеме предоставленной в шапке темы.
Список файлов, который нам понадобиться:
xr_s.script - основной файл, без него никак (ссылка есть в шапке темы);
bind_stalker.script - куда же без него? Будем проверять используется ли аптечка или нет;
medicine.script - этот файл мы создадим и в нём же будет находится весь функционал;
item.ltx - придётся подправить параметры аптечек, выключив им движковое лечение.
Приступим!

P.P.S. Добавил в "шапку".
Сообщение отредактировал ColR_iT - Вторник, 19.02.2013, 12:49
  Злобная реклама
Понедельник, 18.02.2013, 19:40
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  sedmoy23
Понедельник, 01.04.2013, 22:27 | Сообщение # 24
Статус:
Отмычка:
Сообщений: 133
Награды: 3
Регистрация: 29.03.2012

Я наверно ужасно тупой!!! Тысячу раз перечитал и сделал так....


Потом я создал файл use_med.script и в нем написал следующее...


Потом я добавил в файл bind_stalker в
function actor_binder:update(delta)
object_binder.update(self, delta)

вот это xr_s.on_actor_update

Из того что я сделал я толком ничего не понял... И что-то подсказывает мне что где-то чего то не хватает...
  Злобная реклама
Понедельник, 01.04.2013, 22:27
Статус:
Сообщений: 666
Регистрация: 29.03.2012
Российская Федерация  Mirage
Понедельник, 01.04.2013, 23:14 | Сообщение # 25
Независимый аниматор
Статус:
Бывалый:
Сообщений: 1130
Награды: 2
Регистрация: 09.06.2012

Вот так у меня в бинд сталкере:
function actor_binder:use_inventory_item(obj)
if string.find(obj:section(), "medkit") then
xr_s.register_callback("update", use_med.MedkitUsing, {time_global(), 4000})
end
if string.find(obj:section(), "bandage") then
xr_s.register_callback("update", use_bandage.BandageUsing, {time_global(), 4000})
end
end
создаешь сам, если нет такой функции(как я понял, ты вместо этого function actor_binder:OnUseObject(obj) создал)
и
function actor_binder:update(delta)
object_binder.update(self, delta)

yantar_psy_blowout.update()

xr_s.on_actor_update(delta)

Добавлено (01.04.2013, 23:14)
---------------------------------------------
И эти не забудь прописать:


и
  Злобная реклама
Понедельник, 01.04.2013, 23:14
Статус:
Сообщений: 666
Регистрация: 09.06.2012
Украина  BozKurt
Вторник, 02.04.2013, 00:09 | Сообщение # 26
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

sedmoy23, а в чём собственно проблема? В том, что не работает? Так ты просто был не очень внимателен.
В функцию MedkitUsing, что в файле use_med.script, нужно передавать параметр userObj, который представляет из себя таблицу. У тебя же этого нет. Это первая ошибка. Вторая - ты не прописал вызов функции on_actor_update из файла xr_s.script в биндер актора. Ты, возможно, начнёшь возмущаться: "как же так, мол!? А вот это что?":
Код
xr_s.on_actor_update
Всё бы хорошо, только это не вызов функции, это считывание глобальной переменной с именем on_actor_update из указанного файла. А функцию нужно было вызвать так:
Код
xr_s.on_actor_update(delta)



Mirage, а позволь поинтересоваться, а что у тебя в файле use_bandage.script в функции BandageUsing?
  Злобная реклама
Вторник, 02.04.2013, 00:09
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  sedmoy23
Вторник, 02.04.2013, 01:28 | Сообщение # 27
Статус:
Отмычка:
Сообщений: 133
Награды: 3
Регистрация: 29.03.2012

ColR_iT, Блин.... тяжело тут все понять... Было бы проще по моему покопаться в геймдате с комментариями...

Добавлено (02.04.2013, 01:28)
---------------------------------------------
ColR_iT, а что касается внимания не упрекай меня в этом... я тебе серьезно говорю, перечитал раз 20!

  Злобная реклама
Вторник, 02.04.2013, 01:28
Статус:
Сообщений: 666
Регистрация: 29.03.2012
Российская Федерация  Mirage
Вторник, 02.04.2013, 09:12 | Сообщение # 28
Независимый аниматор
Статус:
Бывалый:
Сообщений: 1130
Награды: 2
Регистрация: 09.06.2012

ColR_iT, Дык, вот:
Код
function BandageUsing(userObj)
        --# Прячем оружие.
        bind_stalker.hide_weapon()
        --# Проверим работает ли ещё таймер?
        --# userObj[1] - время начала работы таймера;
        --# userObj[2] - время работы таймера (мсек)
        if time_global() > userObj[1] + userObj[2] then
         --# Работа таймера закончена - покажем оружие.
         bind_stalker.restore_weapon()
        xr_s.unregister_callback ("update", use_bandage.BandageUsing)
        end
end
  Злобная реклама
Вторник, 02.04.2013, 09:12
Статус:
Сообщений: 666
Регистрация: 09.06.2012
Украина  BozKurt
Вторник, 02.04.2013, 10:14 | Сообщение # 29
Статус:
Опытный:
Сообщений: 1753
Награды: 3
Регистрация: 25.05.2012

sedmoy23, извини, если обидел, но факт "на лицо". У тебя фактически "граматические" ошибки при написании кода. Какие - я указал.


smile Забавно...
Убери вторую функцию и измени проверку в колбеке на юз на такую:
Код
if string.find(obj:section(), "medkit") or obj:section() == "bandage" then  
     xr_s.register_callback("update", use_med.MedkitUsing, {time_global(), 4000})  
end
Так будет правильнее.
  Злобная реклама
Вторник, 02.04.2013, 10:14
Статус:
Сообщений: 666
Регистрация: 25.05.2012
Российская Федерация  Mirage
Вторник, 02.04.2013, 11:14 | Сообщение # 30
Независимый аниматор
Статус:
Бывалый:
Сообщений: 1130
Награды: 2
Регистрация: 09.06.2012

ColR_iT, Какая разница biggrin , мне так удобнее.
Сообщение отредактировал Mirage - Вторник, 02.04.2013, 11:15
  Злобная реклама
Вторник, 02.04.2013, 11:14
Статус:
Сообщений: 666
Регистрация: 09.06.2012
  • Страница 2 из 5
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
Поиск: