Skip to main content

Поля сообщения

Каждая функция описывает одно поле в порядке провода — сама ничего не отправляет, только проверяет диапазон и возвращает значение, которое msg.send пишет по очереди.

msg.byte

n — 0..255 (WRITE_BYTE в SDK).

Аргументы

Возвращает

Значение вне диапазона — ошибка Lua сразу в момент вызова msg.byte/ msg.short/…, до msg.send. Так проще найти, какое именно поле не влезло.

msg.char

n — -128..127 (WRITE_CHAR в SDK).

Аргументы

Возвращает

Значение вне диапазона — ошибка Lua сразу в момент вызова msg.byte/ msg.short/…, до msg.send. Так проще найти, какое именно поле не влезло.

msg.short

n — -32768..32767 (WRITE_SHORT в SDK).

Аргументы

Возвращает

Значение вне диапазона — ошибка Lua сразу в момент вызова msg.byte/ msg.short/…, до msg.send. Так проще найти, какое именно поле не влезло.

msg.long

n — любое 32-битное целое (WRITE_LONG в SDK).

Аргументы

Возвращает

Значение вне диапазона — ошибка Lua сразу в момент вызова msg.byte/ msg.short/…, до msg.send. Так проще найти, какое именно поле не влезло.

msg.angle

f — число, градусы (WRITE_ANGLE в SDK).

Аргументы

Возвращает

Значение вне диапазона — ошибка Lua сразу в момент вызова msg.byte/ msg.short/…, до msg.send. Так проще найти, какое именно поле не влезло.

msg.coord

f — число, игровые единицы (WRITE_COORD в SDK).

Аргументы

Возвращает

Значение вне диапазона — ошибка Lua сразу в момент вызова msg.byte/ msg.short/…, до msg.send. Так проще найти, какое именно поле не влезло.

msg.string

s — до 191 байта (WRITE_STRING в SDK).

Аргументы

Возвращает

Проходит через ту же кодировку, что и p:hud()/p:say(): cslua_cp1251 переключает UTF-8 → CP1251 для старых клиентов, по умолчанию выключено.

msg.entity

v — игрок или объект ents, индекс >= 1 (WRITE_ENTITY в SDK).

Аргументы

Возвращает

Принимает и игрока (e.player), и сущность из ents — что угодно с полем id (игрок) или index (сущность). 0 (мир) не годится.