kmsk 2 Опубликовано 18 Марта 2014 Ребят помогите ... есть такая функция которая при взятии оружия меняет на актерское оружие... но проблева в том как передать аддоны и количество жизней оружию)))зарание спасибо если кто знает как это сделать))) function wpn_update() local wpn_actor = {"wpn_pm","wpn_pb","wpn_fort","wpn_apb","wpn_hpsa","wpn_beretta","wpn_walther","wpn_colt1911","wpn_ups","wpn_desert_eagle","wpn_desert_eagle_full","wpn_sig220","wpn_pp19","wpn_mp5","wpn_ak74u","wpn_ak74","wpn_abakan","wpn_l85","wpn_lr300","wpn_sig550","wpn_sig_m1","wpn_sig_m2","wpn_g36","wpn_fn2000","wpn_vintorez","wpn_val","wpn_val_m1","wpn_groza","wpn_svd","wpn_svu","wpn_bm16","wpn_bm-16_full","wpn_toz34_short","wpn_toz34","wpn_wincheaster1300","wpn_spas12",}for _, section in pairs (wpn_actor) dolocal wpnObject = db.actor:object(section)if wpnObject thendb.actor:drop_item(wpnObject)alife():release(alife():object(wpnObject:id()), true)spawn.inv(section.."_actor)endendend Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 20 Марта 2014 (изменено) mumie, Я сделал но почему-то ошибка, 10 раз все перепроверил не могу понять причины: Expression : fatal error Function : CScriptEngine::lua_errorFile : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cppLine : 73Description : <no expression>Arguments : LUA error: ...hadow of chernobyl\gamedata\scripts\wpn_actor.script:99: attempt to index local 'wpn' (a nil value) Пишет что wpn нет равно нулю for _, section in pairs (wpn_actor) dolocal wpnObject = db.actor:object(section)if wpnObject thenlocal cond = wpnObject:condition()db.actor:drop_item(wpnObject)alife():release(alife():object(wpnObject:id()), true)local spawnwpn = section.."_actor"local obj = alife():create(spawnwpn,vector():set(0,0,0),1,1,db.actor:id())local wpn = db.actor:object(spawnwpn)wpn:set_condition(cond)endend З.Ы. если ставлю проверку local wpn = db.actor:object(spawnwpn)if wpn thenwpn:set_condition(cond)end передачи жизней нет Изменено 20 Марта 2014 пользователем kmsk Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 6 Ноября 2015 (изменено) Подскажите, пожалуйста, как узнать значение отношения группировки к гг? То есть я изменяю значение так: relation_registry.set_community_goodwill ("stalker", db.actor:id (), 5000) К примеру как должна работать правильно проверка?: if relation_registry.set_community_goodwill ("stalker", db.actor:id ()) > 2000 then действие end Изменено 6 Ноября 2015 пользователем Kirgudu Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 6 Ноября 2015 @Kirgudu, Спасибо большое))). Если разбираешь подскажи ещё как тоже узнать личное отношение персонажа? И вообще есть общая функция, в которую уже все входит, чтобы определить суммарное отношение(личное отношение, отношение группировки, и т.п.) к актеру? Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 24 Февраля 2016 Возможно ли отловить разряжание оружия в рюкзаке ? спасибо. Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 27 Февраля 2016 Добрый вечер, Интересует тот же вопрос что у Kondr48, Как узнать ID предмета только что заспавненного в рюкзаке ГГ. То есть узнать и запомнить в локальной. Чтобы потом можно было удалить по этому же ID. Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 27 Февраля 2016 Просто отключи кнопки передвижения: get_console():execute("unbind forward") get_console():execute("unbind back") get_console():execute("unbind lstrafe") get_console():execute("unbind rstrafe") А когда надо включи: get_console():execute("bind forward kW") get_console():execute("bind back kS") get_console():execute("bind lstrafe kA") get_console():execute("bind rstrafe kD") 1 Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 28 Февраля 2016 Приветствую товарищи, объясните мне недалекому человеку: Есть две одинаковые секции в рюкзаке ГГ. ---это в апдейте local slot_1local slot_2local full_slots local tab = { --- таблица с секциями "...",} if slot_1 ~= nil and slot_2 ~= nil thenfull_slots = trueelsefull_slots = falseend----- раздаем id for _, section in pairs (tab) do local item = db.actor:object(section) if item then if full_slots == false then if slot_1 == nil then slot_1 = item:id() db.actor:give_game_news("Слот 1 занят", "ui\\ui_pda_news", Frect():set(0,300,180,100), 0, 10000) end if slot_2 == nil and item:id() ~= slot_1 then -- ПОЧЕМУ ПРИ НАЛИЧИИ ОДНОГО ПРЕДМЕТА СРАБАТЫВАЕТ И ЭТО??? slot_2 = item:id() db.actor:give_game_news("Слот 2 занят", "ui\\ui_pda_news", Frect():set(0,300,180,100), 0, 10000) end else if item:id() ~= slot_1 and item:id() ~= slot_2 then alife():release(alife():object(item:id()), true) end end end end Мне нужно чтобы если при нахождении у гг третьего предмета с одинаковой секцией, удолялся именно последний а не хрен пойми какой... Спасибо за понимание... Вообще, можно ли присвоить предмету индивидуальный номер, и по этому номеру удалить предмет??? Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 28 Февраля 2016 Kondr48,тогда почему при нахождении одного предмета, срабатывает как два? Поделиться этим сообщением Ссылка на сообщение
kmsk 2 Опубликовано 7 Октября 2017 Подскажите пожалуйста, если возможность заменить скриптом тип боеприпаса в оружии? то есть допустим в Макарове ammo_class = ammo_9x18_fmj, сейчас заряженно. А надо скриптом поменять на ammo_9x18_pmm, с сохраннение количества патронов. Кто знает хэлп??? Поделиться этим сообщением Ссылка на сообщение