RU/getAccountData
		
		
		
		Jump to navigation
		Jump to search
		
| Примечание: Настоятельно рекомендуется использовать формат module.key в названиях ключей, как показано в примере ниже. Это помогает избегать противоречий между разными скриптами. | 
Эта функция получает строку, которая была сохранена при помощи setAccountData. Данные аккаунта сохраняются в игре, если это не аккаунт guest (гость).
Синтаксис
string getAccountData(account theAccount, string key)
Синтаксис ООП Помогите! Я не понимаю, что это!
- Метод: account:getData(...)
 - Парная функция: [[RU/setAccountData|setAccountData]]
 
Обязательные аргументы
- theAccount: Аккаунт, данные которого Вы хотите получить.
 - key: Ключ, под которым хранятся данные.
 
Возвращаемые значения
Возвращает строку, содержащую данные, или false, если данные не были сохранены под этим ключом.
Пример использования
Click to collapse [-]
СерверПример 1. Для пиратского ролевого игрового режима сумма денег, которую имеет игрок, постоянно сохраняется, сохраняя её в своем аккаунте. Обратите внимание, что код использует piraterpg.money как ключ, а не просто money, так как игрок может участвовать в других игровых режимах, которые также сохраняют его денежную сумму на его счёт. Если оба типа игровых режимов будут использовать money в качестве ключа аккаунта, они перепишут данные друг друга.
function onPlayerQuit()
      local playerAccount = getPlayerAccount(source) -- получает аккаунт игрока
      if(playerAccount) then -- если аккаунт получен, то
            local playerMoney = getPlayerMoney(source) -- получает сумму денег игрока
            setAccountData(playerAccount, "piraterpg.money", playerMoney) -- сохраняет сумму денег под ключом "piraterpg.money" на полученном аккаунте
      end
end
addEventHandler("onPlayerQuit", getRootElement(), onPlayerQuit) -- прикрепляет функцию 'onPlayerQuit' к обработчику события "onPlayerQuit"
function onPlayerLogin(_, account)
    local playerMoney = getAccountData(account, "piraterpg.money") -- получает данные аккаунта сохранённые под ключом "piraterpg.money"
    if(playerMoney) then -- если данные получены, то
        setPlayerMoney(source, playerMoney) -- устанавливает игроку сумму денег из полученных данных
    end
end
addEventHandler("onPlayerLogin", getRootElement(), onPlayerLogin) -- прикрепляет функцию 'onPlayerLogin' к обработчику события "onPlayerLogin"
Смотрите также
Серверные функции
- addAccount - регистрирует аккаунт
 - copyAccountData - копирует данные аккаунта в другой
 - getAccount - получает аккаунт указанного пользователя
 - getAccountByID - получает аккаунт с указанным ID
 - getAccountData - получает указанные данные аккаунта
 - getAccountID - получает ID указанного аккаунта
 - getAccountIP - получает IP указанного аккаунта
 - getAccountName - получает имя аккаунта
 - getAccountPlayer - получает активного пользователя аккаунта
 - getAccountSerial - получает серийный номер аккаунта
 - getAccounts - получает все зарегистрированные аккаунты
 - getAccountsByData - получает аккаунты с указанными сохранёнными данными
 - getAccountsByIP - получает аккаунт с указанным IP
 - getAccountsBySerial - получает все аккаунты с указанным серийным номером
 - getAllAccountData - получает все данные аккаунта
 - getPlayerAccount - получает аккаунт указанного игрока
 - isGuestAccount - проверяет, является ли аккаунт гостевым
 - logIn - авторизует игрока под указанный аккаунт
 - logOut - выходит из аккаунта указанного игрока
 - removeAccount - удаляет аккаунт
 - setAccountData - сохраняет данные в аккаунте
 - setAccountName - устанавливает имя аккаунту
 - setAccountPassword - устанавливает пароль аккаунта