RU/setPlayerName: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
mNo edit summary
 
Line 23: Line 23:
* Минимальная длина имени игрока - 1 символ.  
* Минимальная длина имени игрока - 1 символ.  
* Максимальная длина имени игрока - 22 символа.
* Максимальная длина имени игрока - 22 символа.
* Имена игроков чувствительны к регистру. Невозможно, чтобы было два клиента с одинаковым именем, но с разным регистром.
* Имена игроков чувствительны к регистру. Невозможно, чтобы два клиента с одинаковым именем, но с разным регистром, были подключены к одному серверу.


==Пример==
==Пример==

Latest revision as of 17:05, 19 September 2014

Данная функция изменяет имя указанного игрока.

Синтаксис

bool setPlayerName ( player thePlayer, string newName )

Синтаксис ООП Помогите! Я не понимаю, что это!

Метод: player:setName(...)
Переменная: .name
Парная функция: getPlayerName

Обязательные аргументы

  • thePlayer: Игрок, которому нужно изменить имя.
  • newName: Новое имя, устанавливаемое игроку.

Возвращает

  • true, если имя было успешно изменено.
  • false, если были переданы неверные аргументы.

Ограничения

  • Допускаются только символы ASCII между 33 и 126 (базовая латиница):
   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
  • Минимальная длина имени игрока - 1 символ.
  • Максимальная длина имени игрока - 22 символа.
  • Имена игроков чувствительны к регистру. Невозможно, чтобы два клиента с одинаковым именем, но с разным регистром, были подключены к одному серверу.

Пример

Этот пример добавляет тэг перед именем игрока при помощи команды /changetag


-- Определение функции для команды /changetag
-- source = игрок, который вызвал эту команду
-- command = команда переданная в функцию (changetag)
-- thePlayer = игрок, которому вы хотите добавить тэг
-- tag = тэг, который нужно добавить к нику игрока
function tagPlayer ( source, command, thePlayer, tag )
	-- Попытка получить элемент игрока по указанному имени.
	local sPlayerElement = getPlayerFromName ( thePlayer )
	-- Проверка на то, что игрок с указанным именем существует.
	if ( sPlayerElement ) then
		-- убедимся, что тип элемента thePlayer указывает на игрока
		if getElementType ( sPlayerElement ) == "player" then
			-- сохраним текущее имя игрокаwe,
			local oldName = getPlayerName ( sPlayerElement )
			-- применим тэг вначале ника
			local taggedName = tag .. oldName
			-- затем установим новое имя
			setPlayerName ( sPlayerElement, taggedName )
			-- Скажем игроку, который вызвал команду, что тэг был применён
			outputChatBox ( "Тэг игрока" .. thePlayer .. " изменён на " .. taggedName, source )
		end
	else
		-- Скажем игроку, который вызвал команду, что указанный игрок не подключен
		outputChatBox ( "Нельзя сменить тэг игроку: Игрок " .. thePlayer .. " не найден", source )
	end
end
-- Добавление обработчика команды
-- Пример: /changetag <playername> <tag>
addCommandHandler ( "changetag", tagPlayer )

Смотрите также