Перейти к содержанию
Авторизация  
DoZoR_Team

Спавн+Дом

Рекомендуемые сообщения

DoZoR_Team

Всем привет! Форумчане помогите,как сделать когда купил дом что бы в нем быть при следующем заходе а не на спавне где все?

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


Ссылка на сообщение
Поделиться на другие сайты
Max_Eitzen

В OnPlayerSpawn проверку на дом и спавн в нем.

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


Ссылка на сообщение
Поделиться на другие сайты
DoZoR_Team

 

 


OnPlayerSpawn
if(Player[playerid][pWanted] > 6) Player[playerid][pWanted] = 6;//Розыск
    if(gPlayerLogged[playerid] == 0) return Crash[playerid] = 1, SCM(playerid, COLOR_GRAD1, "Вы не авторизированы."), Kick(playerid);
if(GetPVarInt(playerid, "PlayerMask") == 2) for(new i; i < MAX_PLAYERS; i++) ShowPlayerNameTagForPlayer(i, playerid, true), DeletePVar(playerid, "PlayerMask");
    if(!strcmp(Player[playerid][pMail], "None", true)) SPD(playerid, 8, DIALOG_STYLE_INPUT, "Электронная почта", "{ffffff}Введите адрес вашей электронной почты (e-mail).\nНа Ваш e-mail будет выслан защитный код! С помощью него Вы сможете защитить свой аккаунт от взломов!", "Далее", "Отмена");
if(Player[playerid][pWarn] > 0 && Player[playerid][pWarnTime] <= gettime()) Player[playerid][pWarn] = 0, SCM(playerid, COLOR_GOOD, "С Вас автоматически снялись все предупреждения."), Player[playerid][pWarnTime] = 0;
if(Player[playerid][pVIP] == 1 && Player[playerid][pVipTime] <= gettime()) Player[playerid][pVIP] = 0, SCM(playerid, COLOR_GOOD, "Действие VIP аккаунта закончилось!"), SetPlayerInt(playerid, "VIP", 0), SetPlayerInt(playerid, "VipTime", 0);
if(Player[playerid][pLicOff] > 0 && Player[playerid][pLicTime] <= gettime()) Player[playerid][pLicOff] = 0, SetPlayerInt(playerid, "LicOff", 0), SCM(playerid, COLOR_GOOD, "Вам снова доступна автошкола!");
    if(Player[playerid][pParking] <= gettime() && Player[playerid][pParkingKart] == 1)
{
if(GetPlayerParking(playerid) == 0) return false;
new i = GetPVarInt(playerid, "PlayerParking");
SCM(playerid, COLOR_GOOD, "Действие аренды парковочного места закончилось!");
strmid(ParkInfo[i][pPlayer], "None", 0, strlen("None"), 24);
strmid(ParkInfo[i][pData], "None", 0, strlen("None"), 24);
ParkInfo[i][pDays] = 0;
DeletePVar(playerid, "PlayerParking"), Player[playerid][pParking] = 0, Player[playerid][pParkingKart] = 0;
SetPlayerInt(playerid, "Parking", Player[playerid][pParking]), SetPlayerInt(playerid, "ParkingKart", Player[playerid][pParkingKart]);
}
for(new i = 0; i < MAX_PLAYER_ATTACHED_OBJECTS; i++)
{
if(IsPlayerAttachedObjectSlotUsed(playerid, i)) RemovePlayerAttachedObject(playerid, i);
}
//Спавны
	if(Player[playerid][pWanted] != 0) SendMes(playerid, COLOR_LIGHTRED, "У Вас %d уровень розыска.", Player[playerid][pWanted]), SetPlayerWantedLevel(playerid, Player[playerid][pWanted]);
	if(Player[playerid][pSpawn] == 1)//Значит спавн на вокзалах (pOrg == 1 - спавн на автовокзале)
	{
		if(Player[playerid][pLevel] <= 5)
		{
			SetPlayerPos(playerid, SPAWN_XYZ), SetPlayerFacingAngle(playerid, 90.0);
			InterpolateCameraPos(playerid, 2291.059326, -2127.158935, 164.030685, 2513.847167, -2126.915527, 23.954071, 6000);
			InterpolateCameraLookAt(playerid, 2295.084472, -2127.282226, 161.067108, 2508.853759, -2126.788330, 23.729667, 3000);
            TogglePlayerControllable(playerid, false), timerspawn[playerid] = 8;
		}
		else if(Player[playerid][pLevel] >= 6 && Player[playerid][pLevel] <= 10)
		{
			SetPlayerPos(playerid, 1820.3000,2515.8928,15.6639), SetPlayerFacingAngle(playerid, 350.0);
			InterpolateCameraPos(playerid, 191.449951, 1527.493774, 55.969043, 177.866897, 1452.879272, 13.443506, 7000);
			InterpolateCameraLookAt(playerid, 190.655410, 1523.730468, 52.774322, 178.816757, 1457.747436, 12.812381, 4000);
			TogglePlayerControllable(playerid, false), timerspawn[playerid] = 10;
		}
		else if(Player[playerid][pLevel] >= 11)
		{
			SetPlayerPos(playerid, 1820.3000,2515.8928,15.6639), SetPlayerFacingAngle(playerid, 92.0);
			InterpolateCameraPos(playerid, -2503.154541, 2838.633056, 44.113193, -2457.737304, 2839.364013, 41.146892, 7000);
			InterpolateCameraLookAt(playerid, -2498.267089, 2838.495605, 43.067073, -2461.936523, 2839.482177, 38.435375, 4000);
			TogglePlayerControllable(playerid, false), timerspawn[playerid] = 8;
		}
		else SetPlayerPos(playerid, 2230.1299,-1904.4108,19.5734), SetPlayerFacingAngle(playerid, 90.0918);
	}
	else if(Player[playerid][pSpawn] == 2)//Спавн во фракциях
	{
		if(Player[playerid][pTeam] == 1) SetPlayerPos(playerid, 2567.7124,-2417.7559,22.3545), SetPlayerFacingAngle(playerid, 270.0);
		else if(Player[playerid][pTeam] == 2) SetPlayerPos(playerid, 2414.4722,-1802.9711,32.5537), SetPlayerFacingAngle(playerid, 180.0);
        else if(Player[playerid][pTeam] == 3) SetPlayerPos(playerid, -1829.0383,-2863.3694,21.3413), SetPlayerFacingAngle(playerid, 150.0);
        else if(Player[playerid][pTeam] == 4) SetPlayerPos(playerid, 2108.9780,-2405.8167,22.4008), SetPlayerFacingAngle(playerid, 360.0);
        else if(Player[playerid][pTeam] == 5) SetPlayerPos(playerid, 1558.8591,-1485.1506,10.3375), SetPlayerFacingAngle(playerid, 65.0);
        else if(Player[playerid][pTeam] == 6) SetPlayerPos(playerid, 570.4719,-2758.5044,-14.4047), SetPlayerFacingAngle(playerid, 183.0), SetPlayerInterior(playerid, 10);
        else if(Player[playerid][pTeam] == 7) SetPlayerPos(playerid, -2456.5718,1515.1073,38.2328), SetPlayerFacingAngle(playerid, 11.0);
        else if(Player[playerid][pTeam] == 8) SetPlayerInterior(playerid, 5), SetPlayerVirtualWorld(playerid, 5), SetPlayerPos(playerid, 1836.1122,2272.5969,5.1451), SetPlayerFacingAngle(playerid, 178.0);
        else if(Player[playerid][pTeam] == 9) SetPlayerPos(playerid, -313.9383,810.1027,13.1078), SetPlayerFacingAngle(playerid, 92.0);
        else if(Player[playerid][pTeam] == 10) SetPlayerInterior(playerid, 4), SetPlayerVirtualWorld(playerid, 4), SetPlayerPos(playerid, 1836.1122,2272.5969,5.1451), SetPlayerFacingAngle(playerid, 178.0);
		else if(Player[playerid][pTeam] == 11) SetPlayerInterior(playerid, 1), SetPlayerPos(playerid, 2117.2656,1388.6534,2.0731), SetPlayerFacingAngle(playerid, 90.0);
		else Player[playerid][pSpawn] = 1, SpawnPlayer(playerid);
	}
	else if(Player[playerid][pSpawn] == 3)//Спавн в доме
	{
		//if(GetPlayerHouse(playerid) == 0) return SCM(playerid, COLOR_LIGHTRED, "У Вас выбран спавн в доме, но дома у вас нет. Просьба сменить спавн (/spawn)"),
  		//SCM(playerid, COLOR_LIGHTRED, "А пока Вы будете заспавнены на вокзале."), Player[playerid][pSpawn] = 1, SpawnPlayer(playerid);
		//new i = GetPVarInt(playerid, "PlayerHouse");
		if(GetPlayerHouse(playerid) != 0)
		{
		    new i = GetPVarInt(playerid, "PlayerHouse");
			if(House[i][hType] == 1)
			{
				SetPlayerPos(playerid, House[i][hExitX], House[i][hExitY], House[i][hExitZ]);
				SetPlayerInterior(playerid, 1), SetPlayerVirtualWorld(playerid, i);
				SetPVarInt(playerid, "H_ID", i);
			}
			else if(House[i][hType] == 2)
			{
			    SetPlayerPos(playerid, House[i][hExitX], House[i][hExitY], House[i][hExitZ]);
				SetPVarInt(playerid, "H_ID", i);
			}
			else if(House[i][hType] == 3)
			{
				SetPlayerPos(playerid, House[i][hExitX], House[i][hExitY], House[i][hExitZ]);
				SetPlayerInterior(playerid, 1), SetPlayerVirtualWorld(playerid, i);
				SetPVarInt(playerid, "H_ID", i);
			}
		}
		if(GetPlayerRent(playerid) != 0)
		{
		    new i = GetPVarInt(playerid, "PlayerRent");
		    if(House[i][hType] == 1)
			{
				SetPlayerPos(playerid, House[i][hExitX], House[i][hExitY], House[i][hExitZ]);
				SetPlayerInterior(playerid, 1), SetPlayerVirtualWorld(playerid, i);
				SetPVarInt(playerid, "H_ID", i);
			}
			else if(House[i][hType] == 2)
			{
			    SetPlayerPos(playerid, House[i][hExitX], House[i][hExitY], House[i][hExitZ]);
				SetPVarInt(playerid, "H_ID", i);
			}
			else if(House[i][hType] == 3)
			{
				SetPlayerPos(playerid, House[i][hExitX], House[i][hExitY], House[i][hExitZ]);
				SetPlayerInterior(playerid, 1), SetPlayerVirtualWorld(playerid, i);
				SetPVarInt(playerid, "H_ID", i);
			}
		}
	}

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


Ссылка на сообщение
Поделиться на другие сайты
DoZoR_Team

Так же тема создана + дом , в чем может быть проблема,покупаю дом в одном месте,но только как перезапущу серв он у меня не понятно где! В чем может быть проблема?если в сохранение то как сделать(убрать данный баг) подскажите!

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


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

  • Последние посетители   0 пользователей онлайн

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

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.