Вопросы

Добрый вечер! Подсмотрел на одном из SAMP серверов такую штуку, что сначала происходит проверка, есть ли в базе аккаунт c именем, а уже через, буквально, 2-3 секунды игрок коннектится и вызывается, как я думаю, событие с выбором класса игрока, то бишь регистрация/авторизация аккаунта. Вроде в таком порядке и происходит подключение игрока, если нет и есть какие-нибудь советы, обязательно учту) А так... Что я написал в своём моде, происходит всё моментально

cr-mp-000.jpg

Поделиться сообщением


Ссылка на сообщение

5 ответов на этот вопрос

  • 0

@Maks_Fabions,

 

Спойлер

public OnPlayerConnect(playerid)
{
    SendClientMessage(playerid, -1"OnPlayerConnect: начало вызова");

    SetTimerEx("OnPlayerRequestClass"1000false"dd", playerid, -1);
    
    SendClientMessage(playerid, -1"OnPlayerConnect: конец вызова");
    return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
    SendClientMessage(playerid, -1"OnPlayerRequestClass: начало вызова");
    
    if (classid == -1) {
        SendClientMessage(playerid, -1"OnPlayerRequestClass: вызов по таймеру");
    }
    
    SendClientMessage(playerid, -1"OnPlayerRequestClass: конец вызова");
    return 1;
}

 

 

Спойлер

изображение_2022-08-11_123127362.png

 

Так что OnPlayerRequestClass можно искусственно вызвать по таймеру, но зачем? Пока не будет выполнен весь код, написанный в OnPlayerConnect, вызов OnPlayerRequestClass не произойдет (ввиду однопоточности SAMP/CRMP). Поэтому реализация поиска аккаунта в базе данных в OnPlayerConnect должна заставить сервер "виснуть", пока не будет ответ от сервера с базой данных.

Поделиться сообщением


Ссылка на сообщение
  • 0
SetTimerEx (funcname[], interval, repeating, const format[], {Float,_})

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Раксон Фаркрай , хорошая погоня за репутацией, а если проверить??? Делал я уже таймер на OnPlayerRequestClass в паблик OnPlayerConnect. Не работает!

Поделиться сообщением


Ссылка на сообщение
  • 0

Вообще, я не понимаю, а смысл от этой проверки заранее?) 

 

Этот текст можно сделать и при коннекте игрока. Вызывать паблик проверки на аккаунт и при разных условиях, найден ли игрок, выводить разный текст

Поделиться сообщением


Ссылка на сообщение
  • 0

@Maks_Fabions Я сам так делал не знаю как у вас это не получается

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • tivan666ban
      От tivan666ban
      Скажите пожалуйста почему этот код(знаю что ещё не допиленный) 
      выдаёт эти ошибки