Files
aego/modules/scripting/res/docs/stdlib.ru.md
sanspie f22242e5aa
ci / release (push) Successful in 5m5s
ci-platforms / build (amd64, windows, windows-2022) (push) Skipped
ci-platforms / build (arm64, darwin, macos-15) (push) Skipped
ci-platforms / build (amd64, darwin, macos-15-intel) (push) Skipped
ci / checks (push) Successful in 4m41s
ci / build (amd64, linux, ubuntu-24.04) (push) Successful in 7m14s
Stage 11g2–11g3: registry texts, CLI and the site in Russian (D348)
The remaining editor strings and undo step names; component, field, enum, setting, diagnostic and Script API texts under schema.*, enum.*, setting.*, diag.* and api.*; the launcher, the in-game Settings View with a Language setting, the CLI and aego schema show --lang. Every documentation page has a .ru.md translation; the site has a full Russian tree with hreflang, a language switch and ru/llms.txt; aego docs check --lang ru. New doc.tutorial and doc.recipe icons. Fix: an animator restored by a rewind prepares its controller before the replayed step.
2026-10-25 15:31:22 +03:00

62 lines
3.0 KiB
Markdown

---
id: language/standard-library
title: Стандартная библиотека
---
# Стандартная библиотека
Стандартная библиотека — это набор пакетов `aego/…`, которые может импортировать любой скрипт. У каждого пакета есть своя страница в справочнике Script API со всеми функциями; здесь сказано, для чего нужен каждый из них.
| Пакет | Для чего |
|---|---|
| [`aego/math`](ref:aego/math) | числа, векторы и повороты |
| [`aego/log`](ref:aego/log) | сообщения в «Консоли» |
| [`aego/rand`](ref:aego/rand) | случайные числа из зерна игры |
| [`aego/time`](ref:aego/time) | время кадра, фиксированный шаг и прошедшее время |
| [`aego/input`](ref:aego/input) | действия, контексты и клавиши напрямую; см. [Ввод](ref:input) |
| [`aego/settings`](ref:aego/settings) | настройки игрока и проекта; см. [Настройки](ref:settings) |
| [`aego/scene`](ref:aego/scene) | поиск, создание и удаление узлов |
| [`aego/testing`](ref:aego/testing) | проверки в тестах скриптов |
Модули движка добавляют свои пакеты, например `aego/physics` и `aego/audio`. Они перечислены в том же справочнике.
## Что стоит знать
- Перегрузки нет. У вариантов для Vec3 суффикс `3` (`Dot3`), у вариантов для int — суффикс `Int` (`ClampInt`).
- Собирайте сообщения журнала через `+` и `string(x)`.
- `aego/rand` берёт числа из генератора мира с зерном, поэтому повтор с тем же зерном даёт те же числа.
- Узлы, созданные через `scene.Instantiate`, появляются в конце фазы. Их скрипты получают `Ready` до следующего `Update`.
- `aego/testing` доступен только под `aego test`. Проваленная проверка останавливает тест и сообщает файл и строку.
Запустите:
```aes run
package demo
import (
"aego/log"
"aego/math"
"aego/rand"
"aego/scene"
"aego/time"
)
script Wander {
@export var Speed float = 2
var dir Vec2
func Ready() {
dir = math.Normalize(Vec2{rand.Range(-1, 1), rand.Range(-1, 1)})
log.Info("found myself: " + string(scene.Find("Wander") == node))
}
func Update(dt float) {
node.SetPosition(node.Position() + dir * Speed * dt)
if time.Frame() % 40 == 0 {
p := node.Position()
log.Info("t=" + string(time.Elapsed()) + " s, " + string(math.Length(p)) + " units from the start")
}
}
}
```