> ## Documentation Index
> Fetch the complete documentation index at: https://cs-lua.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# sv — Cvar

> Сервер: часы, карта, консоль, переменные движка

# Cvar

<h2 id="cvar">
  sv.cvar
</h2>

Возвращает объект существующей переменной движка.

```lua theme={null}
sv.cvar(name)
```

### Аргументы

| # | имя    | тип    |                |
| - | ------ | ------ | -------------- |
| 1 | `name` | string | имя переменной |

### Возвращает

| тип           |                                  |
| ------------- | -------------------------------- |
| `cvar \| nil` | `nil`, если такой переменной нет |

### Пример

```lua theme={null}
local ft = sv.cvar("mp_freezetime")
if ft then print(ft:int()) end
```

<h2 id="cvar_register">
  sv.cvar\_register
</h2>

Заводит свою переменную движка.

```lua theme={null}
sv.cvar_register(name, default[, flags])
```

### Аргументы

| # | имя       | тип          |                                   |
| - | --------- | ------------ | --------------------------------- |
| 1 | `name`    | string       | имя переменной                    |
| 2 | `default` | string       | значение по умолчанию, строкой    |
| 3 | `flags`   | table \| nil | см. [Флаги](#cvar_register-флаги) |

### Возвращает

| тип    |                   |
| ------ | ----------------- |
| `cvar` | объект переменной |

<h3 id="cvar_register-флаги">
  Флаги
</h3>

| поле        | тип     |                                            |
| ----------- | ------- | ------------------------------------------ |
| `archive`   | boolean | значение сохраняется в конфиг              |
| `server`    | boolean | игроки получают уведомление об изменении   |
| `protected` | boolean | значение не отдаётся клиентам, для паролей |

### Пример

```lua theme={null}
local enabled = sv.cvar_register("greet_enabled", "1", { archive = true })
if enabled:int() ~= 0 then ... end
```

Повторный вызов для существующего имени возвращает объект, не сбрасывая значение, поэтому `lua_reload` cvar'ы не трогает.

<h2 id="int">
  c:int
</h2>

Значение переменной как целое.

```lua theme={null}
c:int()
```

### Возвращает

| тип      |          |
| -------- | -------- |
| `number` | значение |

<h2 id="float">
  c:float
</h2>

Значение переменной как число.

```lua theme={null}
c:float()
```

### Возвращает

| тип      |          |
| -------- | -------- |
| `number` | значение |

<h2 id="str">
  c:str
</h2>

Значение переменной как строка.

```lua theme={null}
c:str()
```

### Возвращает

| тип      |          |
| -------- | -------- |
| `string` | значение |

<h2 id="set">
  c:set
</h2>

Записывает значение переменной.

```lua theme={null}
c:set(value)
```

### Аргументы

| # | имя     | тип              |                |
| - | ------- | ---------------- | -------------- |
| 1 | `value` | string \| number | новое значение |

### Возвращает

Ничего.

### Пример

```lua theme={null}
sv.cvar("mp_friendlyfire"):set(1)
```

<h2 id="name">
  c:name
</h2>

Имя переменной.

```lua theme={null}
c:name()
```

### Возвращает

| тип      |     |
| -------- | --- |
| `string` | имя |
