Перейти к содержанию

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

 
 

Paradox27kms вот так сразу надо, а не ходить вокруг да около. Зачем tbl = inv_table?

Спойлер

 

function ui_mm_mod:FillListInv()
         local tbl
         local name

     self.list_inv:Clear()    

tbl = inv_table

     for i, v in ipairs(tbl) do
         name = game.translate_string(system_ini():r_string(v, "inv_name"))
         if (db.actor:item_in_slot(2)~= nil and db.actor:item_in_slot(2):section() == v) or  ( db.actor:item_in_slot(3)~= nil and db.actor:item_in_slot(3):section() == v) then
             self:AddItemToListInv(name, v)
         end
    end
end

 

 

  • Лайк 1

В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 
7 минут назад, vader_33 сказал:

Paradox27kms вот так сразу надо, а не ходить вокруг да около. Зачем tbl = inv_table?

  Показать контент

 

function ui_mm_mod:FillListInv()
         local tbl
         local name

     self.list_inv:Clear()    

tbl = inv_table

     for i, v in ipairs(tbl) do
         name = game.translate_string(system_ini():r_string(v, "inv_name"))
         if (db.actor:item_in_slot(2)~= nil and db.actor:item_in_slot(2):section() == v) or  ( db.actor:item_in_slot(3)~= nil and db.actor:item_in_slot(3):section() == v) then
             self:AddItemToListInv(name, v)
         end
    end
end

 

 

Большое спасибо. А как реализовать чтобы при клике на предмете в списке активировалась функция? p.s я к сожалению знаю только как так сделать в компоненте выпадающий список (combo_box) но мне нужно с простым списком list_box

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

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


Ссылка на сообщение
Поделиться на другие сайты
 

Всем привет. Столкнулся с такой проблемой, с которой ранее не сталкивался.

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

Вот в чём заключается проблема, все мобы и нпс - тупые и слепые. Даже на мастере мутантам меня сложно убить.

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

А нпс даже при полном счетчике палива стоят секунд 10, а потом стреляют, но по инвалидному при чём на мастере.


Дополнено 0 минут спустя

Я и понятия не имею, почему они так тупят.

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


Ссылка на сообщение
Поделиться на другие сайты
 

Подскажите как прописать награду в квест повышение ранга? Не путать с повышением репутации у группировок

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


Ссылка на сообщение
Поделиться на другие сайты
 

Как ПОЛНОСТЬЮ вывести логику НПС симуляционного в лог?

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


Ссылка на сообщение
Поделиться на другие сайты
 
21 минуту назад, liner сказал:

Как ПОЛНОСТЬЮ вывести логику НПС симуляционного в лог?

А зачем? Работу на смартах они отыгрывают ту, которую вы прописали на этих смартах или по дефолту прописанную в скрипте gulag_general.script . При движении между смартами,  движок назначает им логику patrol.

Что тут выводить в лог?

 


Терпение... И все получится.

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


Ссылка на сообщение
Поделиться на другие сайты
 

Я портировал некоторые модельки оружия себе на ЗП из пака TAZ 2.0, и столкнулся с такой проблемой у Маузера 96. Партикл выстрела (любой, какой ни ставь), отображается крайне некорректно, как будто повёрнут на 90 градусов. Какая строка за это отвечает я так и не нашёл. Это вообще как-то исправить можно?

Спойлер

 

ss_alnaz_10-30-21_04-58-01_(zaton).thumb.jpg.d5f756d57da7470d2b84183e05d20de1.jpg

ss_alnaz_10-30-21_05-10-07_(zaton).thumb.jpg.2f9d7b7e164cc0bff43513c1bc84b2d0.jpg

 

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


ASUS z87-k, I5-4670 @3.40GHz, MSI GTX 1050ti, 16gb ОЗУ, SSD 100gb, 2xHDD 500gb,
Windows 10 Pro. Аномали на ультрах летает. Вместе с компом по комнате.

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms посмотрите в ui_load_dialog.script эти строчки

self:AddCallback("list_window", ui_events.LIST_ITEM_CLICKED,               self.OnListItemClicked,        self)
self:AddCallback("list_window", ui_events.WINDOW_LBUTTON_DB_CLICK,          self.OnListItemDbClicked,        self)

list_window - название списка, self.OnListItemClicked - функция, которая будет выполняться


Дополнено 1 минуту спустя

Contentic можно в on_complete добавить


В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 

vader_33 прописывать знаю, а вот что именно вписать забыл, в интернете найти не могу

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


Ссылка на сообщение
Поделиться на другие сайты
 

Contentic  не помню, есть ли готовая функция, можно свою добавить с этим db.actor:set_character_rank(db.actor:character_rank() + число)

  • Жму руку 1

В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 
4 часа назад, vader_33 сказал:

Paradox27kms посмотрите в ui_load_dialog.script эти строчки

self:AddCallback("list_window", ui_events.LIST_ITEM_CLICKED,               self.OnListItemClicked,        self)
self:AddCallback("list_window", ui_events.WINDOW_LBUTTON_DB_CLICK,          self.OnListItemDbClicked,        self)

