• Уважаемый Гость.
    - Прежде чем создать свою тему, пожалуйста, попробуй воспользоваться этим -> ПОИСКОМ !!!
    - После решения Вашего вопроса (проблемы) - нажмите "Лучший ответ", на сообщении, которое его решило. За игнорирование этого действия - Вы получите соответствующее предупреждение. Мы - стараемся Вам помочь. Уделите 10 секунд - чтобы нажать кнопку. (Если у Вас нет такой возможности - укажите в последнем своем сообщении какой ответ Вы считаете лучшим. Наши модераторы сделают это за Вас)
    ЗАПРЕЩЕНО:
    - Cоздавать темы с названиями "Помогите", "Плиз", "Ошибка", "Не могу найти", "Хелп" и тому подобное;
    - Cоздавать темы без детального описания того, что нужно исправить.
    - Cоздавать темы из одного скриншота.
    За игнор правил форума - Ваша тема будет удалена, а Вы получите системное предупреждение.

Проблема с домами.

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

Star_King

Начинающий
Пользователь
Регистрация
27 Сен 2018
Сообщения
13
Лучшие ответы
0
Репутация
0
Здравствуйте, когда подхожу к дому свободному / занятому.
не появляеться диалоговое окно в котором можно было посмотреть кто владелец либо купить.

