Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Спавн игрока

Статус
В этой теме нельзя размещать новые ответы.

IceHash

Умник
Нужно сделать спавн игрока после авторизации.

Код:
//Подключение
public OnPlayerConnect(playerid)
{
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	TogglePlayerSpectating(playerid, true);
 	if(IsPlayerRegister(playername))
 	{
		ShowPlayerDialog(playerid, D_LOGIN, DIALOG_STYLE_INPUT, "Авторизация на сервере", "Здравствуйте, уважаемый игрок!\nВы зарегистрированы на сервере!\nПожалуйста, введите пароль для авторизации:", "Войти", "");
	}
	else
	{
		ShowPlayerDialog(playerid, D_REGISTER, DIALOG_STYLE_INPUT, "Регистрация на сервере", "Здравствуйте, уважаемый игрок!\nВы не зарегистрированы на сервере!\nПожалуйста, введите пароль для регистрации:", "Войти", "");
	}
	return 1;
}

//Авторизация
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	new playername[MAX_PLAYER_NAME], string[256];
	switch(dialogid)
	{
	    case D_LOGIN:
	    {
			new query[256], DBResult:result, value[16];
	        GetPlayerName(playerid, playername, sizeof(playername));
			format(query, sizeof(query), "SELECT * FROM `users` WHERE `login`='%s' AND `password`='%s'", EscapeDB(playername), EscapeDB(inputtext));
			result = db_query(DataBase, query);
			if(db_num_rows(result))
			{
                db_get_field_assoc(result, "level", value, 16); PlayerInfo[playerid][Level] = strval(value);
                db_get_field_assoc(result, "health", value, 16); PlayerInfo[playerid][Health] = floatstr(value);
                db_get_field_assoc(result, "armour", value, 16); PlayerInfo[playerid][Armour] = floatstr(value);
                db_get_field_assoc(result, "posx", value, 16); PlayerInfo[playerid][PosX] = floatstr(value);
                db_get_field_assoc(result, "posy", value, 16); PlayerInfo[playerid][PosY] = floatstr(value);
                db_get_field_assoc(result, "posz", value, 16); PlayerInfo[playerid][PosZ] = floatstr(value);
                db_get_field_assoc(result, "passport", value, 16); PlayerInfo[playerid][Passport] = strval(value);
                db_get_field_assoc(result, "age", value, 16); PlayerInfo[playerid][Age] = strval(value);
                db_get_field_assoc(result, "skin", value, 16); PlayerInfo[playerid][Skin] = strval(value);
                db_get_field_assoc(result, "admin", value, 16); PlayerInfo[playerid][Admin] = strval(value);
                db_get_field_assoc(result, "fraction", value, 16); PlayerInfo[playerid][Fraction] = strval(value);
				
                SetSpawnInfo(playerid, PlayerInfo[playerid][Fraction], PlayerInfo[playerid][Skin], PlayerInfo[playerid][PosX], PlayerInfo[playerid][PosY], PlayerInfo[playerid][PosZ], 1.0, -1, -1, -1, -1, -1, -1);
				if(PlayerInfo[playerid][Admin] > 0)
                {
                    format(string, sizeof(string), "Вы администратор %d уровня!", PlayerInfo[playerid][Admin]);
                    SendClientMessage(playerid, C_ORANGE, string);
                }
			}
			else
			{
			    SendClientMessage(playerid, C_RED, "Ошибка: Вы ввели неверный пароль!");
				ShowPlayerDialog(playerid, D_LOGIN, DIALOG_STYLE_INPUT, "Авторизация на сервере", "Здравствуйте, уважаемый игрок!\nВы зарегистрированы на сервере!\nПожалуйста, введите пароль для авторизации:", "Войти", "");
			}
			db_free_result(result);
		}
	}
	return 1;
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу