|
[CoP] Модострой: вопросница
|
|
|
|
Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
| Статус: |
 |
| Бывалый: |
 |
| Сообщений: |
1081 |
| Награды: |
19 |
| Регистрация: |
11.06.2015 |
|
[CoP] Модострой: вопросница

Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.
Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
|
|
Воскресенье, 31.12.2017, 13:17
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
11.06.2015 |
|
|
|
|
|
|
Neptun
Суббота, 19.05.2018, 11:18 | Сообщение # 991
Связной
| Статус: |
 |
| Бывалый: |
 |
| Сообщений: |
672 |
| Награды: |
9 |
| Регистрация: |
25.03.2012 |
|
Smilоdоn, это значит, что НПС побежит после того, как достигнет этой точки. Чтобы НПС сразу побежал, пропиши в его активной логике: def_state_moving = sprint В этом случае в way можешь вообще ничего не прописывать.
Цитата Smilоdоn (  ) вообще все флаги не работают Флаг это вот: p0:flags = 0x1 Он нужен, если нужно, чтобы НПС смотрел куда-то.
|
|
Суббота, 19.05.2018, 11:18
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
25.03.2012 |
|
|
|
|
|
|
Золотой Обоз
| Статус: |
 |
| Опытный: |
 |
| Сообщений: |
1311 |
| Награды: |
9 |
| Регистрация: |
09.08.2015 |
|
makdm, что-то все равно не получается. Попробую объяснить что нужно: ГГ выдает НПС 4 ПДА одновременно, а НПС должен через каждые 3 часа отправлять ГГ смску. А во время сна, даже если спал больше 12 часов (т.е. должны все 4 смс прийти) приходит только одна. Вот и нужно во время сна все таймеры искусственно увеличить. В ui_sleep_dialog в dream_callback()
Код local timer = hours*3600 if has_alife_info("tp_actor_give_zvonar_grif_pda") and not has_alife_info("tp_zvonar_unlock_grif_pda_compl") then otstypnik_dialogs.force_grif_pda_timer(timer) end if has_alife_info("tp_actor_give_zvonar_provodnik_vasil_pda") and not has_alife_info("tp_zvonar_unlock_provodnik_vasil_pda_compl") then otstypnik_dialogs.force_vasil_pda_timer(timer) end if has_alife_info("tp_actor_give_zvonar_killer_ydav_pda") and not has_alife_info("tp_zvonar_unlock_killer_ydav_pda_compl") then otstypnik_dialogs.force_ydav_pda_timer(timer) end if has_alife_info("tp_actor_give_zvonar_monolitovec_pda") and not has_alife_info("tp_zvonar_unlock_monolitovec_pda_compl") then otstypnik_dialogs.force_monolitovec_pda_timer(timer) end Потом функция для апдейта
Код function zvonar_unlocking_pda() if has_alife_info("tp_actor_give_zvonar_grif_pda") and not has_alife_info("tp_zvonar_unlock_grif_pda_compl") and not has_alife_info("tp_zvonar_unlock_one_pda") then give_info("tp_zvonar_unlock_one_pda") if grif_pda_timer == nil then grif_pda_timer = game.get_game_time() end end if grif_pda_timer ~= nil then if game.get_game_time():diffSec(grif_pda_timer) > 10800 then grif_pda_timer = nil give_info("tp_zvonar_unlock_grif_pda") give_info("tp_zvonar_unlock_grif_pda_compl") disable_info("tp_zvonar_unlock_one_pda") xr_effects.send_message(nil,nil,{"ПДА Грифа взломан. Можешь забирать.","tp_zvonar","tp_zvonar",7000}) end end if has_alife_info("tp_actor_give_zvonar_provodnik_vasil_pda") and not has_alife_info("tp_zvonar_unlock_provodnik_vasil_pda_compl") and not has_alife_info("tp_zvonar_unlock_one_pda") then give_info("tp_zvonar_unlock_one_pda") if vasil_pda_timer == nil then vasil_pda_timer = game.get_game_time() end end if vasil_pda_timer ~= nil then if game.get_game_time():diffSec(vasil_pda_timer) > 10800 then vasil_pda_timer = nil give_info("tp_zvonar_unlock_provodnik_vasil_pda") give_info("tp_zvonar_unlock_provodnik_vasil_pda_compl") disable_info("tp_zvonar_unlock_one_pda") xr_effects.send_message(nil,nil,{"ПДА Василя взломан. Можешь забирать.","tp_zvonar","tp_zvonar",7000}) end end if has_alife_info("tp_actor_give_zvonar_killer_ydav_pda") and not has_alife_info("tp_zvonar_unlock_killer_ydav_pda_compl") and not has_alife_info("tp_zvonar_unlock_one_pda") then give_info("tp_zvonar_unlock_one_pda") if ydav_pda_timer == nil then ydav_pda_timer = game.get_game_time() end end if ydav_pda_timer ~= nil then if game.get_game_time():diffSec(ydav_pda_timer) > 10800 then ydav_pda_timer = nil give_info("tp_zvonar_unlock_killer_ydav_pda") give_info("tp_zvonar_unlock_killer_ydav_pda_compl") disable_info("tp_zvonar_unlock_one_pda") xr_effects.send_message(nil,nil,{"ПДА Удава взломан. Можешь забирать.","tp_zvonar","tp_zvonar",7000}) end end if has_alife_info("tp_actor_give_zvonar_monolitovec_pda") and not has_alife_info("tp_zvonar_unlock_monolitovec_pda_compl") and not has_alife_info("tp_zvonar_unlock_one_pda") then give_info("tp_zvonar_unlock_one_pda") if monolitovec_pda_timer == nil then monolitovec_pda_timer = game.get_game_time() end end if monolitovec_pda_timer ~= nil then if game.get_game_time():diffSec(monolitovec_pda_timer) > 10800 then monolitovec_pda_timer = nil give_info("tp_zvonar_unlock_monolitovec_pda") give_info("tp_zvonar_unlock_monolitovec_pda_compl") disable_info("tp_zvonar_unlock_one_pda") xr_effects.send_message(nil,nil,{"ПДА монолитовца взломан. Можешь забирать.","tp_zvonar","tp_zvonar",7000}) end end end И вот сама функция в которой надо увеличить таймер
Код function force_grif_pda_timer(timer) if grif_pda_timer ~= nil then local t = game.CTime() local Y, M, D, h, m, s, ms = 0, 0, 0, 0, 0, 0, 0 t:set( Y + 2000, M, D, h, m, grif_pda_timer + timer, ms) grif_pda_timer = game.get_game_time():diffSec(t) end end
|
|
Суббота, 19.05.2018, 11:42
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
09.08.2015 |
|
|
|
|
|
|
atanda
Суббота, 19.05.2018, 17:18 | Сообщение # 993
| Статус: |
 |
| Бывалый: |
 |
| Сообщений: |
672 |
| Награды: |
7 |
| Регистрация: |
12.07.2017 |
|
Цитата _S_k_i_F_ (  ) Но игра вылетала Ты пытаешься к объекту, не имеющему перегруженное сложение, прибавить число!
|
|
Суббота, 19.05.2018, 17:18
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
12.07.2017 |
|
|
|
|
|
|
| Статус: |
 |
| Новичок: |
 |
| Сообщений: |
269 |
| Награды: |
2 |
| Регистрация: |
25.08.2014 |
|
Подскажите, пожалуйста... Имеются два THM В первом строки: Ђ? ? НМL= act\act_face_01_bump Во втором: Ђ? " НМL= act\act_face_01_bump В первом, как видно, знаки: и знак ? Во втором их нет. Что означают эти знаки?
Сообщение отредактировал DarkSatellite - Воскресенье, 20.05.2018, 09:00
|
|
Воскресенье, 20.05.2018, 08:49
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
25.08.2014 |
|
|
|
|
|
|
скат
Воскресенье, 20.05.2018, 09:02 | Сообщение # 995
|
Воскресенье, 20.05.2018, 09:02
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
16.01.2014 |
|
|
|
|
|
Воскресенье, 20.05.2018, 09:07
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
25.08.2014 |
|
|
|
|
|
|
makdm
Воскресенье, 20.05.2018, 10:15 | Сообщение # 997
Время Альянса
| Статус: |
 |
| Опытный: |
 |
| Сообщений: |
1787 |
| Награды: |
19 |
| Регистрация: |
22.11.2012 |
|
_S_k_i_F_, если я правильно понял то, что ты хочешь сделать, то схема написания скрипта должна быть такой:
|
|
Воскресенье, 20.05.2018, 10:15
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
22.11.2012 |
|
|
|
|
|
|
скат
Воскресенье, 20.05.2018, 11:12 | Сообщение # 998
| Статус: |
 |
| Бывалый: |
 |
| Сообщений: |
942 |
| Награды: |
9 |
| Регистрация: |
16.01.2014 |
|
DarkSatellite, Закинь thm первую в сдк на свое место (по префиксу узнаешь папку куда закидывать). Текстуру к которой она принадлежит переведи в тга, закинь в папку импорт. Запусти АЕ. Нажми чек нев текстуры, увидишь окно и все настройки thm-ки. Сфоткай окно или запомни. Повтори все с второй thm, сравни скрины в итоге. Увидишь в чем отличая.
|
|
Воскресенье, 20.05.2018, 11:12
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
16.01.2014 |
|
|
|
|
|
|
Золотой Обоз
| Статус: |
 |
| Опытный: |
 |
| Сообщений: |
1311 |
| Награды: |
9 |
| Регистрация: |
09.08.2015 |
|
makdm, я опять не совсем точно выразился - надо было уточнить - можно 4 сразу, а можно и по одному, по два, по три. Вот в чем ерунда. Я думал что единственный вариант это увеличить значение самого таймера.
|
|
Воскресенье, 20.05.2018, 11:42
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
09.08.2015 |
|
|
|
|
|
|
makdm
Воскресенье, 20.05.2018, 13:09 | Сообщение # 1000
Время Альянса
| Статус: |
 |
| Опытный: |
 |
| Сообщений: |
1787 |
| Награды: |
19 |
| Регистрация: |
22.11.2012 |
|
Цитата _S_k_i_F_ (  ) я опять не совсем точно выразился Куда уж точнее:
Цитата _S_k_i_F_ (  ) ГГ выдает НПС 4 ПДА одновременно
Смотри файл bind_stalker.script Два таймера, которые включаются в разное время и каждый ведет свой отсчет: check_detective_achievement() и check_mutant_hunter_achievement()
Делаешь по аналогии хоть со стопицот ПДА.
|
|
Воскресенье, 20.05.2018, 13:09
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
22.11.2012 |
|
|
|
|
|
|
| Статус: |
 |
| Отмычка: |
 |