PHP:
public OnPlayerEnterDynamicArea(playerid, areaid)
{
   	if(areaid >= HouseInfo[0][hSquare] && areaid <= HouseInfo[1999][hSquare])
   	{
   	    if(GetPVarInt(playerid, "ExitHouse")) return true;
   	    new h = areaid-1;
   	    if(h == 255) return true;
		if(HouseInfo[h][hOwned] == 1)
		{
			new ttextt[32], ids = GetPlayerID(HouseInfo[h][hOwner]);
			if(IsPlayerConnected(ids)) { ttextt = "[{22ff00}Online{66CCCC}]"; }
			else if(!IsPlayerConnected(ids)) { ttextt = "[{ff001c}Offline{66CCCC}]"; }
			new tstext[10];
			switch(HouseInfo[h][hKlass])
			{
				case 1: tstext = "D";
				case 2: tstext = "C";
	+			case 3: tstext = "B";
				case 4: tstext = "A";
				case 5: tstext = "S";
				default: tstext = "Nope";
			}
			format(stringer1, sizeof(stringer1), "{FFFFFF}Владелец: \t{66CCCC}%s  %s\n{ffffff}Класс: \t\t{66CCCC}%s\n{ffffff}Номер дома: \t{66CCCC}%d",HouseInfo[h][hOwner],ttextt,tstext,h);
			SPD(playerid,10075,DIALOG_STYLE_MSGBOX,"Дом занят",stringer1,"Войти","Отмена");
			return true;
		}
		else
		{
			if(PlayerInfo[playerid][pCash] < HouseInfo[h][hValue])
			{
				GameTextForPlayer(playerid,"~r~No Money",5000,1);
				return true;
			}
			new tstexr[10];
			switch(HouseInfo[h][hKlass])
			{
				case 1: tstexr = "D";
				case 2: tstexr = "C";
				case 3: tstexr = "B";
				case 4: tstexr = "A";
				case 5: tstexr = "S";
				default: tstexr = "Nope";
			}
			format(stringer1, sizeof(stringer1), "{ffffff}Номер дома: \t{66CCCC}%d\n{ffffff}Цена: {66CCCC}\t\t%s\n{ffffff}Класс 
                        {66CCCC}\t\t%s",h,formatInt(HouseInfo[h][hValue]),tstexr);
			SPD(playerid,10026,DIALOG_STYLE_MSGBOX,"{CCFFFF}Частный дом",stringer1,"Купить","Отмена");
			return true;
		}
	}
PHP:
CASE 10075
			{
				if(response)
				{
					for(new i = 0; i < sizeof(HouseInfo); i++)
					{
						if(IsPlayerInRangeOfPoint(playerid, 3.0,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
						{
							if(strcmp(PlayerInfo[playerid][pNames], HouseInfo[i][hOwner], true) == 0 && PlayerInfo[playerid][pPhousekey] == 255) PlayerInfo[playerid][pPhousekey] = i;
							if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0 || PlayerInfo[playerid][pHomez] == i || IsACop(playerid) || IsAArm(playerid) || PlayerInfo[playerid][pAlcoInvenxua] >= 3)
							{
								SetPlayerInteriorEx(playerid,HouseInfo[i][hInt]);
								SetPlayerVirtualWorldEx(playerid,i+50);
								SetPPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
								TogglePlayerControllable(playerid, false);
								SetTimerEx("UnFreez", 2900, 0, "d", playerid);
								PlayerInfo[playerid][pLocal] = i;
								return true;
							}
							else if(IsAGang(playerid))
							{
								PlayerInfo[playerid][pLocal] = i;
								if(PlayerInfo[playerid][Texts][1] == 0) SPD(playerid, 432, DIALOG_STYLE_MSGBOX,"Предложение","Эй, хочешь
                                                                вскрыть этот дом?","Дерзнуть","Свалить");
								else return SendClientMessage(playerid, COLOR_GREY, "Вы уже засветились в ограблении дома, подождите еще чуть- 
                                                                чуть.");
								return true;
							}
							else GameTextForPlayer(playerid, "~r~Locked", 5000, 1);
						}
					}
				}
				else return true;
			}
PHP:
CASE 10026
			{
				if(!response) return true;
				for(new h = 0; h < sizeof(HouseInfo); h++)
				{
					if(IsPlayerInRangeOfPoint(playerid, 2.0, HouseInfo[h][hEntrancex], HouseInfo[h][hEntrancey], HouseInfo[h][hEntrancez]) && HouseInfo[h][hOwned] == 0)
					{
						if(PlayerInfo[playerid][pPhousekey] != 255 && strcmp(PlayerInfo[playerid][pNames], HouseInfo[PlayerInfo[playerid][pPhousekey]][hOwner], true) == 0)
						{
							SendClientMessage(playerid, COLOR_RED, "У вас уже есть дом (/hmenu > 2. Продать дом государству)");
							return true;
						}
						if(PlayerInfo[playerid][pCash] < HouseInfo[h][hValue]) return SendClientMessage(playerid, COLOR_WHITE, "У вас нет столько денег на руках!");
						PlayerInfo[playerid][pPhousekey] = h;
						HouseInfo[h][hOwned] = 1;
						HouseInfo[h][hHel] = 0;
						HouseInfo[h][hTakings] = 1500;
						strmid(HouseInfo[h][hOwner], PlayerInfo[playerid][pNames], 0, strlen(PlayerInfo[playerid][pNames]), 255);
						PlayerInfo[playerid][pCash] -= HouseInfo[h][hValue];
						SetPlayerInteriorEx(playerid,HouseInfo[h][hInt]);
						SetPPos(playerid,HouseInfo[h][hExitx],HouseInfo[h][hExity],HouseInfo[h][hExitz]);
						PlayerInfo[playerid][pLocal] = h;
						SetPlayerVirtualWorldEx(playerid,h+50);
						PlayerPlaySound(playerid, 31204, 0.0, 0.0, 0.0);
						SendClientMessage(playerid, COLOR_WHITE, "Поздравляем! Вы купили дом");
						SendClientMessage(playerid, 0x66cc00ff, "Используйте {2c9cce}/hmenu{66cc00}, чтобы узнать о возможностях");
						GameTextForPlayer(playerid, "~b~~h~Welcome ~g~to~n~~y~new ~w~home", 5000, 1);
						ShowPlayerDialog(playerid, 228, DIALOG_STYLE_MSGBOX, "{FFD700}Новый дом", "{FFFFFF}Вам нужно заплатить за дом в ближайшем отделении банка {dba002}(/gps)", "ОК", "");
						if(PlayerInfo[playerid][pCar] == 0) PlayerInfo[playerid][pCar] = 462;
						if(PlayerInfo[playerid][pCar2] == 0) PlayerInfo[playerid][pCar2] = 462;
						SaveHouse(h);
						new house = PlayerInfo[playerid][pPhousekey];
						if(caridhouse[playerid] == INVALID_VEHICLE_ID)
						{
							caridhouse[playerid] = CreateVehicleEx(PlayerInfo[playerid][pCar], 2531.9766,-1540.2168,2023.1902,90.0000, cColor[playerid][0][0], cColor[playerid][0][1],7200, 0);
							VEHICLE[caridhouse[playerid]][vHealth] = 1000.0;
							VEHICLE[caridhouse[playerid]][vLock] = 1;
							//if(PlayerInfo[playerid][pCar2] == 542 && PlayerInfo[playerid][pClover] == 1) SupremeCar(caridhouse[playerid]);
							LinkVehicleToInterior(caridhouse[playerid], 1);
		                    SetVehicleVirtualWorld(caridhouse[playerid], house+50);
							Fuell[caridhouse[playerid]] = 100.0;
							PlayerInfo[playerid][pFuelcar] = 100.0;
							SetPVarInt(playerid, "CarNomer", 0);
							AddTune(playerid, 0);
						}
      					SetTimerEx("freezeplayer", 3000, false, "i", playerid);
						TogglePlayerControllable(playerid,0);
						BuyHouse(house);
						OnPlayerUpdateRL(playerid);
						return true;
					}
				}
			}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу