diff --git a/sdk/php/fibonaccifox/AppGameKit.php b/sdk/php/fibonaccifox/AppGameKit.php index 9e3cf10..672e04f 100644 --- a/sdk/php/fibonaccifox/AppGameKit.php +++ b/sdk/php/fibonaccifox/AppGameKit.php @@ -84,7 +84,7 @@ function ARCreateAnchorFromHitTest(int $index): int * @param float $a Значение, передаваемое в функцию arccosine. * @return float */ - function ACos($a): float + function ACos(float $a): float { } @@ -13068,24 +13068,10 @@ function IsAbsolutePath($szPath) * @param int $objID идентификатор объекта * @return int */ - function Is3dPhysicsRagdollStatic($objID) + function Is3dPhysicsRagdollStatic(int $objID): int { } - /** - * Копирует объект в новый идентификатор, новый объект делится данными вершин с исходным объектом. Исходный объект - * должен существовать для того, чтобы экземпляр объекта рисовался правильно. Создание экземпляра объекта, который - * уже является экземпляром, ничего не даст. Создание экземпляра объекта, а затем удаление оригинала, вероятно, - * приведет к сбою. Установка шейдера на объект экземпляра разрешена до тех пор, пока атрибуты вершин, используемые - * шейдером, точно совпадают по имени и порядку с теми, которые используются на шейдере исходного объекта. - * Поддерживается установка различных изображений на экземпляре и исходном объекте. - * - * @param int $objID Идентификатор объекта для копирования. - * @return int - */ - function InstanceObject($objID) - { - } /** * Копирует объект в новый идентификатор, новый объект делится данными вершин с исходным объектом. Исходный объект @@ -13095,11 +13081,17 @@ function InstanceObject($objID) * шейдером, точно совпадают по имени и порядку с теми, которые используются на шейдере исходного объекта. * Поддерживается установка различных изображений на экземпляре и исходном объекте. * - * @param int $newobjID Идентификатор нового объекта. - * @param int $objID Идентификатор объекта для копирования. - * @return void + * + * Пример вызова: + * + * int InstanceObject($objID); - вернет ID скопированного объекта. + * + * void InstanceObject($newobjID,$objID); - задает ID при копировании объекта. + * + * @param int ...$objID Идентификатор нового объекта (и/или) идентификатор объекта для копирования. + * @return mixed */ - function InstanceObject($newobjID, $objID) + function InstanceObject(int...$objID): mixed { } @@ -19981,52 +19973,23 @@ function GetHTTPFileComplete($iHTTP) * производить изображение более высокого качества, содержащее больше пикселей. Используйте GetImageWidth и * GetImageHeight, если вам нужно знать фактический размер изображения, полученного в пикселях. * + * Пример вызова: + * + * int GetImage($x, $y, $width, $height); - вернет ID нового изображения. + * + * void GetImage($imageID, $x, $y, $width, $height); - задаем ID нового изображения. + * * @param int $imageID Номер изображения, которое будет содержать захваченное изображение * @param float $x Координата x верхнего левого угла поля для копирования * @param float $y Координата y верхнего левого угла поля для копирования * @param float $width Ширина коробки для копирования * @param float $height Высота коробки для копирования - * @return void + * @return mixed */ - function GetImage($imageID, $x, $y, $width, $height) + function GetImage(mixed... $arg) : mixed { } - /** - * Захватывает часть backbuffer и создает из нее новое изображение. Значения положения и размера должны быть - * указаны в координатах экрана. Возвращает идентификатор нового изображения, он должен быть удален, когда вы - * закончите с ним. Чтобы эффективно использовать эту команду, вы должны знать, как AGK обращается к заднему - * буферу. При вызове синхронизации AGK обновляет позиции всех объектов с помощью Update, затем рисует их все в - * задний буфер с помощью Render, не очищая его, а затем выводит задний буфер на экран с помощью Swap. Затем он - * очищает задний буфер и возвращается к вашему коду, так что если бы вы вызвали getImage сразу после - * синхронизации, то получили бы пустое изображение, заполненное текущим чистым цветом. Поэтому, если вы хотите - * захватить изображение текущей сцены полностью нарисованной, вы должны вызвать Render, а затем getImage, а затем - * ClearScreen, чтобы очистить задний буфер, чтобы синхронизация не перерисовывала все по полностью нарисованному - * буферу глубины. Если вы уже используете Update, Render и Swap вместо Sync, то вызовите getImage между Render и - * Swap. Это также позволяет вам делать такие вещи, как рисовать линии в заднем буфере, получать изображение - * результата и затем очищать его, чтобы он не влиял на то, что отображается на экране. Вызов getImage-это - * медленная команда, и не рекомендуется вызывать ее каждый кадр. Обратите внимание, что изображение, полученное - * этой командой, не гарантированно будет иметь ту же ширину и высоту, что и заданные этой командой, это происходит - * потому, что изображение создается из части экрана, которая имеет разный размер на разных устройствах. Например, - * при виртуальном разрешении 480х360 вы получите изображение во весь экран, вызвав эту команду с шириной 480 и - * высотой 360, но на iPod это даст изображение 480х360 пикселей, в то время как на iPad оно будет около 1024х768 - * пикселей. Это не должно влиять на то, как вы используете изображение, поскольку применение его к спрайту и - * установка размера спрайта на тот же 480x360 заставит спрайт заполнить экран в обоих случаях. Это просто - * означает, что на iPad у вас есть более качественное изображение для игры. Это также относится к командам - * рисования линий: рисование линии от 0,0 до 100,100, а затем получение изображения от 0,0 до 100,100 приведет к - * получению изображения диагональной линии на всех устройствах, но устройства с высоким разрешением экрана будут - * производить изображение более высокого качества, содержащее больше пикселей. Используйте GetImageWidth и - * GetImageHeight, если вам нужно знать фактический размер изображения, полученного в пикселях. - * - * @param float $x Координата x верхнего левого угла поля для копирования - * @param float $y Координата y верхнего левого угла поля для копирования - * @param float $width Ширина коробки для копирования - * @param float $height Высота коробки для копирования - * @return int - */ - function GetImage($x, $y, $width, $height) - { - } /** * Возвращает ход загрузки файла в виде плавающего значения от 0 до 100. Это не следует полагаться на то, чтобы @@ -24436,26 +24399,19 @@ function CreateObjectFromRawHeightMap($objID, $szFilename, $width, $height, $len * Создает 3D-окно с заданными шириной (X), высотой (Y) и длиной (Z). Возвращает идентификатор, который можно * использовать для ссылки на этот объект в других командах. * - * @param float $width Размер объекта в направлении X. - * @param float $height Размер объекта в направлении Y. - * @param float $length Размер объекта в направлении Z. - * @return int - */ - function CreateObjectBox($width, $height, $length) - { - } - - /** - * Создает 3D-окно с заданными шириной (X), высотой (Y) и длиной (Z). Возвращает идентификатор, который можно - * использовать для ссылки на этот объект в других командах. + * Пример вызова: + * + * int CreateObjectBox($width, $height, $length); + * + * void CreateObjectBox($objID, $width, $height, $length); * * @param int $objID Идентификатор, используемый для нового объекта. * @param float $width Размер объекта в направлении X. * @param float $height Размер объекта в направлении Y. * @param float $length Размер объекта в направлении Z. - * @return void + * @return mixed */ - function CreateObjectBox($objID, $width, $height, $length) + function CreateObjectBox(mixed...$args): mixed { } @@ -24464,25 +24420,18 @@ function CreateObjectBox($objID, $width, $height, $length) * использование CloneObject скопирует их все. Используйте эту команду, если вы хотите скопировать только одну * сетку. Индексы сетки находятся в диапазоне от 1 до GetObjectNumMeshes включительно. * - * @param int $objID Идентификатор нового объекта - * @param int $fromObjID Идентификатор объекта, содержащего сетку для копирования - * @param int $meshIndex Индекс сетки для копирования - * @return void - */ - function CreateObjectFromObjectMesh($objID, $fromObjID, $meshIndex) - { - } - - /** - * Создает объект путем копирования одной сетки из другого объекта. Объект может содержать много сеток, и - * использование CloneObject скопирует их все. Используйте эту команду, если вы хотите скопировать только одну - * сетку. Индексы сетки находятся в диапазоне от 1 до GetObjectNumMeshes включительно. + * Пример вызова: * + * int CreateObjectFromObjectMesh($fromObjID, $meshIndex); + * + * void CreateObjectFromObjectMesh($objID, $fromObjID, $meshIndex); + * + * @param int $objID Идентификатор нового объекта * @param int $fromObjID Идентификатор объекта, содержащего сетку для копирования * @param int $meshIndex Индекс сетки для копирования - * @return int + * @return mixed */ - function CreateObjectFromObjectMesh($fromObjID, $meshIndex) + function CreateObjectFromObjectMesh(int...$args): mixed { } @@ -24493,34 +24442,22 @@ function CreateObjectFromObjectMesh($fromObjID, $meshIndex) * Любое дальнейшее изменение в целевом положении будет пытаться переместить эту точку спрайта в новое место. * Используйте SetJointMouseTarget для изменения местоположения целевой позиции. * + * Пример вызова: + * + * int CreateMouseJoint($iSpriteIndex, $x, $y, $maxForce); + * void CreateMouseJoint($iJointIndex, $iSpriteIndex, $x, $y, $maxForce); + * * @param int $iJointIndex Идентификатор, который будет использоваться для этого сустава. * @param int $iSpriteIndex Идентификатор спрайта для перемещения. * @param float $x Координата x начальной точки привязки на спрайте. * @param float $y Координата y начальной точки привязки на спрайте. * @param float $maxForce Максимальное усилие, которое сустав может использовать для перемещения спрайта. - * @return void - */ - function CreateMouseJoint($iJointIndex, $iSpriteIndex, $x, $y, $maxForce) - { - } - - /** - * Создает соединение мыши между точкой и спрайтом. Это обычно используется при перетаскивании фигуры указателем - * мыши и попытке переместить спрайт в заданную точку с помощью силы до максимального заданного значения. Укажите - * точку привязки в мировых координатах, которая будет выступать в качестве начальной точки удержания спрайта. - * Любое дальнейшее изменение в целевом положении будет пытаться переместить эту точку спрайта в новое место. - * Используйте SetJointMouseTarget для изменения местоположения целевой позиции. - * - * @param int $iSpriteIndex Идентификатор спрайта для перемещения. - * @param float $x Координата x начальной точки привязки на спрайте. - * @param float $y Координата y начальной точки привязки на спрайте. - * @param float $maxForce Максимальное усилие, которое сустав может использовать для перемещения спрайта. - * @return int + * @return mixed */ - function CreateMouseJoint($iSpriteIndex, $x, $y, $maxForce) + function CreateMouseJoint(mixed...$args): mixed { } - + /** * Создает сетевое сообщение, которое может быть отправлено на другое сетевое устройство. Он возвращает * идентификатор, который можно использовать для взаимодействия с сообщением. Сообщения, созданные таким образом, @@ -24533,56 +24470,6 @@ function CreateNetworkMessage() { } - /** - * Создает memblock из сетки объектов. Объект может содержать одну или несколько сеток, индексы сетки находятся в - * диапазоне от 1 до GetObjectNumMeshes включительно. Сетка копируется в memblock, поэтому любые изменения в - * memblock не влияют сразу на сетку, вы должны использовать одну из других команд, таких как - * SetObjectMeshFromMemblock, чтобы скопировать memblock обратно в сетку. Первые 4 байта memblock представляют - * количество вершин в сетке. Вторые 4 байта представляют количество индексов в сетке, это может быть 0, и в этом - * случае каждые три вершины представляют собой многоугольник, и никакие вершины не могут быть общими. Если число - * индексов больше 0, то каждые три индекса представляют собой многоугольник, и вершины могут быть разделены между - * многоугольниками. Индексы начинаются с 0, поэтому индекс 0 ссылается на первую вершину в списке. Третьи 4 байта - * представляют количество атрибутов на вершину, например, позиция, нормали и УФ-данные-все это потенциальные - * атрибуты, поэтому вершина, содержащая все три, будет иметь 3 атрибута. Вершина должна иметь атрибут позиции, все - * остальное необязательно. Четвертые 4 байта представляют размер одной вершины в байтах, это можно вычислить по - * атрибутивным данным, но дано для удобства. Пятые 4 байта смещены для начала вершинных данных, так что вы можете - * легко добраться до них. Шестые 4 байта смещены для начала индексных данных, будут равны 0, если индексов нет. - * После этих 6 значений, начиная со смещения 24, идут данные атрибута вершины. Данные атрибута вершины описывают, - * как выкладываются данные вершины, например, если они имеют нормали, УФ-данные и т. Д. Для каждого атрибута - * существует 1 байт типа данных, 1 байт количества компонентов, 1 байт флага нормализации, 1 байт длины строки и X - * байт строковых данных для имени атрибута. Тип данных будет равен 0 для поплавков (используется почти для всего, - * например, позиции, нормалей и т. Д.) или 1 для беззнаковых байтов (используется для цветов вершин). Количество - * компонентов-это количество значений на атрибут, например, позиция имеет 3 компонента, x,y,z, UV - данные имеют 2 - * компонента, а цвета вершин-4 компонента. Обратите внимание, что любой тип данных unsigned byte должен иметь 4 - * компонента, даже если некоторые из них не используются. Флаг normalize используется только для типов данных - * unsigned byte и преобразует значения в диапазоне 0-255 в 0.0-1.0 для использования в шейдере. Обычно флаг - * нормализации будет равен 1 для атрибутов цвета и 0 для всего остального. Байт длины строки всегда будет кратен - * 4, чтобы упростить проблемы выравнивания, сама строка может иметь немного меньше символов и быть дополнена - * нулевыми терминаторами, но прочитайте все указанные байты, и вы получите правильную строку длины. Строка имени - * атрибута будет использоваться шейдером для распознавания данных вершин, имена атрибутов, распознаваемые AGK, - - * "position", "normal", "tangent", "binormal", "color", "uv", "uv1", "boneweights" и "boneindices", однако вы - * можете добавлять атрибуты с любым именем, которое вам нравится, пока вы пишете соответствующий шейдер с теми же - * именами. Если вы не используете свой собственный шейдер и вместо этого полагаетесь на AGK для рисования объекта, - * то вы должны придерживаться приведенных выше имен атрибутов. За атрибутивными данными следуют необработанные - * вершинные данные, которые обычно начинаются с атрибута "позиция". Это будет 4-байтовый поплавок для позиции X, - * 4-байтовый поплавок для позиции Y и 4-байтовый поплавок для позиции Z. Это продолжается для каждого атрибута, - * указанного в атрибутивных данных. Обратите внимание, что цветовые данные всегда будут иметь в общей сложности 4 - * байта, по 1 байту без знака для каждого цветового канала. Вы можете получить доступ к отдельным вершинам, - * используя размер вершины, указанный выше, и индекс вершины, например so - * offset=vertexDataOffset+(vertexIndex*vertexSize). Наконец, это данные индекса, если таковые имеются. Каждый - * индекс представляет собой 4-байтовое целое число, которое ссылается на вершину в данных вершин. Каждые три - * индекса представляют собой многоугольник. Если вы планируете регулярно вносить изменения в сетку, вы должны - * сохранить memblock после использования SetObjectMeshFromMemblock вместо того, чтобы регенерировать его из - * объекта каждый раз, когда вы хотите внести изменения. Затем снова вызовите SetObjectMeshFromMemblock, когда вы - * хотите перенести свои новые изменения на объект. - * - * @param int $objID Идентификатор объекта, содержащего сетку для чтения - * @param int $meshIndex Индекс сетки для копирования в memblock - * @return int - */ - function CreateMemblockFromObjectMesh($objID, $meshIndex) - { - } /** * Создает memblock из сетки объектов. Объект может содержать одну или несколько сеток, индексы сетки находятся в @@ -24627,19 +24514,24 @@ function CreateMemblockFromObjectMesh($objID, $meshIndex) * объекта каждый раз, когда вы хотите внести изменения. Затем снова вызовите SetObjectMeshFromMemblock, когда вы * хотите перенести свои новые изменения на объект. * + * Пример вызова: + * + * int CreateMemblockFromObjectMesh($objID, $meshIndex); + * + * void CreateMemblockFromObjectMesh($memID, $objID, $meshIndex); * @param int $memID Идентификатор нового memblock * @param int $objID Идентификатор объекта, содержащего сетку для чтения * @param int $meshIndex Индекс сетки для копирования в memblock - * @return void + * @return mixed */ - function CreateMemblockFromObjectMesh($memID, $objID, $meshIndex) + function CreateMemblockFromObjectMesh(int...$args): mixed { } /** * Создает memblock из загруженного изображения, субизображения atlas не поддерживаются. Изображение должно * существовать и не подвержено влиянию этой команды. Первые 4 байта memlbock хранят ширину изображения, следующие - * 4 байта хранят высоту изображения, следующие 4 байта хранят битовую глубину, в настоящее время это всегда будет + * 4 байта хранят высоту изображения, следующие 4 байта хранят битовую глубину, в настоящее время это всегда будет 32 * 32. После этого необработанные данные изображения начинаются в формате RGBA, причем каждый компонент хранится в * одном байте, поэтому каждый пиксель занимает 4 байта. Размер данных изображения может быть вычислен по * ширине*высоте*4 байта (на данный момент битовая глубина может быть принята равной 32 битам = 4 байтам). Обратите @@ -24650,49 +24542,19 @@ function CreateMemblockFromObjectMesh($memID, $objID, $meshIndex) * последовательности строк, заканчивающихся в правом нижнем углу. Возвращает идентификатор, который можно * использовать для ссылки на этот memblock в других командах. * - * @param int $imageID Идентификатор изображения для чтения. - * @return int - */ - function CreateMemblockFromImage($imageID) - { - } - - /** - * Создает memblock из загруженного изображения, субизображения atlas не поддерживаются. Изображение должно - * существовать и не подвержено влиянию этой команды. Первые 4 байта memlbock хранят ширину изображения, следующие - * 4 байта хранят высоту изображения, следующие 4 байта хранят битовую глубину, в настоящее время это всегда будет - * 32. После этого необработанные данные изображения начинаются в формате RGBA, причем каждый компонент хранится в - * одном байте, поэтому каждый пиксель занимает 4 байта. Размер данных изображения может быть вычислен по - * ширине*высоте*4 байта (на данный момент битовая глубина может быть принята равной 32 битам = 4 байтам). Обратите - * внимание, что из-за малого формата endian чтение данных изображения с байтами вернет смещения 0=R, 1=G, 2=B, - * 3=A, но чтение их всех как одного целого числа приведет к значению с A как наиболее значимым байтом, за которым - * следует B, затем G, затем R как наименее значимый байт. Пиксельные данные начинаются в верхнем левом углу - * изображения и продолжаются слева направо, а затем сверху вниз, в результате чего изображение сохраняется в виде - * последовательности строк, заканчивающихся в правом нижнем углу. Возвращает идентификатор, который можно - * использовать для ссылки на этот memblock в других командах. + * Пример вызова: + * + * int CreateMemblockFromImage($imageID); * + * void CreateMemblockFromImage($memID, $imageID); * @param int $memID Идентификатор создаваемого мемблока. * @param int $imageID Идентификатор изображения для чтения. - * @return void + * @return mixed */ - function CreateMemblockFromImage($memID, $imageID) + function CreateMemblockFromImage(int...$args): mixed { } - /** - * Создает memblock из файла без какой-либо обработки данных файла, memblock будет байт за байтом копией файла. - * Возвращает идентификатор, который может быть использован для ссылки на этот memblock позже. Вы можете - * использовать относительные пути в имени файла для чтения из вложенных папок или использовать SetFolder для - * первого просмотра. Вы можете использовать абсолютные пути, добавив косую черту в начало имени файла, в этом - * случае папка, установленная с помощью SetFolder, игнорируется. Например /media/file.txt будет читать его из - * папки media, даже если SetFolder был использован для перехода к /media/somefolder - * - * @param string $filename Имя файла для чтения, если он не существует, это не удастся. - * @return int - */ - function CreateMemblockFromFile($filename) - { - } /** * Создает memblock из файла без какой-либо обработки данных файла, memblock будет байт за байтом копией файла. @@ -24702,11 +24564,16 @@ function CreateMemblockFromFile($filename) * случае папка, установленная с помощью SetFolder, игнорируется. Например /media/file.txt будет читать его из * папки media, даже если SetFolder был использован для перехода к /media/somefolder * + * Пример вызова: + * + * int CreateMemblockFromFile($filename); + * + * void CreateMemblockFromFile($memID, $filename); * @param int $memID Идентификатор создаваемого мемблока. * @param string $filename Имя файла для чтения, если он не существует, это не удастся. - * @return void + * @return mixed */ - function CreateMemblockFromFile($memID, $filename) + function CreateMemblockFromFile(mixed...$args): mixed { } @@ -24714,22 +24581,17 @@ function CreateMemblockFromFile($memID, $filename) * Создает раздел памяти заданного размера для доступа на чтение или запись. Содержимое памяти не определено, пока * вы не запишете в нее. Memblock не должен уже существовать с выбранным вами memID. * - * @param int $memID Идентификатор мемблока, который вы хотите использовать. - * @param int $size Размер мемблока в байтах. максимум 100 000 000. - * @return void - */ - function CreateMemblock($memID, $size) - { - } - - /** - * Создает раздел памяти заданного размера для доступа на чтение или запись. Содержимое памяти не определено, пока - * вы не запишете в нее. Memblock не должен уже существовать с выбранным вами memID. + * Пример вызова: + * + * int CreateMemblock($size); * + * void CreateMemblock($memID, $size); + * + * @param int $memID Идентификатор мемблока, который вы хотите использовать. * @param int $size Размер мемблока в байтах. максимум 100 000 000. - * @return int + * @return mixed */ - function CreateMemblock($size) + function CreateMemblock(int...$args): mixed { } @@ -24745,32 +24607,11 @@ function CreateMemblock($size) * теперь оно содержит пружинный компонент для имитации колеса автомобиля. Имя команды AGK останется прежним для * обратной совместимости, однако функциональность может измениться * - * @param int $iSpriteIndex1 Идентификатор первого спрайта, который присоединится. - * @param int $iSpriteIndex2 Идентификатор второго спрайта, к которому нужно присоединиться. - * @param float $x Координата x опорной точки. - * @param float $y Координата y опорной точки. - * @param float $vx Компонент x оси. - * @param float $vy Компонент y оси. - * @param int $colConnected Установите, могут ли два спрайта, соединенные соединением, сталкиваться друг с другом, - * 0=нет, 1=да. - * @return int - */ - function CreateLineJoint($iSpriteIndex1, $iSpriteIndex2, $x, $y, $vx, $vy, $colConnected) - { - } - - /** - * Создает соединение линий между двумя спрайтами. Соединение линий позволяет спрайтам двигаться только вдоль - * заданной оси относительно друг друга, свободно вращаясь на обоих концах. Он похож на призматический шарнир, за - * исключением того, что допускается относительное вращение. Укажите единственную опорную точку в мировых - * координатах со спрайтами уже в нужном относительном положении, на минимальном расстоянии поршня. С этого момента - * спрайтам будет позволено разделиться вдоль заданной оси относительно друг друга. Точка привязки может быть - * смещена от центральных положений спрайта. Идентификатор соединения будет возвращен для ссылки на это соединение - * позже, соединение может быть удалено системой, если какой-либо из спрайтов, которые оно соединяет, будет удален. - * Это соединение поддерживает двигатели и ограничения. Box2D переименовал это соединение в Колесное соединение, и - * теперь оно содержит пружинный компонент для имитации колеса автомобиля. Имя команды AGK останется прежним для - * обратной совместимости, однако функциональность может измениться + * Пример вызова: * + * int CreateLineJoint($iSpriteIndex1, $iSpriteIndex2, $x, $y, $vx, $vy, $colConnected); + * + * void CreateLineJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $y, $vx, $vy, $colConnected); * @param int $iJointIndex Идентификатор, который будет использоваться для этого сустава. * @param int $iSpriteIndex1 Идентификатор первого спрайта, который присоединится. * @param int $iSpriteIndex2 Идентификатор второго спрайта, к которому нужно присоединиться. @@ -24780,9 +24621,9 @@ function CreateLineJoint($iSpriteIndex1, $iSpriteIndex2, $x, $y, $vx, $vy, $colC * @param float $vy Компонент y оси. * @param int $colConnected Установите, могут ли два спрайта, соединенные соединением, сталкиваться друг с другом, * 0=нет, 1=да. - * @return void + * @return mixed */ - function CreateLineJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $y, $vx, $vy, $colConnected) + function CreateLineJoint(mixed...$args): mixed { } @@ -24791,23 +24632,16 @@ function CreateLineJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $y, $ * нет, то будет создан. Memblock должен содержать допустимый PNG-файл, например загруженный * CreateMemblockFromFile(memID, "image.png") * - * @param int $imageID Идентификатор создаваемого изображения. - * @param int $memID Идентификатор считываемого memblock, memblock не зависит от этой команды. - * @return void - */ - function CreateImageFromPNGMemblock($imageID, $memID) - { - } - - /** - * Создает изображение из memblock. Мемблок должен существовать, если образ существует, он будет перезаписан, если - * нет, то будет создан. Memblock должен содержать допустимый PNG-файл, например загруженный - * CreateMemblockFromFile(memID, "image.png") + * Пример вызова: * + * int CreateImageFromPNGMemblock($memID); + * + * void CreateImageFromPNGMemblock($imageID, $memID); + * @param int $imageID Идентификатор создаваемого изображения. * @param int $memID Идентификатор считываемого memblock, memblock не зависит от этой команды. - * @return int + * @return mixed */ - function CreateImageFromPNGMemblock($memID) + function CreateImageFromPNGMemblock(int...$args): mixed { } @@ -24825,28 +24659,19 @@ function CreateHTTPConnection() * Создает изображение размером 1x1 пиксель заданного цвета. Это может быть использовано для текстурирования любого * объекта или спрайта сплошным цветом. * - * @param int $imageID Идентификатор изображения, используемый для этого изображения. - * @param int $red Красная составляющая изображения (от 0 до 255) - * @param int $green Зеленая составляющая изображения (от 0 до 255) - * @param int $blue Синяя составляющая изображения (от 0 до 255) - * @param int $alpha Альфа - * @return void - */ - function CreateImageColor($imageID, $red, $green, $blue, $alpha) - { - } - - /** - * Создает изображение размером 1x1 пиксель заданного цвета. Это может быть использовано для текстурирования любого - * объекта или спрайта сплошным цветом. + * Пример вызова: * + * int CreateImageColor($red, $green, $blue, $alpha); + * + * void CreateImageColor($imageID, $red, $green, $blue, $alpha); + * @param int $imageID Идентификатор изображения, используемый для этого изображения. * @param int $red Красная составляющая изображения (от 0 до 255) * @param int $green Зеленая составляющая изображения (от 0 до 255) * @param int $blue Синяя составляющая изображения (от 0 до 255) * @param int $alpha Альфа - * @return int + * @return mixed */ - function CreateImageColor($red, $green, $blue, $alpha) + function CreateImageColor(int...$args):mixed { } @@ -24855,23 +24680,16 @@ function CreateImageColor($red, $green, $blue, $alpha) * вернет его memblock должен содержать допустимый файл OGG, например загруженный с CreateMemblockFromFile(memID, * "music.ogg") * - * @param int $memID Идентификатор считываемого memblock, memblock не зависит от этой команды. - * @return int - */ - function CreateMusicFromOGGMemblock($memID) - { - } - - /** - * Создает музыкальную сущность из мемблока. Мемблок должен существовать. Это создаст новый идентификатор музыки и - * вернет его memblock должен содержать допустимый файл OGG, например загруженный с CreateMemblockFromFile(memID, - * "music.ogg") + * Пример вызова: * + * int CreateMusicFromOGGMemblock($memID); + * + * void CreateMusicFromOGGMemblock($musicID, $memID); * @param int $musicID Идентификатор создаваемой музыки. * @param int $memID Идентификатор считываемого memblock, memblock не зависит от этой команды. - * @return void + * @return mixed */ - function CreateMusicFromOGGMemblock($musicID, $memID) + function CreateMusicFromOGGMemblock(int...$args): mixed { } @@ -24890,33 +24708,16 @@ function CreateMusicFromOGGMemblock($musicID, $memID) * звуковых экземпляров, а только с идентификаторами звуковых файлов. Возвращает идентификатор, который может быть * использован для ссылки на этот memblock в других командах. * - * @param int $soundID Идентификатор звука для чтения. - * @return int - */ - function CreateMemblockFromSound($soundID) - { - } - - /** - * Создает memblock из загруженного звукового файла. Звуковой файл должен быть загружен с помощью LoadSound и не - * подвержен влиянию этой команды. Первые 2 байта memlbock хранят количество каналов (1 или 2 поддерживаемых), - * следующие 2 байта хранят биты на выборку (8 или 16 поддерживаемых), следующие 4 байта хранят выборки в секунду, - * например 44100. Следующие 4 байта-это количество кадров в звуковых данных, размер звуковых данных в байтах можно - * вычислить из этого с помощью формулы numFrames*(BitsPerSample/8)*channels. В 2-канальном звуке кадр содержит 2 - * сэмпла, по одному для каждого канала. В моно-звуке кадр содержит 1 образец. Остальная часть memblock-это - * необработанные звуковые данные, например, в 8-битном стереозвуке с 3 кадрами необработанные данные будут - * выглядеть так. смещение байта 0 = Кадр 1, смещение байта данных левого канала 1 = Кадр 1, Смещение байта данных - * правого канала 2 = Кадр 2, Смещение байта данных левого канала 3 = Кадр 2, смещение байта данных правого канала - * 4 = Кадр 3, смещение байта данных левого канала 5 = Кадр 3, данные правого канала Продолжительность звука может - * быть рассчитана по следующей формуле: numFrames/samplesPerSecond. Эта команда не работает с идентификаторами - * звуковых экземпляров, а только с идентификаторами звуковых файлов. Возвращает идентификатор, который может быть - * использован для ссылки на этот memblock в других командах. + * Пример вызова: + * + * int CreateMemblockFromSound($soundID); * + * void CreateMemblockFromSound($memID, $soundID); * @param int $memID Идентификатор создаваемого мемблока. * @param int $soundID Идентификатор звука для чтения. - * @return void + * @return mixed */ - function CreateMemblockFromSound($memID, $soundID) + function CreateMemblockFromSound(int...$args): mixed { } @@ -24955,45 +24756,21 @@ function CreateFileFromMemblock($filename, $memID) { } - /** - * Создайте поле редактирования, которое можно расположить в любом месте экрана. Он возвращает идентификатор, - * используемый для ссылки на это поле редактирования позже. - * - * @return int - */ - function CreateEditBox() - { - } /** * Создайте поле редактирования, которое можно расположить в любом месте экрана. Он возвращает идентификатор, * используемый для ссылки на это поле редактирования позже. * - * @param int $index Идентификатор, используемый для этого поля редактирования. - * @return void - */ - function CreateEditBox($index) - { - } - - /** - * Создает спрайт в заданном идентификаторе спрайта, возвращает используемый идентификатор спрайта. Фиктивные - * спрайты ведут себя как обычные спрайты, но не имеют никакого изображения или другого визуального аспекта. Они не - * будут нарисованы, даже если им присвоено изображение. Они полезны для добавления физических объектов в сцену без - * необходимости визуального сопровождения физической формы. При желании вы можете использовать команды физического - * контакта и обратной связи, чтобы выяснить, что поразило эти скрытые физические формы. Если вам не нужно знать, - * что попало в ваши скрытые фигуры, то вы можете добавить их все в один фиктивный спрайт, используя команды - * AddSpriteShape для лучшей производительности. SetSpriteShape не будет работать с фиктивными спрайтами, так как у - * них нет изображения для вычисления фигуры, фигуры должны быть определены вручную с помощью SetSpriteShapeBox, - * SetSpriteShapeCircle или SetSpriteShapePolygon. Фиктивные спрайты не будут обновлять свой сохраненный угол и - * положение с помощью последних версий физики, поэтому вызовы GetSpriteX, GetSpriteY или GetSpriteAngle вернут - * последнее заданное вами значение. Установка положения спрайта обновит физическое тело до заданного вами - * положения. + * Пример вызова: * - * @param int $iSpriteIndex Идентификатор, используемый для этого спрайта. - * @return void + * int CreateEditBox(); + * + * void CreateEditBox($index); + * + * @param int|null $index Идентификатор, используемый для этого поля редактирования. + * @return mixed */ - function CreateDummySprite($iSpriteIndex) + function CreateEditBox(int $index = null): mixed { } @@ -25011,34 +24788,20 @@ function CreateDummySprite($iSpriteIndex) * последнее заданное вами значение. Установка положения спрайта обновит физическое тело до заданного вами * положения. * - * @return int - */ - function CreateDummySprite() - { - } - - /** - * Создает дистанционное соединение между двумя спрайтами. Дистанционное соединение удерживает спрайты на - * определенном расстоянии друг от друга, позволяя им свободно вращаться вокруг опорных точек. Укажите две опорные - * точки в мировых координатах, чтобы спрайты уже находились на нужном расстоянии друг от друга. Опорные точки - * могут быть смещены от позиций спрайтов. Соединение может быть удалено системой, если какой-либо из спрайтов, - * которые он соединяет, будет удален. + * Пример вызова: * - * @param int $iJointIndex Идентификатор, который будет использоваться для этого сустава. - * @param int $iSpriteIndex1 Идентификатор первого спрайта, который присоединится. - * @param int $iSpriteIndex2 Идентификатор второго спрайта, к которому нужно присоединиться. - * @param float $x Координата x опорной точки спрайта 1. - * @param float $y Координата y якорной точки спрайта 1. - * @param float $x2 Координата x опорной точки спрайта 2. - * @param float $y2 Координата y опорной точки спрайта 2. - * @param int $colConnected Установите, могут ли два спрайта, соединенные соединением, сталкиваться друг с другом, - * 0=нет, 1=да. - * @return void + * int CreateDummySprite(); + * + * void CreateDummySprite($iSpriteIndex); + * + * @param int|null $iSpriteIndex Идентификатор, используемый для этого спрайта. + * @return mixed */ - function CreateDistanceJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $y, $x2, $y2, $colConnected) + function CreateDummySprite(int $iSpriteIndex = null): mixed { } + /** * Создает дистанционное соединение между двумя спрайтами. Дистанционное соединение удерживает спрайты на * определенном расстоянии друг от друга, позволяя им свободно вращаться вокруг опорных точек. Укажите две опорные @@ -25046,6 +24809,12 @@ function CreateDistanceJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $ * могут быть смещены от позиций спрайтов. Соединение может быть удалено системой, если какой-либо из спрайтов, * которые он соединяет, будет удален. * + * Пример вызова: + * + * void CreateDistanceJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $y, $x2, $y2, $colConnected); + * + * int CreateDistanceJoint($iSpriteIndex1, $iSpriteIndex2, $x, $y, $x2, $y2, $colConnected); + * @param int $iJointIndex Идентификатор, который будет использоваться для этого сустава. * @param int $iSpriteIndex1 Идентификатор первого спрайта, который присоединится. * @param int $iSpriteIndex2 Идентификатор второго спрайта, к которому нужно присоединиться. * @param float $x Координата x опорной точки спрайта 1. @@ -25054,9 +24823,9 @@ function CreateDistanceJoint($iJointIndex, $iSpriteIndex1, $iSpriteIndex2, $x, $ * @param float $y2 Координата y опорной точки спрайта 2. * @param int $colConnected Установите, могут ли два спрайта, соединенные соединением, сталкиваться друг с другом, * 0=нет, 1=да. - * @return int + * @return mixed */ - function CreateDistanceJoint($iSpriteIndex1, $iSpriteIndex2, $x, $y, $x2, $y2, $colConnected) + function CreateDistanceJoint(mixed...$args): mixed { } @@ -25077,38 +24846,17 @@ function CreateDistanceJoint($iSpriteIndex1, $iSpriteIndex2, $x, $y, $x2, $y2, $ * прослушивать многоадресный адрес AGK "FF02::41:474B", который используется для обнаружения именованной сети на * порту 45631. Возвращает идентификатор, который можно использовать для взаимодействия с этим широковещательным * слушателем. + * Пример вызова: * - * @param string $szIP Многоадресный IP-адрес для прослушивания применяется только к сетям IPv6, если оставить его - * пустым, то он будет прослушивать широковещательные передачи IPv4. - * @param int $port Порт, на который транслируются сообщения, в случае сетей AGK это будет порт 45631. - * @return int - */ - function CreateBroadcastListener($szIP, $port) - { - } - - /** - * Широковещательные передачи являются специальными сетевыми коммуникациями, поскольку они не используют адрес - * назначения и вместо этого принимаются всеми устройствами в сети. Широковещательные пакеты не пересылаются - * маршрутизаторами, поэтому могут использоваться только в локальной сети или, точнее, в локальной подсети. Это - * может быть полезно для обнаружения устройств, поскольку одно устройство может отправить широковещательный пакет, - * содержащий его IP-адрес, а другое устройство может принять его, прочитать IP-адрес и подключиться обратно к - * первому устройству, чтобы создать двустороннее соединение. Сети AGK транслируются таким образом на порт 45631 и - * отправляют пакет, содержащий имя сети, которая была размещена другим устройством AGK. С помощью - * широковещательного прослушивателя вы можете получать эти сообщения, извлекать имена сетей и отображать их - * пользователю, чтобы он мог выбрать, к какой сети он хочет подключиться. Если устройство находится в сети IPv6, - * то эти правила немного меняются. CreateBroadcastListener должен быть вызван с многоадресным адресом, который - * начинается с ff, например ff02::1, и широковещательный прослушиватель будет принимать только пакеты, - * отправленные на этот многоадресный адрес. Если адрес не указан, то вещатель будет получать только - * широковещательные передачи IPv4. Если вы передадите адрес "anyip6", то широковещательный прослушиватель будет - * прослушивать многоадресный адрес AGK "FF02::41:474B", который используется для обнаружения именованной сети на - * порту 45631. Возвращает идентификатор, который можно использовать для взаимодействия с этим широковещательным - * слушателем. + * int CreateBroadcastListener($szIP, $port); * + * int CreateBroadcastListener($port); + * @param string $szIP Многоадресный IP-адрес для прослушивания применяется только к сетям IPv6, если оставить его + * пустым, то он будет прослушивать широковещательные передачи IPv4. * @param int $port Порт, на который транслируются сообщения, в случае сетей AGK это будет порт 45631. * @return int */ - function CreateBroadcastListener($port) + function CreateBroadcastListener(mixed...$args): int { } @@ -25150,33 +24898,16 @@ function CreateAdvertEx($type, $horz, $vert, $test, $offsetx, $offsety) * способность графического процессора, поэтому не рекомендуется вызывать эту команду каждый кадр на больших * изображениях. * - * @param int $imageID Идентификатор создаваемого или изменяемого изображения. - * @param int $memID Идентификатор считываемого memblock, memblock не зависит от этой команды. - * @return void - */ - function CreateImageFromMemblock($imageID, $memID) - { - } - - /** - * Создает изображение из memblock. Мемблок должен существовать, если образ существует, он будет перезаписан, если - * нет, то будет создан. Первые 4 байта memlbock хранят ширину изображения, следующие 4 байта хранят высоту - * изображения, следующие 4 байта хранят битовую глубину, в настоящее время это должно быть 32. После этого - * необработанные данные изображения начинаются в формате RGBA, причем каждый компонент хранится в одном байте, - * поэтому каждый пиксель занимает 4 байта. Размер данных изображения может быть вычислен по ширине*высоте*4 байта - * (на данный момент битовая глубина может быть принята равной 32 битам = 4 байтам). Обратите внимание, что из-за - * малого формата endian запись данных изображения байтами приведет к смещениям 0=R, 1=G, 2=B, 3=A, но запись их - * всех в виде одного целого числа будет интерпретироваться как значение с A как наиболее значимым байтом, за - * которым следует B, затем G, затем R как наименее значимый байт. Пиксельные данные начинаются в верхнем левом - * углу изображения и продолжаются слева направо, а затем сверху вниз, в результате чего изображение сохраняется в - * виде последовательности строк, заканчивающихся в правом нижнем углу. Эта команда использует большую пропускную - * способность графического процессора, поэтому не рекомендуется вызывать эту команду каждый кадр на больших - * изображениях. + * Пример вызова: * + * void CreateImageFromMemblock($imageID, $memID); + * + * int CreateImageFromMemblock($memID); + * @param int $imageID Идентификатор создаваемого или изменяемого изображения. * @param int $memID Идентификатор считываемого memblock, memblock не зависит от этой команды. - * @return int + * @return mixed */ - function CreateImageFromMemblock($memID) + function CreateImageFromMemblock(int...$args):mixed { } @@ -25214,30 +24945,10 @@ function CreateAdvert($type, $horz, $vert, $test) * будет равен 1,8288 метра (или 6 футов). Затем разделите высоту персонажа в единицах на высоту символов в метрах, * для этого примера масштабный коэффициент будет равен (72 / 1.8) = 40. * - * @param float $scaleFactor Масштабный коэффициент по умолчанию равен 40. - * @return void - */ - function Create3DPhysicsWorld($scaleFactor) - { - } - - /** - * Вы должны создать физический мир, прежде чем вызывать какие-либо другие физические команды. Create3DPhysicsWorld - * Создает физический мир, используя масштабный коэффициент по умолчанию 40. Эта функция создаст физический мир с - * другим масштабным коэффициентом. Масштаб-это не размер мира, это фактор, с помощью которого все передаваемые - * данные уменьшаются, чтобы преобразовать их в шкалу физики Пули для физических вычислений. Затем данные из Bullet - * масштабируются до того, как они будут переданы в AGK 3D world. Масштабный коэффициент по умолчанию будет - * правильным, если ваш средний размер символа составляет 72 единицы AGK. Тогда гравитация по умолчанию -10,0 метра - * в секунду на оси Y даст правильный визуальный результат. Решатель физики пуль имеет минимальный размер для - * объектов. Объекты ниже этого размера вызовут нестабильность в работе решателя. При масштабном коэффициенте по - * умолчанию 40 наименьший размер, который может обрабатывать решатель, составляет около 3,5 единиц AGK. Чтобы - * вычислить масштабный коэффициент, сначала определите рост вашего персонажа в метрах, символ высотой 72 единицы - * будет равен 1,8288 метра (или 6 футов). Затем разделите высоту персонажа в единицах на высоту символов в метрах, - * для этого примера масштабный коэффициент будет равен (72 / 1.8) = 40. - * + * @param float|null $scaleFactor Масштабный коэффициент по умолчанию равен 40. * @return void */ - function Create3DPhysicsWorld() + function Create3DPhysicsWorld(float $scaleFactor = null) { } @@ -25250,7 +24961,7 @@ function Create3DPhysicsWorld() * @param float $offsetPosition Насколько самолет будет смещен от своего мирового положения. * @return int */ - function Create3DPhysicsStaticPlane($normalX, $normalY, $normalZ, $offsetPosition) + function Create3DPhysicsStaticPlane(float $normalX, float $normalY, float $normalZ, float $offsetPosition) { } @@ -25273,30 +24984,18 @@ function Create3DPhysicsStaticBody($objID) * какой-либо из спрайтов, которые оно соединяет, будет удален. Это соединение должно быть удалено до того, как * будут удалены все соединения, от которых оно зависит. * - * @param int $iJoint1 Идентификатор первого соединения, к которому нужно присоединиться. - * @param int $iJoint2 Идентификатор второго соединения для соединения. - * @param float $ratio Передаточное число, используемое при перемещении одного шарнира от другого. - * @return int - */ - function CreateGearJoint($iJoint1, $iJoint2, $ratio) - { - } - - /** - * Создает зубчатое соединение между двумя существующими соединениями. Зубчатое соединение позволяет внешнему виду - * двух существующих соединений быть зафиксированными вместе в идеальном трении. Спрайты, которые будут соединены, - * будут спрайтом 2 на обоих суставах, спрайт 1 на обоих суставах должен быть статическим спрайтом. Идентификатор - * соединения будет возвращен для ссылки на это соединение позже, соединение может быть удалено системой, если - * какой-либо из спрайтов, которые оно соединяет, будет удален. Это соединение должно быть удалено до того, как - * будут удалены все соединения, от которых оно зависит. + * Пример вызова: * + * int CreateGearJoint($iJoint1, $iJoint2, $ratio); + * + * void CreateGearJoint($iJointIndex, $iJoint1, $iJoint2, $ratio); * @param int $iJointIndex Идентификационный номер зубчатого соединения. * @param int $iJoint1 Идентификатор первого соединения, к которому нужно присоединиться. * @param int $iJoint2 Идентификатор второго соединения для соединения. * @param float $ratio Передаточное число, используемое при перемещении одного шарнира от другого. - * @return void + * @return mixed */ - function CreateGearJoint($iJointIndex, $iJoint1, $iJoint2, $ratio) + function CreateGearJoint(mixed...$args) : mixed { } @@ -25462,30 +25161,18 @@ function Create3DPhysics6DOFJoint($objA, $objB, $positionVec3, $rotationVec3) * по отдельности и вести себя как группа, используя одну и ту же текстуру. Это позволяет AGK рисовать их более * эффективно, чем аналогичное количество обычных объектов. * - * @param float $x Координата x для позиционирования этого излучателя. - * @param float $y Координата y для позиционирования этого излучателя. - * @param float $z Координата z для позиционирования этого излучателя. - * @return int - */ - function Create3DParticles($x, $y, $z) - { - } - - /** - * Создает излучатель частиц с заданным идентификатором и заданным местоположением в мировых координатах. - * Излучатели частиц создают поток маленьких спрайтов, которые длятся фиксированное количество времени, прежде чем - * исчезнуть. Частицы могут подвергаться воздействию сил в течение своей жизни с помощью Add3DParticlesForce. Они - * также могут менять цвет с течением времени с помощью Add3DParticleColorKeyFrame. Частицы не могут быть изменены - * по отдельности и вести себя как группа, используя одну и ту же текстуру. Это позволяет AGK рисовать их более - * эффективно, чем аналогичное количество обычных объектов. + * Пример вызова: + * + * int Create3DParticles($x, $y, $z); * + * void Create3DParticles($ID, $x, $y, $z); * @param int $ID Идентификатор, используемый при ссылке на этот 3D-излучатель частиц. * @param float $x Координата x для позиционирования этого излучателя. * @param float $y Координата y для позиционирования этого излучателя. * @param float $z Координата z для позиционирования этого излучателя. - * @return void + * @return mixed */ - function Create3DParticles($ID, $x, $y, $z) + function Create3DParticles(mixed...$args) : mixed { } @@ -25555,35 +25242,24 @@ function Cos($a) * идентификатором, его необходимо удалить перед вызовом этой команды. Это медленная команда, и ее не следует * вызывать каждый кадр. * + * Пример вызова: + * + * void CopyImage($newImage, $fromImage, $x, $y, $width, $height); + * + * int CopyImage($fromImage, $x, $y, $width, $height); + * * @param int $newImage Идентификатор создаваемого нового образа, этот образ не должен существовать * @param int $fromImage Идентификатор изображения для копирования * @param int $x Координата x верхнего левого угла поля для копирования * @param int $y Координата y верхнего левого угла поля для копирования * @param int $width Ширина коробки для копирования * @param int $height Высота коробки для копирования - * @return void + * @return mixed */ - function CopyImage($newImage, $fromImage, $x, $y, $width, $height) + function CopyImage(int...$args) : mixed { } - /** - * Копирует часть данного изображения в новое изображение. Значения x, y, width, height выражены в пикселях и - * представляют собой часть изображения, которую вы хотите скопировать в новое изображение. Новое изображение будет - * иметь тот же размер, что и заданные значения ширины и высоты. Если изображение уже существует с заданным новым - * идентификатором, его необходимо удалить перед вызовом этой команды. Это медленная команда, и ее не следует - * вызывать каждый кадр. - * - * @param int $fromImage Идентификатор изображения для копирования - * @param int $x Координата x верхнего левого угла поля для копирования - * @param int $y Координата y верхнего левого угла поля для копирования - * @param int $width Ширина коробки для копирования - * @param int $height Высота коробки для копирования - * @return int - */ - function CopyImage($fromImage, $x, $y, $width, $height) - { - } /** * Создает сетевое сообщение, которое является копией существующего сообщения. Он возвращает идентификатор, который @@ -25623,32 +25299,19 @@ function CopyMemblock($memSrcID, $memDstID, $srcOffset, $dstOffset, $size) * которому вы подключаетесь. Это работает немного по-другому при экспорте в HTML5, он использует WebSocket, * который отправляет заголовок стиля HTTP и требует ответа стиля HTTP для подключения. * - * @param int $socketID Идентификатор, который будет использоваться для ссылки на этот сокет позже - * @param string $szIP IP-адрес для подключения, это может быть IPv4 или IPv6 - * @param int $port TCP-порт для подключения в диапазоне от 1025 до 65535 - * @param int $timeout Время в миллисекундах ожидания перед прерыванием попытки подключения - * @return int - */ - function ConnectSocket($socketID, $szIP, $port, $timeout) - { - } - - /** - * Создает сокет и пытается подключиться к указанному IP-адресу. Это создаст TCP-соединение, которое затем можно - * будет использовать для отправки и получения данных. Эта команда немедленно вернется и подключится в фоновом - * режиме, вы должны использовать GetSocketConnected, чтобы проверить, успешно ли подключается сокет или нет. Вы - * должны указать значение тайм-аута, достаточное для подключения сокета, обычно 3000 миллисекунд-это хорошее - * значение, но для соединений с высокой задержкой может потребоваться больше времени. Если время ожидания - * соединения истекло, то эта команда вернет 0. Номер порта должен совпадать с портом прослушивания устройства, к - * которому вы подключаетесь. Это работает немного по-другому при экспорте в HTML5, он использует WebSocket, - * который отправляет заголовок стиля HTTP и требует ответа стиля HTTP для подключения. + * Пример вызова: + * + * int ConnectSocket($socketID, $szIP, $port, $timeout); + * + * int ConnectSocket($szIP, $port, $timeout); * + * @param int $socketID Идентификатор, который будет использоваться для ссылки на этот сокет позже * @param string $szIP IP-адрес для подключения, это может быть IPv4 или IPv6 * @param int $port TCP-порт для подключения в диапазоне от 1025 до 65535 * @param int $timeout Время в миллисекундах ожидания перед прерыванием попытки подключения * @return int */ - function ConnectSocket($szIP, $port, $timeout) + function ConnectSocket(mixed...$args): int { } @@ -25667,20 +25330,6 @@ function CompleteRawJoystickDetection() { } - /** - * Возвращает 1, если две строки равны друг другу, в противном случае возвращает 0. По умолчанию этот параметр не - * чувствителен к регистру, используйте параметр IgnoreCase для установки чувствительности к регистру. Используйте - * параметр maxChars, чтобы указать максимальное количество символов для проверки, если строки совпадают после - * того, как было проверено много символов, то они считаются равными. Используйте значение -1 для проверки всех - * символов независимо от длины. - * - * @param string $str Первая строка для проверки - * @param string $str2 Вторая строка для проверки - * @return int - */ - function CompareString($str, $str2) - { - } /** * Возвращает 1, если две строки равны друг другу, в противном случае возвращает 0. По умолчанию этот параметр не @@ -25691,11 +25340,11 @@ function CompareString($str, $str2) * * @param string $str Первая строка для проверки * @param string $str2 Вторая строка для проверки - * @param int $ignoreCase 1-игнорировать регистр при сравнении, 0 - * @param int $maxChars Количество символов для проверки, минус 1 для всех + * @param null $ignoreCase 1-игнорировать регистр при сравнении, 0 + * @param null $maxChars Количество символов для проверки, минус 1 для всех * @return int */ - function CompareString($str, $str2, $ignoreCase, $maxChars) + function CompareString(string $str, string $str2, $ignoreCase = null, $maxChars = null) : int { } @@ -25760,48 +25409,37 @@ function CloseFile($iFileID) * оригинал. Любые физические значения или формы, присвоенные спрайту, не будут скопированы. Новый спрайт не будет * настроен на физику. * + * Пример вызова: + * + * int CloneSprite($iOtherSprite); - вернет ID клона спрайта. + * + * void CloneSprite($iSpriteIndex, $iOtherSprite); - задаем ID клона спрайта. + * * @param int $iSpriteIndex Идентификатор, который будет использоваться для нового спрайта. * @param int $iOtherSprite Идентификатор спрайта для копирования. - * @return void + * @return mixed */ - function CloneSprite($iSpriteIndex, $iOtherSprite) + function CloneSprite(int...$SpriteId) : mixed { } - /** - * Клонирует спрайт в заданный идентификатор спрайта. Новый спрайт будет находиться точно в том же положении, что и - * оригинал. Любые физические значения или формы, присвоенные спрайту, не будут скопированы. Новый спрайт не будет - * настроен на физику. - * - * @param int $iOtherSprite Идентификатор спрайта для копирования. - * @return int - */ - function CloneSprite($iOtherSprite) - { - } /** * Копирует объект в новый идентификатор, новый объект полностью отделен от исходного объекта. Клонирование * экземпляра объекта приведет к созданию другого экземпляра, который совместно использует данные вершин с исходным * объектом. * - * @param int $newobjID Идентификатор нового объекта. - * @param int $objID Идентификатор объекта для копирования. - * @return void - */ - function CloneObject($newobjID, $objID) - { - } - - /** - * Копирует объект в новый идентификатор, новый объект полностью отделен от исходного объекта. Клонирование - * экземпляра объекта приведет к созданию другого экземпляра, который совместно использует данные вершин с исходным - * объектом. + * Пример вызова: * - * @param int $objID Идентификатор объекта для копирования. - * @return int + * int CloneObject($objID); - вернет ID нового глона. + * + * void CloneObject($objID, $objID); - задаем ID нового клона. + * + * + * @param int ...$objID Идентификатор нового объекта либо идентификатор объекта для копирования. + * @return mixed */ - function CloneObject($objID) + function CloneObject(int ...$objID) : mixed { } @@ -25823,7 +25461,7 @@ function ClearURLSchemeText() * @param int $chainID Идентификатор цепочки твинов для очистки * @return void */ - function ClearTweenChain($chainID) + function ClearTweenChain(int $chainID) { } @@ -25833,7 +25471,7 @@ function ClearTweenChain($chainID) * @param int $iSpriteIndex Идентификатор спрайта для изменения. * @return void */ - function ClearSpriteShapes($iSpriteIndex) + function ClearSpriteShapes(int $iSpriteIndex) { } @@ -25845,7 +25483,7 @@ function ClearSpriteShapes($iSpriteIndex) * @param int $iSpriteIndex Идентификатор спрайта нужно очистить. * @return void */ - function ClearSpriteAnimationFrames($iSpriteIndex) + function ClearSpriteAnimationFrames(int $iSpriteIndex) { } @@ -25856,7 +25494,7 @@ function ClearSpriteAnimationFrames($iSpriteIndex) * @param int $ID Идентификатор излучателя для изменения. * @return void */ - function ClearParticlesScales($ID) + function ClearParticlesScales(int $ID) { } @@ -25866,7 +25504,7 @@ function ClearParticlesScales($ID) * @param int $ID Идентификатор излучателя для изменения. * @return void */ - function ClearParticlesForces($ID) + function ClearParticlesForces(int $ID) { } @@ -25877,7 +25515,7 @@ function ClearParticlesForces($ID) * @param int $ID Идентификатор излучателя для изменения. * @return void */ - function ClearParticlesColors($ID) + function ClearParticlesColors(int $ID) { } @@ -25887,7 +25525,7 @@ function ClearParticlesColors($ID) * @param int $ID Идентификатор излучателя для изменения. * @return void */ - function Clear3DParticlesForces($ID) + function Clear3DParticlesForces(int $ID) { } @@ -25898,7 +25536,7 @@ function Clear3DParticlesForces($ID) * @param int $ID Идентификатор излучателя для изменения. * @return void */ - function Clear3DParticlesScales($ID) + function Clear3DParticlesScales(int $ID) { }