| Сообщений: |
140 |
| Награды: |
4 |
| Регистрация: |
27.09.2015 |
|
Подскажите, за что отвечает эта функция в xr_statistic.script:
Код str = package:r_stringZ() if(str~="nil") then actor_statistic.favorite_weapon_sect = str end weapons_table = {} local n = package:r_u8() for i = 1,n do local k = package:r_stringZ() local v = package:r_float() weapons_table[k] = v end И может ли из за неё работать не правильно эта функция (или наоборот), тоже из xr_statistic.script:
Код weapons_table = { "wpn_abakan" = 0, "wpn_ak74" = 0, "wpn_ak74u" = 0, "wpn_beretta" = 0, "wpn_bm16" = 0, "wpn_colt1911" = 0, "wpn_desert_eagle" = 0, "grenade_f1" = 0, "wpn_fn2000" = 0, "wpn_fort" = 0, "wpn_g36" = 0, "wpn_gauss" = 0, "wpn_groza" = 0, "wpn_hpsa" = 0, "wpn_knife" = 0, "wpn_l85" = 0, "wpn_lr300" = 0, "wpn_mp5" = 0, "wpn_pb" = 0, "wpn_pkm" = 0, "wpn_pm" = 0, "wpn_protecta" = 0, "wpn_rg-6" = 0, "grenade_rgd5" = 0, "wpn_rpg7" = 0, "wpn_sig220" = 0, "wpn_sig550" = 0, "wpn_spas12" = 0, "wpn_svd" = 0, "wpn_svu" = 0, "wpn_toz34" = 0, "wpn_usp45" = 0, "wpn_val" = 0, "wpn_vintorez" = 0, "wpn_walther" = 0, "wpn_wincheaster1300" = 0, "wpn_pm_actor" = 0, "wpn_fort_snag" = 0, "wpn_sig220_nimble" = 0, "wpn_usp_nimble" = 0, "wpn_desert_eagle_nimble" = 0, "wpn_wincheaster1300_trapper" = 0, "wpn_spas12_nimble" = 0, "wpn_protecta_nimble" = 0, "wpn_ak74u_snag" = 0, "wpn_mp5_nimble" = 0, "wpn_sig550_luckygun" = 0, "wpn_groza_nimble" = 0, "wpn_vintorez_nimble" = 0, "wpn_svu_nimble" = 0, "wpn_svd_nimble" = 0, "wpn_g36_nimble" = 0, "wpn_fn2000_nimble" = 0, "wpn_pkm_zulus" = 0, }
function set_best_weapon( hit_amount ) local active_item = db.actor:active_item() if active_item then local section = active_item:section() if weapons_table[ section ] then weapons_table[ section ] = weapons_table[ section ] + hit_amount local amount = 0 for k,v in pairs( weapons_table ) do if( v > amount ) then amount = v actor_statistic.favorite_weapon_sect = k end end end end end
|
|
Воскресенье, 20.05.2018, 13:50
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
27.09.2015 |
|
|
|
|
|
|
Время Альянса
| Статус: |
 |
| Ветеран: |
 |
| Сообщений: |
4070 |
| Награды: |
16 |
| Регистрация: |
19.07.2013 |
|
Цитата PROforum (  ) за что отвечает эта функция в xr_statistic.script За загрузку ранее сохраненной в сейв-файл таблицы стволов.
Цитата PROforum (  ) И может ли из за неё работать не правильно эта функция (или наоборот) Функции взаимосвязаны.
|
|
Воскресенье, 20.05.2018, 16:01
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
19.07.2013 |
|
|
|
|
|
|
| Статус: |
 |
| Опытный: |
 |
| Сообщений: |
1722 |
| Награды: |
10 |
| Регистрация: |
26.10.2016 |
|
Здравствуйте! Возник вопрос чистый ЗП: возможно ли классу оружия, костюмов и шлемов добавить кнопку, допустим, использовать, как брустеры? Или все это делается только правкой движка? Не подскажите ли скрипт, который заменял бы оружие после гибели нпс на другой предмет, например, на цветок?
|
|
Воскресенье, 20.05.2018, 16:11
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
26.10.2016 |
|
|
|
|
|
|
| Статус: |
 |
| Зевака: |
 |
| Сообщений: |
2 |
| Награды: |
0 |
| Регистрация: |
13.05.2018 |
|
Добрый вечер. У меня проблема с распаковкой all.spawn'a. Может вопрос оффтопный и нубский но по поиску в теме я ответа не нашёл. Несмотря на все танцы с бубнами (активперл установлен, ацдц настроен), при декомпиляции файла лог в cmd ссылается на невозможность использовать 'defined(@array)' в 146 строчке ini_file.pm. Без понятия, что с этим делать. Всё на скрине.
|
|
Воскресенье, 20.05.2018, 16:42
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
13.05.2018 |
|
|
|
|
|
|
| Статус: |
 |
| Гость: |
 |
| Сообщений: |
55 |
| Награды: |
1 |
| Регистрация: |
16.11.2017 |
|
Подскажите пожалуйста, как правильно написать команду в скрипте, чтобы при использовании конкретных предметов, в инвентаре появился другой предмет.
|
|
Воскресенье, 20.05.2018, 21:42
|
|
| Статус: |
 |
| Сообщений: |
666 |
| Регистрация: |
16.11.2017 |
|
|
|
|