Scripting Functions (a player.inc)
From SA-MP Wiki
[edit]
AllowPlayerTeleport
Включает/выключает возможность игроку телепортироваться в любую точку мира отметкой на карте.
Parameters:({{{1}}})
| playerid | ID игрока. |
| allow | 1 - включить, 0 - выключить. |
AllowPlayerTeleport(playerid,1);
[edit]
DisablePlayerCheckpoint
Отключить инициализированнные контрольные точки для игрока, в одно и тоже время игрок может иметь только одну контрольную точку.
Parameters:({{{1}}})
| playerid | ID игрока, для которого отключить текущую конотрольную точку. |
DisablePlayerCheckpoint(playerid);
[edit]
DisablePlayerRaceCheckpoint
Отключить гоночный чекпойнт для игрока.
Parameters:({{{1}}})
| playerid | ID игрока, для которого отключить текущую конотрольную точку. |
DisablePlayerRaceCheckpoint(playerid);
[edit]
GetPlayerAmmo
Узнает, сколько патронов оружия, которое игрок сейчас держит в руках.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | Количество патронов. |
new ammo = GetPlayerAmmo(playerid);
[edit]
GetPlayerArmour
Узнает количество брони игрока и записывает его в переменнную armour.
Parameters:({{{1}}})
| playerid | ID игрока. |
| &Float:armour | Переменная, в которую нужно записать количество брони. |
GetPlayerArmour(playerid, armour);
[edit]
GetPlayerColor
Эта функция возвращает текущий цвет игрока.
Parameters:({{{1}}})
| playerid | ID игрока, цвет которого вы хотите знать. |
| Возвращает | Цвет игрока в виде целого числа. |
new playerColor = GetPlayerColor(playerid);
[edit]
GetPlayerFacingAngle
Получает угол поворота текущего вида игрока. Это удобно, например, когда вы создаете систему наблюдения за игроком.
Parameters:({{{1}}})
| playerid | ID игрока, угол которого вы хотите знать. |
| &Float:ang | Переданная по ссылке переменная, в которую записывается угол. |
GetPlayerFacingAngle(playerid, angle);
[edit]
GetPlayerHealth
Получает текущее здоровье игрока. Это может прекрасно использоваться, например, для обнаружения читов.
Parameters:({{{1}}})
| playerid | ID игрока, здоровье которого вы хотите знать. |
| &Float:health | Переданная по ссылке переменная, в которую записывается здоровье игрока. |
GetPlayerHealth(playerid, health);
[edit]
GetPlayerInterior
Узнает ID интериора, в котором находится игрок.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | ID интериора, в котором находится игрок. |
new interior = GetPlayerInterior(playerid);
[edit]
GetPlayerIp
Узнает IP-адрес игрока и записывает его в строку.
Parameters:({{{1}}})
| playerid | ID игрока. |
| name[] | Строка, в которую необходимо записать IP игрока. |
| len | Длина этой строки. |
GetPlayerIp(playerid, playerip, sizeof(playerip));
[edit]
GetPlayerMoney
Получает количество денег, которыми обладает игрок на данный момент. Эта функция может использоваться для обнаружения читов, покупок вещей и т.д.
Parameters:({{{1}}})
| playerid | ID игрока, количество денег которого вы хотите знать. |
| Возвращает | Количество денег, которыми обладает игрок на данный момент. |
new playerMoney = GetPlayerMoney(playerid);
[edit]
GetPlayerName
Получает имя игрока и сохраняет его в многоячеистой переменной, которую вы передаете в качестве второго аргумента.
Parameters:({{{1}}})
| playerid | ID игрока. |
| const name[] | Переданная по ссылке переменная, в которую записывается имя. |
| len | Число ячеек, которое будет присвоено переменной. |
GetPlayerName(playerid, playername, MAX_PLAYER_NAME);
[edit]
GetPlayerPing
Узнает пинг игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | Пинг игрока. |
new ping = GetPlayerPing(playerid);
[edit]
GetPlayerPos
Получает текущую позицию игрока и сохранить ее в переменных, указанный в трех последующих аргументах.
Parameters:({{{1}}})
| playerid | ID игрока. |
| &Float:x | Переданная по ссылке переменная, в которую записывается x-координата. |
| &Float:y | Переданная по ссылке переменная, в которую записывается y-координата. |
| &Float:z | Переданная по ссылке переменная, в которую записывается z-координата. |
GetPlayerPos(playerid, x, y, z);
[edit]
GetPlayerScore
Получает счет (число очков), которые имеются у игрока на данным момент, которые могут быть заданы функцией SetPlayerScore().
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | Текущий счет игрока. |
new playerScore = GetPlayerScore(playerid);
[edit]
GetPlayerSkin
Узнает, ID скина, который сейчас использует игрок.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | ID скина. |
new playerskin = GetPlayerSkin(playerid);
[edit]
GetPlayerState
Получает текущее состояние игрока, для проверки, управляет ли он транспортом, или идет пешком, или все еще помещается в стартовую позицию, и т.д.
Parameters:({{{1}}})
| playerid | ID игрока, состояние которого выясняется. |
| Возвращает | Текущее состояние игрока. |
new playerState = GetPlayerState(playerid);
[edit]
GetPlayerTeam
Получает ID команды, в которой состоит игрок на данный момент. Используется, например, для балансирования команд.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | Текущая команда игрока. |
new playerTeam = GetPlayerTeam(playerid);
[edit]
GetPlayerTime
Узнает игровое время игрока (в правом верхнем углу экрана).
Parameters:({{{1}}})
| playerid | ID игрока. |
| &hour | Записывается время (часы). |
| &minute | Записывается время (минуты). |
GetPlayerTime(playerid, hr, min);
[edit]
GetPlayerVehicleID
Получает ID транспорта, которым управляет игрок в данный момент. Она не возвращает ID модели транспорта.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | ID транспорта, которым управляет игрок в данный момент. |
new playerVehicle = GetPlayerVehicleID(playerid);
[edit]
GetPlayerVirtualWorld
Узнает ID виртуального мира, в котором находится игрок с данным ID.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | ID мира, в котором находится игрок. |
[edit]
GetPlayerWantedLevel
Узнает уровень разыскиваемости игрока (звездочки на экране).
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | Уровень розыска (кол-во звезд). |
new level = GetPlayerWantedLevel(playerid);
[edit]
GetPlayerWeapon
Узнает ID оружия, которое игрок сейчас держит в руках.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | ID оружия. |
new weapon = GetPlayerWeapon(playerid);
[edit]
GetPlayerWeaponData
Узнает информацию об оружие и количестве патронов в конкретном слоте игрока брони игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| slot | Слот оружия, информацию о котором нужно получить (0-12). |
| &weapons | Переменная, в которую нужно записать ID оружия в данном слоте. |
| &ammo | Переменная, в которую нужно записать количество патронов в данном слоте. |
GetPlayerWeaponData(playerid, 7, weapons, ammo);
[edit]
GivePlayerMoney
Эта функция позволяет Вам либо дать, либо отнять у игрока деньги. Если игроку дать отрицательное число денег, то количество его денег уменьшиться.
Parameters:({{{1}}})
| playerid | ID игрока. |
| money | Число денег, которые вы хотите дать/отнять. |
GivePlayerMoney(playerid, 10000);
[edit]
GivePlayerWeapon
Дает игроку указанное оружие, вы можете указать, какое оружие и сколько аммуниции должен получить игрок.
Parameters:({{{1}}})
| playerid | ID игрока. |
| weaponid | ID оружия, даваемого игроку. |
| ammo | Количестов аммуниции, даваемое игроку вместе с оружием. |
GivePlayerWeapon(playerid, 26, 250);
[edit]
IsPlayerAdmin
Определяет, вошел ли игрок с rcon-функциями.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | 1, если игрок - админ, 0,если нет. |
if(IsPlayerAdmin(playerid)){
[edit]
IsPlayerConnected
Эта функция может быть использована для проверки, подключен ли игрок к серверу.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | 1, если он подключен, 0, если нет. |
if(IsPlayerConnected(playerid)){
[edit]
IsPlayerInAnyVehicle
Эта функция может быть использована для проверки, находится ли игрок в каком-либо транспорте в данный момент.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | 1, если игрок находится в транспорте, 0, если нет. |
if(IsPlayerInAnyVehicle(playerid)){
[edit]
IsPlayerInCheckpoint
Проверяет, находится ли игрок внутри контрольной точки в данный момент. Функция может быть использована для свойств, точек телепортации или гонок, например.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | 1, если игрок внутри контрольной точки, 0, если нет. |
if(IsPlayerInCheckpoint(playerid)){
[edit]
IsPlayerInRaceCheckpoint
Проверяет, находится ли игрок в гоночном чекпойнте в данный момент.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Возвращает | 1, если игрок в гоночном чекпойнте, 0, если нет. |
if(IsPlayerInRaceCheckpoint(playerid)){
[edit]
IsPlayerInVehicle
Проверяет, находится ли игрок в указанном транспорте в данный момент. Запомните, вы должны использовать ID транспорта, а не ID модели транспорта!
Parameters:({{{1}}})
| playerid | ID игрока. |
| vehicleid | ID транспорта. |
| Возвращает | 1, если игрок в этом транспорте, 0, если нет. |
if(IsPlayerInVehicle(playerid, 32)){
[edit]
PlayerPlaySound
Эта функция воспроизводит звук для игрока. Звуки могут быть добавлены для некоторых замечательных эффектов, но доступно лишь несколько звуков, потому тчо вы не можете загрузить никакие экстра-звуки.
Важное замечание: x/y/z-координаты, видимо, не оказывают большого влияния на звук.
Parameters:({{{1}}})
| playerid | ID игрока. |
| soundid | ID звука. |
| Float:x | X-координата места, где надо проиграть звук. |
| Float:y | Y-координата места, где надо проиграть звук. |
| Float:z | Z-координата места, где надо проиграть звук. |
PlayerPlaySound(playerid, 1025, 0.0, 0.0, 0.0);
[edit]
PutPlayerInVehicle
Вы можете использовать эту функцию, чтобы поместить игрока в указанный транспорт. Вы можете указать помимо ID транспорта еще и ID сиденья, которые предоставляют вам много настроек.
({{{1}}})
| playerid | ID игрока. |
| vehicleid | ID транспорта. |
| seatid | ID сиденья. |
PutPlayerInVehicle(playerid, 0, 1);
[edit]
RemovePlayerFromVehicle
Эта функция вытаскивает игрока из транспорта. Запомните, что вызываемая функция OnPlayerExitVehicle не сработает!
Parameters:({{{1}}})
| playerid | ID игрока. |
RemovePlayerFromVehicle(playerid);
[edit]
RemovePlayerMapIcon
Удаляет иконку на карте игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| playerid | ID иконки. |
[edit]
ResetPlayerMoney
Сбрасывает деньги, которые имеются у игрока. Это может быть использовано при создании команды SetPlayerMoney.
Parameters:({{{1}}})
| playerid | ID игрока. |
ResetPlayerMoney(playerid);
[edit]
ResetPlayerWeapons
Сбрасывает все оружие, которое носит игрок в данный момент. Применима, например, если кто-то убивает своего напарника по команде, то все его оружие заменяется цветочками.
Parameters:({{{1}}})
| playerid | ID игрока. |
ResetPlayerWeapons(playerid);
[edit]
SetCameraBehindPlayer
Восстановить камеру на место позади игрока после использования функций, подобных SetPlayerCameraPos.
Важное замечание: Эта функция работает только тогда, когда игрок еще не поместился в стартовую позицию. Используется в OnPlayerSpawn, например.
Parameters:({{{1}}})
| playerid | ID игрока. |
SetCameraBehindPlayer(playerid);
[edit]
SetPlayerAmmo
Установить для игрока количество патронов в данном слоте.
Parameters:({{{1}}})
| playerid | ID игрока. |
| weaponslot | Номер слота. |
| ammo | Количество оружия. |
SetPlayerAmmo(playerid, 8, 150);
[edit]
SetPlayerArmour
Устанавливает количество брони для игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:armour | Количество брони. |
SetPlayerArmour(playerid, 100.0);
[edit]
SetPlayerCameraLookAt
Устанавливает направление и место, куда будет смотреть камера игрока. Вам следует использовать ее в комбинации с SetPlayerCameraPos.
Важное замечание: Вам придется использовать функцию SetCameraBehindPlayer для восстановления камеры игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:x | X-координата, куда будет смотреть камера. |
| Float:y | Y-координата, куда будет смотреть камера. |
| Float:z | Z-координата, куда будет смотреть камера. |
SetPlayerCameraLookAt(playerid, 324.34, 54.122. -173.35);
[edit]
SetPlayerCameraPos
Устанавливает новую позицию камеры игрока.
Важное замечание: Вам придется использовать функцию SetCameraBehindPlayer для восстановления камеры игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:x | Новая x-координата камеры. |
| Float:y | Новая y-координата камеры. |
| Float:z | Новая z-координата камеры. |
SetPlayerCameraPos(playerid, 652.23, 457.21, 10.84);
[edit]
SetPlayerCheckpoint
Установить текущую контрольную точку для игрока. В один и тот же момоент времени вы можете использовать только одну контрольную точку, вам следует использовать DisablePlayerCheckpoint, чтобы сначала уничтожить предыдущую.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:x | X-координата для новой контрольной точки. |
| Float:y | Y-координата для новой контрольной точки. |
| Float:z | Z-координата для новой контрольной точки. |
| Float:size | Размер контрольной точки. |
SetPlayerCheckpoint(playerid, 354.12, 932.12, 19.34, 2.0);
[edit]
SetPlayerColor
Эта функция позволяет Вам изменить текущий цвет игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| color | Новый цвет игрока, целое число. |
SetPlayerColor(playerid, 0xFFFF00AA);
SetPlayerColor(playerid, 4294901930);
[edit]
SetPlayerFacingAngle
Устанавливает текущий угол поворота игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:ang | Новый угол поворота игрока. |
SetPlayerFacingAngle(playerid, 90.0);
[edit]
SetPlayerHealth
Изменяет текущее здоровье игрока. Параметр health указывается в процентах, так 100 означает, что полоса здоровья полная.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:health | Новое здоровье, вещественное число. |
SetPlayerHealth(playerid, 95.0);
[edit]
SetPlayerInterior
Изменяет текущее местоположение игрока. Список всех известных на данный момент мест и их позиции можно найти на этой странице.
Parameters:({{{1}}})
| playerid | ID игрока. |
| interiorid | ID нового места (или Universe ID) игрока. |
SetPlayerInterior(playerid, 0);
[edit]
SetPlayerMapIcon
Устанавливает для игрока иконку на радаре и карте.
Parameters:({{{1}}})
| playerid | ID игрока. |
| iconid | ID для данной иконки. |
| Float:x | X-координата для положения иконки. |
| Float:y | Y-координата для положения иконки. |
| Float:z | Z-координата для положения иконки. |
| markertype | Тип (модель) иконки. |
| color | Цвет иконки. |
[edit]
SetPlayerMarkerForPlayer
Установить отображение маркера игрока на карте для другого игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| showplayerid | ID игрока, которому нужно показать маркер. |
| color | Цвет маркера. |
SetPlayerMarkerForPlayer(playerid, 0, COLOR_GREEN);
[edit]
SetPlayerName
Меняет имя игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| const name[] | Новое имя игрока. |
SetPlayerName(playerid, "[NoTeam]Player");
[edit]
SetPlayerPos
Изменяет позицию игрока на другую позицию на карте.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:x | X-координата для новой позиции игрока. |
| Float:y | Y-координата для новой позиции игрока. |
| Float:z | Z-координата для новой позиции игрока. |
SetPlayerPos(playerid, 34.236, 934.323, 12.345);
[edit]
SetPlayerRaceCheckpoint
Устанавливает гоночный чекпойнт для игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| type | Тип гоночного чекпойнта:
|
| Float:x | X-координата для чекпойнта. |
| Float:y | Y-координата для чекпойнта. |
| Float:z | Z-координата для чекпойнта. |
| Float:nextx | X-координата точки, на которую будет "смотреть" стрелка чекпойнта. |
| Float:nexty | Y-координата точки, на которую будет "смотреть" стрелка чекпойнта. |
| Float:nextz | Z-координата точки, на которую будет "смотреть" стрелка чекпойнта. |
| Float:size | Размер контрольной точки. |
SetPlayerCheckpoint(playerid, 354.12, 932.12, 19.34, 368.4, 898.2, 19.5, 2.0);
[edit]
SetPlayerScore
Обновляет счет игрока до другого значения.
Parameters:({{{1}}})
| playerid | ID игрока. |
| score | Новый счет игрока. |
SetPlayerScore(playerid, 10000);
[edit]
SetPlayerSkin
Изменяет скин игрока. Вам следует проверить в General Referance на форумах, может ли использоваться скин, так как некоторые скины могут привести к вылету игры.
Важное замечание: Этот игрок может привести к вылету Вашей игры!
Parameters:({{{1}}})
| playerid | ID игрока. |
| skinid | ID нового скина для игрока. |
SetPlayerSkin(playerid, 121);
[edit]
SetPlayerTeam
Используйте эту функцию для изменения команды игрока. Игроки одной команды не смогут навредить друг другу.
Parameters:({{{1}}})
| playerid | ID игрока. |
| teamid | ID команды, членом которой станет игрок. |
SetPlayerTeam(playerid, TEAM_BALLAS);
[edit]
SetPlayerTime
Устанавливает игровое время для игрока (в правом верхнем углу экрана).
Parameters:({{{1}}})
| playerid | ID игрока. |
| hour | Время (часы). |
| minute | Время (минуты). |
SetPlayerTime(playerid, 18, 30);
[edit]
SetPlayerVirtualWorld
Перемещает игрока в виртуальный мир с данным ID.
Parameters:({{{1}}})
| playerid | ID игрока. |
| playerid | ID мира, в который нужно переместить игрока. |
SetPlayerVirtualWorld(playerid,1);
[edit]
SetPlayerWantedLevel
Устанавливает уровень разыскиваемости игрока (звездочки на экране).
Parameters:({{{1}}})
| playerid | ID игрока. |
| level | Уровень розыска (кол-во звезд). |
SetPlayerWantedLevel(playerid, 6);
[edit]
SetPlayerWeather
Установить погоду для отдельного игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| weather | ID погоды. |
SetPlayerWeather(playerid, 14);
[edit]
SetPlayerWorldBounds
Эта функция может быть использована для изменения границ для игрока в игровом мире, мест, до куда он может добраться.
Parameters:({{{1}}})
| playerid | ID игрока. |
| Float:x_max | Макс. x-координата того, куда игрок может попасть. |
| Float:x_min | Мин. x-координата того, куда игрок может попасть. |
| Float:y_max | Макс. y-координата того, куда игрок может попасть. |
| Float:y_min | Мин. y-координата того, куда игрок может попасть. |
SetPlayerWorldBounds(playerid, 20.0, 0.0, 20.0, 0.0);
[edit]
ShowPlayerNameTagForPlayer
Позволяет включить/выключить отображение имени игрока для другого игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| showplayerid | ID игрока, которому нужно показать имя. |
| show | 1 - показывать, 0 - не показывать. |
SetPlayerWeather(playerid, 0, 1);
[edit]
SpawnPlayer
Эта функция может быть использована, чтобы переразместить игрока в стартовой позиции, хорошо подходит, например, после установки различных позиций камеры.
Parameters:({{{1}}})
| playerid | ID игрока. |
SpawnPlayer(playerid);
[edit]
TogglePlayerControllable
Эта функция позволяет Вам включать/выключать разрешение двигаться для игрока. Используется для замораживания игроков, которых Вы подозреваете в читерстве, например.
Parameters:({{{1}}})
| playerid | ID игрока. |
| moveable | true - игрок сможет двигаться, false - не сможет. |
TogglePlayerControllable(playerid, 0);
[edit]
SetPlayerPosFindZ
Parameters:({{{1}}})
[edit]
GetPlayerKeys
Узнает состояние кнопок у игрока.
Parameters:({{{1}}})
[edit]
TogglePlayerClock
Позволяет включать/выключать игровые часы у игрока.
Parameters:({{{1}}})
| playerid | ID игрока. |
| toggle | 1 - включить, 0 - отключить. |
TogglePlayerClock(playerid, 1);
[edit]
SetPlayerDisabledWeapons
Parameters:({{{1}}})
Битая функция в текущей версии San Andreas - Multiplayer. Она не может быть использована!
[edit]
ForceClassSelection
Заставляет игрока вернуться к выбору класса.
Parameters:({{{1}}})
| playerid | ID игрока. |
ForceClassSelection(playerid);
[edit]
ApplyAnimation
Установить анимацию для игрока
Parameters:({{{1}}})
[edit]
ClearAnimations
Убрать анимацию у игрока.
Parameters:({{{1}}})
[edit]
GetPlayerSpecialAction
Parameters:({{{1}}})
[edit]
SetPlayerSpecialAction
Parameters:({{{1}}})
[edit]
TogglePlayerSpectating
Переключает игрока в режим спектатора и обратно.
Parameters:({{{1}}})
| playerid | ID игрока. |
| toggle | 1 - включить режим спектатора, 0 - отключить режим спектатора. |
TogglePlayerSpectating(playerid, 1);
[edit]
PlayerSpectatePlayer
Позволяет игроку наблюдать за другим игроком в режиме спектатора.
Parameters:({{{1}}})
| playerid | ID игрока, который будет осуществлять наблюдение. |
| targetplayerid, | ID игрока, за которым будет осуществляться наблюдение. |
| mode | Режим наблюдения. |
PlayerSpectatePlayer(playerid, 4, SPECTATE_MODE_NORMAL);
[edit]
PlayerSpectateVehicle
Позволяет игроку наблюдать за транспортным средством в режиме спектатора.
Parameters:({{{1}}})
| playerid | ID игрока, который будет осуществлять наблюдение. |
| targetvehicleid | ID транспортного средства, за которым будет осуществляться наблюдение. |
| mode | Режим наблюдения. |
PlayerSpectateVehicle(playerid, 278, SPECTATE_MODE_NORMAL);
