Перейти к контенту

Скриптование


Svoboда

Рекомендуемые сообщения

db.actor:item_in_slot(11) ~= "af_oasis_heart" 

1. Ты проверяешь не равен ли гейм объект строке ?

db.actor:item_in_slot(1) --Вот таким к примеру методом мы получаем объект из первого слота, а как я понял ты проверял секцию, хотя тут тебе вернет объект в первом слоту.

Для того что бы получить секцию надо дописать к примеру

db.actor:item_in_slot(1):section() --Вернет секцию объекта первого слота (Если он конечно же есть...)

2. Нет проверки что в слоте что то есть вообще, если он будет пуст, то вернет nil

Пример:

if db.actor:item_in_slot(1) and db.actor:item_in_slot(1):section()=="wpn_pm" then return "блаблабла, это так к примеру"  end

3. Тут могу ошибаться но если память не изменяет таким методом нельзя получить предметы пояса как у тебя то есть - db.actor:item_in_slot(11) - не вернет пояс...

Функция db.actor:item_in_slot(number) возвращает гейм объект, а на поясе их цела перечень в противном случаи ПЫСы могли сделать что бы она хотя бы массив возвращала, но и такого нет... По моему кто-то очень давно еще на ТЧ писал скрипт получения объектов с пояса, в оригинале же такого вроде нет, в "xray-extensions" есть функции манипуляции инвентарем и по моему поясом.

 

4.

 

if time_global() - flag_timer < 10000 then

return

end

if db.actor.radiation <= 0.5 then

flag_timer = time_global()

Ты из time_global() вычитаешь flag_timer, но даешь ей значение только потом, если она у тебя где-то до этой ф-ии назначена тогда ладно, а если нет, то ты из time_global() вычитаешь nil :wacko:

 

P.S. в третьем пункте не до конца уверен...

Изменено пользователем Ekagors

Поделиться этим сообщением


Ссылка на сообщение

 

 

если в слоте 1 нет ничего, то в этой проверке, будет сразу вызван метод nil:section(), что приведет к вылету. Лучше сначала проверить что в слоте есть вообще какой-то объект, а лишь затем проверять что у него за секция.

Масло масленое, я то же самое только короче написал  -_-

 

 

Нет проверки что в слоте что то есть вообще, если он будет пуст, то вернет nil

Тут есть проверка, что не равен nil сей час выделю раз не заметил

if db.actor:item_in_slot(1) --[[Если вернет nil, условие не будет провираться дальше   -]] and db.actor:item_in_slot(1):section()=="wpn_pm" then return "блаблабла, это так к примеру" end

_______________________________________________________________________________________________________________________

 

Как сделать скрипт при взятии предмета из рюкзака?

Что ? Подробней можно не чего не понять.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...