list_window - название списка, self.OnListItemClicked - функция, которая будет выполняться


Дополнено 1 минуту спустя

Contentic можно в on_complete добавить

Подскажите пожалуйста а как реализовать чтобы в списке listbox отображались ВСЕ (а не только лишь в слотах) предметы из инвентаря которые так же есть в таблице (tbl)

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms 
 

Спойлер

 

таблицу привести к такому виду


local tbl = {
		["wpn_ak74"] = true,
		["wpn_ak74u"] = true,
	}

добавлять так


db.actor:iterate_inventory(function (tmp, item)
	local sect = item:section()
		if tbl[sect] then
			local name = game.translate_string(system_ini():r_string(sect, "inv_name"))
			self:AddItemToListShop(name, sect)
		end							
end,obj)


 

 


В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 
56 минут назад, vader_33 сказал:

Paradox27kms 
 

  Скрыть контент

 

таблицу привести к такому виду



local tbl = {
		["wpn_ak74"] = true,
		["wpn_ak74u"] = true,
	}

добавлять так



db.actor:iterate_inventory(function (tmp, item)
	local sect = item:section()
		if tbl[sect] then
			local name = game.translate_string(system_ini():r_string(sect, "inv_name"))
			self:AddItemToListShop(name, sect)
		end							
end,obj)

 

 

 

 

А можно по точнее? Должно же быть примерно в таком ключе только допиленный вариант

Спойлер

function ui_mm_mod:FillListOther()
         local tbl
         local name

     self.list_other:Clear()    

tbl = inv_other_table

     for i, v in ipairs(tbl) do
db.actor:iterate_inventory(function (tmp, item)
    local sect = item:section()
        if tbl[sect] then
            local name = game.translate_string(system_ini():r_string(sect, "inv_name"))
            self:AddItemToListOther(name, sect)
        end                            
end,obj)
                 end
         end
end

 

 

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

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms  for i, v in ipairs(tbl) do  не нужно


В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 
12 минут назад, vader_33 сказал:

Paradox27kms  for i, v in ipairs(tbl) do  не нужно

не работает

Спойлер

function ui_mm_mod:FillListOther()
         local tbl
         local name

     self.list_other:Clear()    

tbl = inv_other_table

db.actor:iterate_inventory(function (tmp, item)
    local sect = item:section()
        if tbl[sect] then
            local name = game.translate_string(system_ini():r_string(sect, "inv_name"))
            self:AddItemToListOther(name, sect)
        end                            
end,obj) - так и должно быть?
                 end
         end
end

 

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


Ссылка на сообщение
Поделиться на другие сайты
 

Подскажите скрипт для проверки находится ли гг на определённой локации

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


Ссылка на сообщение
Поделиться на другие сайты
 
1 минуту назад, Contentic сказал:

Подскажите скрипт для проверки находится ли гг на определённой локации

Спойлер

function test()
      if level.name == "l01_escape" then   
      ...
      end   
end

Или через логику

Спойлер

on_info = {=actor_on_level(zaton)}

 

  • Жму руку 1

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms да, так и должно быть. Лишние end уберите. Таблицу заменили на ту, которую я скидывал?


В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 
6 минут назад, vader_33 сказал:

Paradox27kms да, так и должно быть. Лишние end уберите. Таблицу заменили на ту, которую я скидывал?

Да но к сожалению Ваш метод не работает ну либо у меня руки кривые

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms проверил у себя, добавил вместо добавления в список просто сообщение - работает. Весь скрипт выложите


В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, vader_33 сказал:

Paradox27kms проверил у себя, добавил вместо добавления в список просто сообщение - работает. Весь скрипт выложите

 

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

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms на первый взгляд, в функции function ui_mm_mod:FillListOther() не нужен local tbl, уже есть в начале файла. И сама функция не закрыта end, переборщили с убиранием. Есть программа script Syntax Checker, проверяйте ей скрипты на наличие синтаксических ошибок. Подробнее потом посмотрю, уже бежать надо

  • Лайк 1

В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms там где-то в какой-то функции тоже лишняя была (прямо ниже неё, скопировать не могу щас)

  • Лайк 1

В беге за рассветом приближаешь свой закат

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


Ссылка на сообщение
Поделиться на другие сайты
 

Кто нибудь может помочь написать скрипт который будет удалять предмет одного типа в нескольких колличествах из инвентаря гг?

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


Ссылка на сообщение
Поделиться на другие сайты
 
10 часов назад, vader_33 сказал:

Paradox27kms там где-то в какой-то функции тоже лишняя была (прямо ниже неё, скопировать не могу щас)

А можно последний вопрос, как реализовать чтобы предмет из tbl в одном listbox-е при клике на него перемещался в другой listbox? очень нужно и желательно чтобы после клика на определенный предмет срабатывала функция только для этого предмета? т.е для всех предметов своя функция

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

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


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу