# 000174. Снова статистика игрока

Снова статистика игрока|В этом уроке мы узнаем некоторые не очевидные возможности статистики игрока.|wmysterio|wmysterio||||Всем привет! Думаю вы помните [этот урок](https://github.com/wmysterio/scm-scripting-lessons/blob/main/publ/uroki_skriptinga/gta_sa/statistika_igroka/34-1-0-134/README.md), в котором мы рассматривали статистику игрока и могли менять его статы. Сегодня я сделал некоторый эксперимент и он оправдал свои ожидания. На самом деле, мимо стандартной статистики, мы можем создавать свои собственные. Игра их не будет отображать в меню "Статистика", но в скрипте это очень даже реально сделать, при этом используя те опкоды, которые использовались в статье выше.

С выходом оригинальных названий опкодов, можно делать всякие эксперименты. Этот один из них. Начинаем порядок создания статистики:

```
0627: update_integer_stat 1000 to 0
```

Этот опкод ( или **0628** ) регистрирует новую статистику. В нашем случаи её ID равен 1000 а стартовое значение - 0.

Далее, по ходу дела, мы можем менять значение статистики на нужное. Как показали мои тесты - всё работает как надо. Вот, для примера, скрипт, который увеличивает статистику 1000 до 1000 и выводит её текущее значение или использовать как счётчик миссий для Cleo-миссий:

```
{$CLEO}
:STAT_NEW
03A4: name_thread 'STAT_NEW'
0627: update_integer_stat 1000 to 0 

for 1@ = 1 to 100
0623: add 1 to_integer_stat 1000 // увеличиваем стат 1000 на 1
0652: 0@ = integer_stat 1000 // получаем текущее значение стата 1000
0AD1: show_formatted_text_highpriority "Stat 1000: %d" time 100 0@ // выводим текущее значение
wait 100
end

0A93: end_custom_thread
```

Таким образом мы можем создавать и отслеживать сколько угодно статистик, что бывает очень помогает в сложных миссиях, где нужно что-то подсчитывать и хранить значения, при этом экономить переменные :)

× \*\*Примечание:\*\* Подбирать свободные ID статистики - это то ещё занятие. Часть из них иногда ведёт себя непредсказуемо, изменяя значения без вызова опкода|1412|1|0||snova\_statistika\_igroka|1509827017


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lessons.sannybuilder.com/00100/00200/000174.-snova-statistika-igroka.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
