Mafia-Game Forum

Mafia-Game Forum (https://mafia-game.ru/forum/index.php)
-   Скриптинг (https://mafia-game.ru/forum/forumdisplay.php?f=10)
-   -   Мои скриптовые заметки насчёт PoliceManager (https://mafia-game.ru/forum/showthread.php?t=731)

TesaQ 16.01.2020 16:21

Мои скриптовые заметки насчёт PoliceManager
 
Выложу небольшие заметки со своими наблюдениями насчёт PoliceManager (он же pm)

pm_showsymbol xx и pm_showprogress работают только тогда, когда в сцене отключена полиция. Значки будут яркими всегда.

pm_setprogress xx? вроде как назначает прогресс, но не разобрался какие значения он принимает. Прогресс у меня либо заполняется на максимум, либо прогресс полностью пустой

police_support - не работает, не нашёл даже примера в сценах

policeitchforplayer flt[xx] выдаёт два значения, либо 0 (false) либо 1 (true)
тоже с самое и с vlvp. Только команды с небольшим различием. Первое отвечает за то, в поле зрения полиции ли игрок. А второе значит не интересуется ли полиция игроком в целом. Без разницы, видит ли полиция его или нет.

policemanager_add "name" - увы, но не работает так, как хотелось. Коли полиция арестует такого, то игрок провалит миссию. В общем полиция нормально работает только против игрока.

enemy_arrest_player - вообще слабый скрипт, актор ничего кроме как арестовать хотеть не будет, тупое преследование. А если начать бить такого, то иконка с наручников не поменяется и этот придурок до сих пор будет пытаться нацепить игрока наручники. Однако если настоящего копа ударить, то кукла с таким скриптом не останется в стороне и тоже начнёт стрельбу.

get_pm_crashtime xx, flt[yy] - довольно интересная работа скрипта. Записывает силу столкновения в переменную. И потихоньку эта переменная стремится к нулю, эдакий "таймер". Например если чуть задеть тачку, то значение примет около 100-400. Потом через полсекунды значение угаснет. А если разогнаться и со всей души врезаться в болт (там самые дикие повреждения), то значения переменной станут около 20000. Соответственно такое будет гаситься секунд 5-10.

get_pm_state xx, flt[yy], zz вот примерно такие хулиганства эта команда может записать и обработать:
0 - ношение оружия, за которое копы могут пресечь. [1]
1 - стрельба
2 - быстрая езда (нет разницы между превышением до штрафа или ареста)
3 - пугать пешеходов машиной (если ничего не путаю)
4 - таранить машины
5 - сбивать пешеходов
6 - езда по тротуару
7 - ?? (проверил все доступные нарушения, так и не нашёл что эти два значения между значат. Если кто знает, подскажите.)
8 - ?? (я проверял наезд на полицейскую машину и наезд на копов. Пока что только эти два нарушения обработать нельзя.)
9 - бить пешеходов (включая полицейских)
10 - езда на красный свет
11 - угонять машины (взлом или выкидывать чела с тачки)
12 - сбивать дорожные знаки
13, 14, 15, 16 (и так наверное до бесконечности) - тоже самое, что и 12.

Также если вернуть в траффик чувака с моделькой мента (human_returntotraff хх), то полицейский будет как настоящий, реагировать на все нарушения и вести себя как подобает местным ментам. :cool:

В дальнейшем тема будет дополняться по мере исследования, ну или кто-то ещё может поделиться своими знаниями по поводу работы этих скриптов или похожих на них.

Ковырять экзешник и смотреть чё в нём не умею, чтобы заполнить все пробелы. Всё тестировал и отслеживал как работает в самой игре.

CurtisTea 17.01.2020 10:47

Маленькое дополнение: в команде get_pm_state есть нарушение номер 0 - когда игрок достает оружие из инвентаря. Проверка работает на то же, на что и реагируют копы: кастет, нож и бита - нет реакции, коктейль молотова - уже да.


Текущее время: 01:17. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.11 Release Candidate 2
Copyright ©2000 - 2024, vBulletin Solutions Inc. Перевод: zCarot