Братцы, мне помощь нужна. Подгоняю мод под своё идеальное видение. Прикрутил мешок, набрал теустур из билдов, хад немного поменял, скрестил данный мод с ремонтом от ОГСЕ, который тут выкладывали. Так вот, чтобы не ломать баланс мода и не убивать надобность механиков, которые занимаются уникальными стволами, как научить торговцев НЕ ремонтировать уникальное оружие, а только обычное и броню? Диалог им там прикрутить, мол "ствол необычный, я с такими не работаю" или что-то в этом роде? Научите пожалуйста?
Можно в каком-нибудь скрипте, например в escape_dialog.script, написать, примерно, такие функции:
Функции
function repair_precond_not_unik_s1()
-- Уникальные предметы из первого слота
local wpn_unik_s1 = {"wpn_fort_m1", "wpn_eagle_m1", "wpn_colt_m1", "wpn_walther_m1", "wpn_deserteagle_coll"}
local item_in_slot_1 = db.actor:item_in_slot(1)
local item = ""
-- Проверяем наличие предмета в певом слоте
if item_in_slot_1 then
item = item_in_slot_1:section()
else
return false
end
-- Проверяем не является ли предмет уникальным
for i = 1, #wpn_unik_s1, 1 do
if string.find(item, wpn_unik_s1[i]) then
return false
end
end
-- Если не уникальный и повреждён, то можно чинить
if 1 > item_in_slot_1:condition() + 0.01 then
return true
end
return false
end
function repair_precond_unik_s1()
return not this.repair_precond_not_unik_s1()
end
-- Уникальные предметы из первого слота
local wpn_unik_s1 = {"wpn_fort_m1", "wpn_eagle_m1", "wpn_colt_m1", "wpn_walther_m1", "wpn_deserteagle_coll"}
local item_in_slot_1 = db.actor:item_in_slot(1)
local item = ""
-- Проверяем наличие предмета в певом слоте
if item_in_slot_1 then
item = item_in_slot_1:section()
else
return false
end
-- Проверяем не является ли предмет уникальным
for i = 1, #wpn_unik_s1, 1 do
if string.find(item, wpn_unik_s1[i]) then
return false
end
end
-- Если не уникальный и повреждён, то можно чинить
if 1 > item_in_slot_1:condition() + 0.01 then
return true
end
return false
end
function repair_precond_unik_s1()
return not this.repair_precond_not_unik_s1()
end
Потом в теле диалога сделать, например, такую развилку:
Развилка
...
<phrase id="0">
<text>Почини оружие из первого слота.</text>
<next>1</next>
<next>2</next>
</phrase>
<phrase id="1">
<text>Давай починю.</text>
<precondition>escape_dialog.repair_precond_not_unik_s1</precondition>
</phrase>
<phrase id="2">
<text>Не, мужик, с уникальными не ко мне </text>
<precondition>escape_dialog.repair_precond_unik_s1</precondition>
</phrase>
...
<phrase id="0">
<text>Почини оружие из первого слота.</text>
<next>1</next>
<next>2</next>
</phrase>
<phrase id="1">
<text>Давай починю.</text>
<precondition>escape_dialog.repair_precond_not_unik_s1</precondition>
</phrase>
<phrase id="2">
<text>Не, мужик, с уникальными не ко мне </text>
<precondition>escape_dialog.repair_precond_unik_s1</precondition>
</phrase>
...