Deluxe
Компетентный
NB! Rezone RP v9.0 by Deluxe : Тыкай bro :3
Сразу предупреждаю, что остался лишь 1 баг с ними и как его решить не знаю, но думаю если сюда зайдут какие нибудь батьки, помогут и подскажут :3
Баг заключается в том, что если человек купит квартиру в подъезде номер 2 или 3, или вообще любой, кроме 1, спавниться будет в 1 подъезде.
И так, начнем.
Дэфайним наш диалог в будущем
И если у нас нет BYTES_PER_CELL, то тоже добавляем к дэфайнам
Ко всем new
Команды которые будут в создании подъездов и квартир.
Внимание ! 2 команды обычные, 2 команды ZMCD, поэтому если у вас мод не распознает ZCMD предпринимаем следующее :
В конец мода
А в начало мода
Если в моде у вас не используется sscanf, то он нужен будет здесь, поэтому так же пишем
Если у вас нету sscanf2.inc то можете скачать тут :
Если у вас нету zcmd.inc то можете скачать тут :
Пароль : Pawno-Info.Ru
Сами команды :
В OnPlayerPickupPickup
В OnGameModeInit
Сами загрузки ( LoadKvartir, LoadPodeezd )
А еще создайте в аккаунте pKvartirakey , которая будет отвечать за номер комнаты человека
В SetPlayerSpawn
А это сохранения квартир и подъездов :
Обновление квартир :
В OnPlayerKeyStateChange
В OnDialogResponse
И последнее в PayDay()
Ну вот вроде и все, если что то забыл - пишите, потому что уже вечер, путаюсь 
Не забудьте найти плагин sscanf'a и в plugins (server.cfg и в папку) подключить его, иначе мод может не запускаться.
Благотворительность:
WMR : R391888840984
WMU : U166502154283
WMZ : Z280785601888
Если кому-то надо, то вот :
Ссылки на файлы которые должны присутствовать в scriptfiles/logs
Пароль для скачек :
Pawno-Info.Ru
В них расставлено 12 подъездов и 390 квартир!
Сразу предупреждаю, что остался лишь 1 баг с ними и как его решить не знаю, но думаю если сюда зайдут какие нибудь батьки, помогут и подскажут :3
Баг заключается в том, что если человек купит квартиру в подъезде номер 2 или 3, или вообще любой, кроме 1, спавниться будет в 1 подъезде.
И так, начнем.
Дэфайним наш диалог в будущем
PHP:
#define D_POD 8999
PHP:
#define BYTES_PER_CELL (cellbits / 8)
PHP:
new global[MAX_PLAYERS];
new caridkvart[MAX_PLAYERS];
new podeezdi;
enum podInfo//Подъезды
{
Float:podPicX,
Float:podPicY,
Float:podPicZ,
podEtazi,//Этажи)
podMir[10],//Макс кол-о этажей (0, 1, 2, 3, 4 ... 10)
podPic,
Float:carX,
Float:carY,
Float:carZ,
Float:carC,
podIco
};
new PodeezdInfo[300][podInfo], Allpodeezd;//Если вы собираетесь добавить подъездов более чем 300 - увеличте цифру в скобках ;)
enum kInfo
{
Float:pXpic,
Float:pYpic,
Float:pZpic,
vladelec[32],
Text3D: dtext,
lock,
world,
aptek,
plata
};
new kvartinfo[1000][kInfo],ALLKVARTIRI; //Если вы собираетесь добавить подъездов более чем 1000 - увеличте цифру в скобках ;)
Внимание ! 2 команды обычные, 2 команды ZMCD, поэтому если у вас мод не распознает ZCMD предпринимаем следующее :
В конец мода
PHP:
public OnPlayerCommandPerformed(playerid, cmdtext[], success)
{
if(!success) OnPlayerCommandText(playerid,cmdtext);
return true;
}
PHP:
#include <zcmd> // естественно, что у нас должен быть этот инклуд в pawno/include
PHP:
#include <sscanf2> // тоже в начало мода
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Если у вас нету zcmd.inc то можете скачать тут :
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Пароль : Pawno-Info.Ru
Сами команды :
PHP:
CMD:podeezd(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 8)
{
if(sscanf(params, "i", params[0]))return SendClientMessage(playerid, -1, "Введите: /podeezd [кол-во этажей]");
new Float:X,Float:Y,Float:Z;
if(global[playerid] == 0)
{
if(params[0] > 9) return SendClientMessage(playerid, -1, "Можно только от 1 до 9 этажей");
Allpodeezd ++;
GetPlayerPos(playerid, X,Y,Z);
new carid = CreateVehicle(560, X,Y,Z, 0.0, 230, 230, 60000);
PutPlayerInVehicle(playerid, carid, 0), Fuell[carid] = 200;
PodeezdInfo[Allpodeezd][podEtazi] = params[0];
global[playerid] = 1;
SendClientMessage(playerid, COLOR_WHITE, "Поставьте машину туда где будет парковка для подъезда и введите /podcrt");
return true;
}
}
return true;
}
CMD:kvartira(playerid, params[])
{
ALLKVARTIRI ++;
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
kvartinfo[ALLKVARTIRI][pXpic] = x;
kvartinfo[ALLKVARTIRI][pYpic] = y;
kvartinfo[ALLKVARTIRI][pZpic] = z;
strmid(kvartinfo[ALLKVARTIRI][vladelec], "None", 0, 5, 5);//Владелец
kvartinfo[ALLKVARTIRI][lock] = 0;//Двери
kvartinfo[ALLKVARTIRI][world] = GetPlayerVirtualWorld(playerid);//Вирт. мир подъезда
format(stringg, 200,"{0076FC}Комната #%d\nПродаётся: 100000 вирт\nЧтобы войти, нажмите кнопку 'ENTER'",ALLKVARTIRI);
kvartinfo[ALLKVARTIRI][dtext] = Create3DTextLabel(stringg,0x0076FCFF,x,y,z+1,3.0,GetPlayerVirtualWorld(playerid),1);
savekvart();
return true;
}
if(strcmp(cmd,"/podcrt", true)==0)
{
new Float:X,Float:Y,Float:Z,Float:Angle;
if(PlayerInfo[playerid][pAdmin] >= 8)
{
if(global[playerid] == 1)
{
GetVehiclePos(GetPlayerVehicleID(playerid), X,Y,Z);
GetPlayerFacingAngle(playerid,Angle);
DestroyVehicle(GetPlayerVehicleID(playerid));
PodeezdInfo[Allpodeezd][carX] = X;
PodeezdInfo[Allpodeezd][carY] = Y;
PodeezdInfo[Allpodeezd][carZ] = Z;
PodeezdInfo[Allpodeezd][carC] = Angle;
global[playerid] = 2;
SendClientMessage(playerid,COLOR_WHITE,"Встаньте туда где будет вход в подъезд и введите /podcreate");
return true;
}
}
}
if(strcmp(cmd,"/podcreate", true)==0)
{
new Float:X,Float:Y,Float:Z;
if(PlayerInfo[playerid][pAdmin] >= 8)
{
if(global[playerid] == 2)
{
global[playerid] = 0;
GetPlayerPos(playerid, X,Y,Z);
PodeezdInfo[Allpodeezd][podPicX] = X;
PodeezdInfo[Allpodeezd][podPicY] = Y;
PodeezdInfo[Allpodeezd][podPicZ] = Z;
PodeezdInfo[Allpodeezd][podPic] = CreatePickup(1318, 1, X, Y, Z);
savepodeezd();
return SendClientMessage(playerid, COLOR_WHITE, "Для правильной работы - перезагрузи сервер!");
}
}
}
PHP:
if(pickupid == podeezdi)
{
new i = GetPVarInt(playerid, "podeezd");
SetPlayerPos(playerid, PodeezdInfo[i][podPicX],PodeezdInfo[i][podPicY],PodeezdInfo[i][podPicZ]);
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid,0);
DeletePVar(playerid, "podeezd");
return true;
}
for(new g = 1; g <= Allpodeezd; g++)
{
if(pickupid == PodeezdInfo[g][podPic])
{
SetPVarInt(playerid, "podeezd", g);
new str[8], varv[100];
strcat(varv,"Парковка\n");
for(new f = 0; f < PodeezdInfo[g][podEtazi]; f++)
{
format(str, 10, "%d Этаж\n", f+1);
strcat(varv,str);
}
return SPD(playerid, D_POD, 2, "Лифт", varv, "Перейти", "Отмена");
}
}
PHP:
podeezdi = CreatePickup(1318, 1, 2238.9285,-1192.6212,1033.7969, -1);
LoadKvartir();// Загружаем квартиры в подъездах
LoadPodeezd();// Загружаем подъезды
PHP:
stock LoadKvartir()
{
new
arrCoords[8][64],
strFromFile2[500],
textt[500],
File: file = fopen("logs/kvart.cfg", io_read);
if(file)
{
for(new i = 1; i<= sizeof(kvartinfo); i++)
{
fread(file, strFromFile2);
split(strFromFile2, arrCoords, ',');
if(floatstr(arrCoords[0]) != 0.000000)
{
kvartinfo[i][pXpic] = floatstr(arrCoords[0]);//Вход
kvartinfo[i][pYpic] = floatstr(arrCoords[1]);//Вход
kvartinfo[i][pZpic] = floatstr(arrCoords[2]);//Вход
strmid(kvartinfo[i][vladelec], arrCoords[3], 0, strlen(arrCoords[3]), 32);//Владелец
kvartinfo[i][lock] = strval(arrCoords[4]);//Двери
kvartinfo[i][world] = strval(arrCoords[5]);//Вирт. мир подъезда
kvartinfo[i][aptek] = strval(arrCoords[6]);//Баланс
kvartinfo[i][plata] = strval(arrCoords[7]);//Аптечки
if(!strcmp(kvartinfo[i][vladelec],"None",true))format(textt, sizeof(textt),"{0076FC}Комната #%d\nПродаётся: 100000 вирт\nЧтобы войти, нажмите кнопку 'ENTER'",i);
else format(textt, sizeof(textt),"{00FC43}Комната #%d\nВладелец: %s\nЧтобы войти, нажмите кнопку 'ENTER'",i, kvartinfo[i][vladelec]);
kvartinfo[i][dtext] = Create3DTextLabel(textt,0x0076FCFF,kvartinfo[i][pXpic],kvartinfo[i][pYpic],kvartinfo[i][pZpic]+1,5.0,kvartinfo[i][world],1);
Create3DTextLabel("Чтобы выйти используйте клавишу 'Enter'\nДля входа в меню квартиры 'ALT'",0x0076FCFF,2282.9211,-1140.2861,1050.8984,5.0,i,1);
ALLKVARTIRI ++;
}
}
fclose(file);
printf("[ Загрузка ... ] %d квартир успешно загружено!",ALLKVARTIRI);
}
}
stock LoadPodeezd()
{
new arrCoords[8][64];
new strFromFile2[256];
new File: file = fopen("logs/podeezdi.cfg", io_read);
new Mir;
if(file)
{
for(new i = 1; i <= sizeof(PodeezdInfo); i++)
{
fread(file, strFromFile2);
split(strFromFile2, arrCoords, ',');
if(floatstr(arrCoords[0]) != 0.000000)
{
PodeezdInfo[i][podPicX] = floatstr(arrCoords[0]);
PodeezdInfo[i][podPicY] = floatstr(arrCoords[1]);
PodeezdInfo[i][podPicZ] = floatstr(arrCoords[2]);
PodeezdInfo[i][podEtazi] = strval(arrCoords[3]);
PodeezdInfo[i][carX] = floatstr(arrCoords[4]);
PodeezdInfo[i][carY] = floatstr(arrCoords[5]);
PodeezdInfo[i][carZ] = floatstr(arrCoords[6]);
PodeezdInfo[i][carC] = floatstr(arrCoords[7]);
Allpodeezd ++;
format(stringg, 123,"Многоквартирный дом\nНомер подъезда: %d",Allpodeezd);
Create3DTextLabel(stringg,0x0076FCFF,PodeezdInfo[i][podPicX],PodeezdInfo[i][podPicY],PodeezdInfo[i][podPicZ]+1,5.0,0,1);
PodeezdInfo[i][podPic] = CreatePickup(1318, 1, PodeezdInfo[i][podPicX], PodeezdInfo[i][podPicY], PodeezdInfo[i][podPicZ]);
PodeezdInfo[i][podIco] = CreateDynamicMapIcon(PodeezdInfo[i][podPicX], PodeezdInfo[i][podPicY], PodeezdInfo[i][podPicZ], 57, COLOR_YELLOW, 0, -1, -1, 400.0);
for(new b = 0; b <= PodeezdInfo[i][podEtazi]; b++)//Создаем вирт. миры для каждого этажа в подъезде
{
PodeezdInfo[i][podMir][b] = Mir, Mir ++;
}
}
}
fclose(file);
printf("[ Загрузка ... ] %d подъездов успешно загружены!",Allpodeezd);
}
}
В SetPlayerSpawn
PHP:
if(PlayerInfo[playerid][pKvartirakey] != 0)
{
if(SpawnChange[playerid])
{
for(new g = 1; g <= Allpodeezd; g++)
{
SetPVarInt(playerid, "podeezd", g);
SetPlayerPos(playerid,2283.3474,-1139.2313,1050.8984);
SetPlayerInterior(playerid,11);
SetPlayerVirtualWorld(playerid, PlayerInfo[playerid][pKvartirakey]);
return true;
}
}
}
PHP:
stock savepodeezd()
{
new File: file2, idx = 1;
while (idx <= Allpodeezd)
{
format(stringg, sizeof(stringg), "%f,%f,%f,%d,%f,%f,%f,%f\n",
PodeezdInfo[idx][podPicX],
PodeezdInfo[idx][podPicY],
PodeezdInfo[idx][podPicZ],
PodeezdInfo[idx][podEtazi],
PodeezdInfo[idx][carX],
PodeezdInfo[idx][carY],
PodeezdInfo[idx][carZ],
PodeezdInfo[idx][carC]);
if(idx == 1) { file2 = fopen("logs/podeezdi.cfg", io_write); }
else { file2 = fopen("logs/podeezdi.cfg", io_append); }
fwrite(file2, stringg);
idx++;
fclose(file2);
}
}
stock savekvart()
{
new File: file2, idx = 1;
while (idx <= ALLKVARTIRI)
{
format(stringg, sizeof(stringg), "%f,%f,%f,%s,%d,%d,%d,%d\n",
kvartinfo[idx][pXpic],
kvartinfo[idx][pYpic],
kvartinfo[idx][pZpic],
kvartinfo[idx][vladelec],
kvartinfo[idx][lock],
kvartinfo[idx][world],
kvartinfo[idx][aptek],
kvartinfo[idx][plata]);
if(idx == 1) { file2 = fopen("logs/kvart.cfg", io_write); }
else { file2 = fopen("logs/kvart.cfg", io_append); }
fwrite(file2, stringg);
idx++;
fclose(file2);
}
}
PHP:
stock updatekvar(idx)
{
if(!strcmp(kvartinfo[idx][vladelec],"None",true))format(stringg, 200,"{0076FC}Комната #%d\nПродаётся: 100000 вирт\nЧтобы войти, нажмите кнопку 'ENTER'",idx);
else format(stringg, 200,"{00FC43}Комната #%d\nВладелец: %s\nЧтобы войти, нажмите кнопку 'ENTER'",idx, kvartinfo[idx][vladelec]);
Update3DTextLabelText(kvartinfo[idx][dtext],0x0076FCFF,stringg);
}
PHP:
else if(newkeys & 1024)//Alt
{
if(IsPlayerInRangeOfPoint(playerid, 5,2283.0381,-1137.9327,1050.8984))return SPD(playerid, 8003, 2, "Меню комнаты","Купить комнату\nПродать комнату\nКвартплата\nДверной замок\nАптечка\nИнформация","Ок","Отмена");
}
else if(newkeys & KEY_SECONDARY_ATTACK)//enter
{
for(new i = 1; i <= ALLKVARTIRI; i++)
{
if(IsPlayerInRangeOfPoint(playerid, 2, kvartinfo[i][pXpic],kvartinfo[i][pYpic],kvartinfo[i][pZpic]) && kvartinfo[i][world] == GetPlayerVirtualWorld(playerid))
{
if(kvartinfo[i][lock] == 1 && PlayerInfo[playerid][pKvartirakey] != i)return GameTextForPlayer(playerid, "~r~Closed", 5000, 6);
SetPlayerPos(playerid,2283.3474,-1139.2313,1050.8984);
SetPlayerInterior(playerid,11);
SetPlayerVirtualWorld(playerid, i);
return true;
}
else if(IsPlayerInRangeOfPoint(playerid, 3, 2283.3474,-1139.2313,1050.8984))
{
new x = GetPlayerVirtualWorld(playerid);
SetPlayerPos(playerid, kvartinfo[x][pXpic],kvartinfo[x][pYpic],kvartinfo[x][pZpic]);
SetPlayerInterior(playerid,15);
SetPlayerVirtualWorld(playerid, kvartinfo[x][world]);
return true;
}
}
}
PHP:
case 8003:
{
if(response)
{
new i = GetPlayerVirtualWorld(playerid);
switch(listitem)
{
case 0: SPD(playerid, 8008, 0, "Подтверждение", "Вы точно хотите купить квартиру?\nПри продаже вам вернется 50% от стоимости.\nПри выселении вам ничего не вернется!", "Да", "Нет");
case 1: SPD(playerid, 8009, 0, "Подтверждение", "Вы точно хотите продать квартиру?", "Да", "Нет");
case 2: SPD(playerid, 8010, 2, "Квартплата", "Остаток\n - На час\n - На 5 часов\n - На сутки\n - На 3 суток\n - На неделю", "Перевести", "Отмена");
case 3:
{
if(i != PlayerInfo[playerid][pKvartirakey])return SendClientMessage(playerid, 0xFFFF00AA, "Вы не владелец данной квартиры!");
if(kvartinfo[i][lock] == 0) kvartinfo[i][lock] = 1, SendClientMessage(playerid, 0xFFFF00AA, "Дверь закрыта");
else kvartinfo[i][lock] = 0, SendClientMessage(playerid, 0xFFFF00AA, "Дверь открыта");
}
case 4:
{
if(kvartinfo[i][aptek] == 0) return SendClientMessage(playerid, COLOR_GREY, "В квартире нет аптечек");
else
{
kvartinfo[i][aptek] -= 1;
SetPlayerHealth(playerid, 100);
SendClientMessage(playerid, 0xFFFF00AA, "Вы вылечены");
}
}
case 5:
{
new lockkkk[8];
if(kvartinfo[i][lock] == 1)lockkkk = "Закрыто";
else lockkkk = "Открыто";
format(stringg,200,"{ffffff}Аптек: %d штук\n{ffffff}Дверной замок: %s \n",kvartinfo[i][aptek], lockkkk);
SPD(playerid,64,DIALOG_STYLE_MSGBOX,"Информация",stringg,"Ок","");
}
}
}
}
case 8008:
{
if(!response) return true;
new i = GetPlayerVirtualWorld(playerid);
if(!strcmp(kvartinfo[i][vladelec],"None",true))
{
if(PlayerInfo[playerid][pKvartirakey] != 0)return SendClientMessage(playerid, 0x9ACD32AA, "У вас уже есть квартира!");
if(PlayerInfo[playerid][pBank] < 100000) return SendClientMessage(playerid, COLOR_WHITE, "У вас нет столько денег!");
new playername[MAX_PLAYER_NAME];
GetPlayerName(playerid, playername, sizeof(playername));
strmid(kvartinfo[i][vladelec], playername, 0, strlen(playername), 32);
SendClientMessage(playerid, COLOR_WHITE, "Поздравляем с покупкой!");
SendClientMessage(playerid, 0xFFFF00AA, "Внимание! Вас могут выселить если квартира не будет вовремя оплачена");
SendClientMessage(playerid, 0xFFFF00AA, "Стоимость квартплаты: 200 вирт в час");
PlayerInfo[playerid][pBank] -= 100000;
PlayerInfo[playerid][pKvartirakey] = i;
PlayerInfo[playerid][pFuelcar] = 100;
if(PlayerInfo[playerid][pCar] == 0) { PlayerInfo[playerid][pCar] = 462; }
updatekvar(i);
savekvart();
OnPlayerUpdateRL(playerid);
return true;
}
else return SendClientMessage(playerid, 0xAA3333AA, "Эта квартира уже кем-то куплена");
}
case 8009:
{
if(!response) return true;
new i = GetPlayerVirtualWorld(playerid);
new x = PlayerInfo[playerid][pKvartirakey];
if(x != i)return SendClientMessage(playerid, COLOR_GREY, "Вы не владелец этой квартиры!");
strmid(kvartinfo[i][vladelec], "None", 0, strlen("None"), 5);
PlayerInfo[playerid][pKvartirakey] = 0;
kvartinfo[i][lock] = 0;
PlayerInfo[playerid][pBank] += 50000;
SendClientMessage(playerid, COLOR_WHITE, "Квартира продана");
SetPlayerPos(playerid,kvartinfo[i][pXpic],kvartinfo[i][pYpic],kvartinfo[i][pZpic]);
SetPlayerInterior(playerid,15);
SetPlayerVirtualWorld(playerid, kvartinfo[i][world]);
updatekvar(i);
savekvart();
OnPlayerUpdateRL(playerid);
return true;
}
case 8010:
{
if(!response) return true;
new i = GetPlayerVirtualWorld(playerid), dengi;
if(PlayerInfo[playerid][pKvartirakey] != i)return SendClientMessage(playerid, 0xAA3333AA, "Ты не у себя в квартире");
switch(listitem)
{
case 0:return SendMes(playerid, 0xFFFF00AA, "Оплачено на: %d вирт",kvartinfo[i][plata]);
case 1:dengi = 200;
case 2:dengi = 1000;
case 3:dengi = 4800;
case 4:dengi = 14400;
case 5:dengi = 33600;
}
if(kvartinfo[i][plata]+dengi > 35000)return SendClientMessage(playerid,COLOR_WHITE,"Вы не можете заплатить больше чем на неделю!");
if(PlayerInfo[playerid][pBank] < dengi)return SendClientMessage(playerid, 0xAA3333AA, "Не хватает денег");
kvartinfo[i][plata] += dengi;
PlayerInfo[playerid][pBank] -= dengi;
SendMes(playerid, 0xFFFF00AA,"Вы перевели: %d вирт", dengi);
return true;
}
case D_POD:
{
if(!response) return true;
if(listitem == 0)
{
if(PlayerInfo[playerid][pKvartirakey] != 0)
{
if(PlayerInfo[playerid][pCar] == 462)return SendClientMessage(playerid,COLOR_GRAD1,"У вас нету транспортного средства");
new hh = GetPVarInt(playerid, "podeezd");
DestroyVehicle(caridkvart[playerid]);
caridkvart[playerid] = CreateVehicle(PlayerInfo[playerid][pCar], PodeezdInfo[hh][carX], PodeezdInfo[hh][carY], PodeezdInfo[hh][carZ], PodeezdInfo[hh][carC], PlayerInfo[playerid][pCvet] , PlayerInfo[playerid][pCvet],5600);
createdcar = caridkvart[playerid];
Fuell[caridkvart[playerid]] = PlayerInfo[playerid][pFuelcar];
createdcar ++;
DeletePVar(playerid, "podeezd");
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
GetPlayerName(playerid,playername,sizeof(playername));
format(stringg,sizeof(stringg),"accounts/%s.ini",playername);
RepairVehicle(caridkvart[playerid]);
SetVehicleNumberPlate(caridkvart[playerid], PlayerInfo[playerid][pNumbercar]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pVozduho1]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pVozduho2]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pKolesocar]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pNitro]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pGidra]);
if(PJ(caridhouse[playerid]))
{
ChangeVehiclePaintjob(caridkvart[playerid], PlayerInfo[playerid][pPokraska]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pSpoiler]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pBamper1]);
AddVehicleComponent (caridkvart[playerid], PlayerInfo[playerid][pBamper2]);
}
}
else return SendClientMessage(playerid, COLOR_RED, "У тебя нет квартиры");
}
else
{
new i = GetPVarInt(playerid, "podeezd");
SetPlayerPos(playerid, 2240.9590, -1190.6875, 1033.7969);
SetPlayerVirtualWorld(playerid, PodeezdInfo[i][podMir][listitem-1]);
SetPlayerInterior(playerid,15);
}
return true;
}
PHP:
new kvartira = PlayerInfo[i][pKvartirakey];
if(PlayerInfo[i][pKvartirakey] != 0)
{
SendClientMessage(i, COLOR_WHITE, "- Плата за электричество квартиры: 200 Вирт");
if(kvartinfo[kvartira][plata] <= 0)
{
kvartinfo[kvartira][aptek] = 0;
kvartinfo[kvartira][lock] = 0;
strmid(kvartinfo[kvartira][vladelec], "None", 0, strlen("None"), 10);
SendClientMessage(i, COLOR_REDD, "Ваша квартира продана, за неуплату электроэнергии!");
DestroyVehicle(caridkvart[i]);
kvartinfo[kvartira][plata] = 0;
PlayerInfo[i][pKvartirakey] = 0;
savekvart();
updatekvar(i);
}
kvartinfo[kvartira][plata] -= 200;
}
Не забудьте найти плагин sscanf'a и в plugins (server.cfg и в папку) подключить его, иначе мод может не запускаться.
Благотворительность:
WMR : R391888840984
WMU : U166502154283
WMZ : Z280785601888
Если кому-то надо, то вот :
Ссылки на файлы которые должны присутствовать в scriptfiles/logs
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
Пароль для скачек :
Pawno-Info.Ru
В них расставлено 12 подъездов и 390 квартир!
Последнее редактирование модератором:
