NybikSry
Умник
/setspawn спавнит не там где надо... в пустыне ***
PHP:
forward LoadHouse();
public LoadHouse()
{
new time = GetTickCount(), rows, fields;
cache_get_data(rows, fields);
for(new i; i < TOTALHOUSE; i++) strmid(HouseInfo[i][hOwner],"None",0,strlen("None"),MAX_PLAYER_NAME);
if(rows)
{
for(new idx = 1; idx <= rows; idx++)
{
HouseInfo[idx][hID] = cache_get_row_int(idx-1, 0, dbHandle); // id
HouseInfo[idx][hEntrx] = cache_get_row_float(idx-1, 1, dbHandle); // hEntrx
HouseInfo[idx][hEntry] = cache_get_row_float(idx-1, 2, dbHandle); // hEntry
HouseInfo[idx][hEntrz] = cache_get_row_float(idx-1, 3, dbHandle); // hEntrz
HouseInfo[idx][hExitx] = cache_get_row_float(idx-1, 4, dbHandle); // hExitx
HouseInfo[idx][hExity] = cache_get_row_float(idx-1, 5, dbHandle); // hExity
HouseInfo[idx][hExitz] = cache_get_row_float(idx-1, 6, dbHandle); // hExitz
HouseInfo[idx][hCarx] = cache_get_row_float(idx-1, 7, dbHandle); // carx
HouseInfo[idx][hCary] = cache_get_row_float(idx-1, 8, dbHandle); // cary
HouseInfo[idx][hCarz] = cache_get_row_float(idx-1, 9, dbHandle); // carz
HouseInfo[idx][hCarfa] = cache_get_row_float(idx-1, 10, dbHandle); // carfa
cache_get_row(idx-1, 11, HouseInfo[idx][hOwner], dbHandle, MAX_PLAYER_NAME); // hOwner
cache_get_row(idx-1, 12, HouseInfo[idx][hDiscript], dbHandle, 16); // hDiscript
HouseInfo[idx][hPrice] = cache_get_row_int(idx-1, 13, dbHandle); // hPrice
HouseInfo[idx][hBuyPrice] = cache_get_row_int(idx-1, 14, dbHandle); // buyprice
HouseInfo[idx][hInt] = cache_get_row_int(idx-1, 15, dbHandle); // hInt
HouseInfo[idx][hVirtual] = cache_get_row_int(idx-1, 16, dbHandle); // hVirtual
HouseInfo[idx][hLock] = cache_get_row_int(idx-1, 17, dbHandle); // hLock
HouseInfo[idx][hOplata] = cache_get_row_int(idx-1, 18, dbHandle); // hOplata
HouseInfo[idx][hHeal] = cache_get_row_int(idx-1, 19, dbHandle); // hHeal
HouseInfo[idx][hGarage] = cache_get_row_int(idx-1, 20, dbHandle); // hGarage
HouseInfo[idx][hAutoDoors] = cache_get_row_int(idx-1, 21, dbHandle); // hAutoDoors
if(!strcmp(HouseInfo[idx][hOwner],"None",true))
{
HouseInfo[idx][hMIcon] = CreateDynamicMapIcon(HouseInfo[idx][hEntrx], HouseInfo[idx][hEntry], HouseInfo[idx][hEntrz], 31, 0,-1,-1,-1,150.0);
HouseInfo[idx][hPickup] = CreateDynamicPickup(1273, 1, HouseInfo[idx][hEntrx], HouseInfo[idx][hEntry], HouseInfo[idx][hEntrz]);
}
else
{
HouseInfo[idx][hMIcon] = CreateDynamicMapIcon(HouseInfo[idx][hEntrx], HouseInfo[idx][hEntry], HouseInfo[idx][hEntrz], 32, 0,-1,-1,-1,150.0);
HouseInfo[idx][hPickup] = CreateDynamicPickup(19522, 1, HouseInfo[idx][hEntrx], HouseInfo[idx][hEntry], HouseInfo[idx][hEntrz]);
}
if(!HouseInfo[idx][hAutoDoors])
{
HouseInfo[idx][hPickupExit] = CreateDynamic3DTextLabel("Для выхода введите '/exit'\nУправление домом: '/hmenu'",0xFFFF00FF,HouseInfo[idx][hExitx], HouseInfo[idx][hExity], HouseInfo[idx][hExitz],6.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,1,HouseInfo[idx][hVirtual],HouseInfo[idx][hInt]);
}
else
{
HouseInfo[idx][hPickupExit] = CreateDynamic3DTextLabel("Для выхода нажмите 'Левый ALT'\nУправление домом: '/hmenu'",0xFFFF00FF,HouseInfo[idx][hExitx], HouseInfo[idx][hExity], HouseInfo[idx][hExitz],6.0,INVALID_PLAYER_ID,INVALID_VEHICLE_ID,1,HouseInfo[idx][hVirtual],HouseInfo[idx][hInt]);
}
TOTALHOUSE++;
}
}
printf("[Загружено домов]: <%i>. Потрачено: <%i ms>.", TOTALHOUSE, GetTickCount() - time);
return 1;
}
PHP:
case D_SETSPAWN:
{
if(!response) return 1;
switch(listitem)
{
case 0:
{
PI[playerid][pSpawnChange] = 0;
}
case 1:
{
if(!GetPlayerHouse(playerid)) return SendClientMessage(playerid, COLOR_GREY, "У вас нет дома!");
PI[playerid][pSpawnChange] = 1;
}
case 2:
{
if(PI[playerid][pMember] == 0) return SendClientMessage(playerid, COLOR_GREY, "Вы не состоите в организации!");
PI[playerid][pSpawnChange] = 2;
}
}
SendClientMessage(playerid, COLOR_BLUE, "Ваше место появления в игре изменено");
MysqlUpdatePlayerInt(playerid, "spawnchange", PI[playerid][pSpawnChange]);
}
PHP:
else if(GetPlayerHouse(playerid) && PI[playerid][pSpawnChange] == 1)
{
new i = GetPVarInt(playerid, "PlayerHouse");
SetPlayerPos(playerid, HouseInfo[i][hExitx],HouseInfo[i][hExity], HouseInfo[i][hExitz]);
SetPlayerInterior(playerid, HouseInfo[i][hInt]);
SetPlayerVirtualWorld(playerid, HouseInfo[i][hVirtual]);
}
else if(PI[playerid][pMember] == TEAM_LSMAYOR && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 355.0304,184.7031,1008.3793);
SetPlayerFacingAngle(playerid, 180.8081);
SetCameraBehindPlayer(playerid);
SetPlayerInterior(playerid, 3);
SetPlayerVirtualWorld(playerid, 1);
}
else if(PI[playerid][pMember] == TEAM_SFMAYOR && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 355.0304,184.7031,1008.3793);
SetPlayerFacingAngle(playerid, 180.8081);
SetCameraBehindPlayer(playerid);
SetPlayerInterior(playerid, 3);
SetPlayerVirtualWorld(playerid, 2);
}
else if(PI[playerid][pMember] == TEAM_LVMAYOR && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 355.0304,184.7031,1008.3793);
SetPlayerFacingAngle(playerid, 180.8081);
SetCameraBehindPlayer(playerid);
SetPlayerInterior(playerid, 3);
SetPlayerVirtualWorld(playerid, 3);
}
else if(PI[playerid][pMember] == TEAM_LSPD && PI[playerid][pSpawnChange] == 2)
{
SetPlayerInterior(playerid, 6);
SetPlayerPos(playerid,231.9346,73.5820,1005.0391);
SetPlayerFacingAngle(playerid, 269.3590);
SetCameraBehindPlayer(playerid);
SetPlayerVirtualWorld(playerid, 1);
}
else if(PI[playerid][pMember] == TEAM_SFPD && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid,225.1647,121.0442,999.7786);
SetPlayerFacingAngle(playerid, 89.0);
SetCameraBehindPlayer(playerid);
FreezePlayer(playerid, 2000);
SetPlayerInterior(playerid, 10);
SetPlayerVirtualWorld(playerid, 0);
}
else if(PI[playerid][pMember] == TEAM_FBI && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 629.8229,59.8855,1004.4370);
SetPlayerFacingAngle(playerid, 175.7437);
SetCameraBehindPlayer(playerid);
FreezePlayer(playerid, 2000);
SetPlayerInterior(playerid, 2);
SetPlayerVirtualWorld(playerid, 0);
}
else if(PI[playerid][pMember] == TEAM_LSHOSPITAL && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 334.6403,1560.7749,1084.1450);
SetPlayerFacingAngle(playerid, 91.6010);
SetCameraBehindPlayer(playerid);
FreezePlayer(playerid, 2000);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 4);
InHospital[playerid] = true;
}
else if(PI[playerid][pMember] == TEAM_SFHOSPITAL && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 334.6403,1560.7749,1084.1450);
SetPlayerFacingAngle(playerid, 91.6010);
SetCameraBehindPlayer(playerid);
FreezePlayer(playerid, 2000);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 5);
InHospital[playerid] = true;
}
else if(PI[playerid][pMember] == TEAM_LVHOSPITAL && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, 334.6403,1560.7749,1084.1450);
SetPlayerFacingAngle(playerid, 91.6010);
SetCameraBehindPlayer(playerid);
FreezePlayer(playerid, 2000);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 6);
InHospital[playerid] = true;
}
else if(PI[playerid][pMember] == TEAM_AUTOSCHOOL && PI[playerid][pSpawnChange] == 2)
{
SetPlayerPos(playerid, -2026.8438,-108.7701,35.1829);
SetPlayerFacingAngle(playerid, 154.2771);
SetCameraBehindPlayer(playerid);
FreezePlayer(playerid, 2000);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
Последнее редактирование:
