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

Авто и координаты

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

Marvellous

Всем привет!

У меня есть такая проблема...

Я уже тему создавал ранее,но так и не смогли решить и потом я не мог заходить на форум и ее удалили!

 

И так,сама проблема в том,что я покупаю авто в автосалоне и оставляю к примеру машину возле банка,но после рестарта сервера,машина вообще спавниться не возле банка а не понятно где,как можно решить такую проблему?

Команды /apark и /park не помогают....

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


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

Дай покупку авто, потом смотри удаление авто, забыл как называется :D83DDE02:

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


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

if(GetVehicleTyp(carid) == 2)// Отечественные
{
carid = CreateVehicle(vmodel,2760.0281,-2447.4827,21.7029,180.1658,random(200),random(200),60000);
SetPlayerCheckpoint(playerid,2760.0281,-2447.4827,21.7029,5.0);
}
RemovePlayerFromVehicle(playerid);
eGivePlayerMoney(playerid, - GetVehiclePrice(carid));
new rand = 4564488 + random(456461);
CarInfo[OWNABLECARS-1][cID] = rand;
strmid(CarInfo[OWNABLECARS-1][cNomer],"Без номера",0,strlen("Без номера"),20);
strmid(CarInfo[OWNABLECARS-1][cOwner],gn(playerid),0,strlen(gn(playerid)),25);
CarInfo[OWNABLECARS-1][cModel] = vmodel;
CarInfo[OWNABLECARS-1][cParkPos][0] = 2075.8679;
CarInfo[OWNABLECARS-1][cParkPos][1] = -1918.8192;
CarInfo[OWNABLECARS-1][cParkPos][2] = 18.6811;
CarInfo[OWNABLECARS-1][cParkPos][3] = 270.0477;
CarInfo[OWNABLECARS-1][cColor][0] = random(200);
CarInfo[OWNABLECARS-1][cColor][1] = random(200);
CarInfo[OWNABLECARS-1][cLock] = 1;
CarInfo[OWNABLECARS-1][cPrice] = GetVehiclePrice(carid);
CarInfo[OWNABLECARS-1][cKey] = 0;
CarInfo[OWNABLECARS-1][cTeh] = 0;
CarInfo[OWNABLECARS-1][cStrah] = 0;
CarInfo[OWNABLECARS-1][cCar] = carid;
CarInfo[OWNABLECARS-1][cMoney] = 0;
CarInfo[OWNABLECARS-1][cMats] = 0;
CarInfo[OWNABLECARS-1][cDrugs] = 0;
forEx(ga,4)
{
CarInfo[OWNABLECARS-1][cGun][ga] = 0;
CarInfo[OWNABLECARS-1][cAmmo][ga] = 0;
}
CarInfo[OWNABLECARS-1][cKM] = 0.0;
CarInfo[OWNABLECARS-1][cNitro] = 0;
CarInfo[OWNABLECARS-1][cPaintJob] = -1;
CarInfo[OWNABLECARS-1][cWheels] = 0;
CarInfo[OWNABLECARS-1][cHydr] = 0;
CarInfo[OWNABLECARS-1][cNeon][0] = 0;
CarInfo[OWNABLECARS-1][cNeon][1] = 0;
CarInfo[OWNABLECARS-1][cNomText] = Create3DTextLabel(CarInfo[OWNABLECARS-1][cNomer],0xFFFF00FF,7.77,7.77,7.77,5.0,0,1);
Attach3DTextLabelToVehicle(CarInfo[OWNABLECARS-1][cNomText],CarInfo[OWNABLECARS-1][cCar],0.0,0.0,1.3);
SaveStuff("OWNABLECARS",OWNABLECARS);
new insert[570];
format(insert,sizeof(insert),"INSERT INTO `cars` (ID,nomer,owner,model,X,Y,Z,A,color1,color2,lock,price,key,teh,strah,money,mats,drugs,gun0,gun1,gun2,gun3,gun4,\
ammo0,ammo1,ammo2,ammo3,ammo4,KM,nitro,paintjob,wheels,hydr,neon1,neon2) VALUES (%i,'%s','%s',%i,%f,%f,%f,%f,%i,%i,1,%i,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,%f,0,-1,0,0,0,0)",
CarInfo[OWNABLECARS-1][cID],CarInfo[OWNABLECARS-1][cNomer],CarInfo[OWNABLECARS-1][cOwner],CarInfo[OWNABLECARS-1][cModel],
CarInfo[OWNABLECARS-1][cParkPos][0],CarInfo[OWNABLECARS-1][cParkPos][1],CarInfo[OWNABLECARS-1][cParkPos][2],
CarInfo[OWNABLECARS-1][cParkPos][3],CarInfo[OWNABLECARS-1][cColor][0],CarInfo[OWNABLECARS-1][cColor][1],
CarInfo[OWNABLECARS-1][cPrice],CarInfo[OWNABLECARS-1][cKM]);
db_query(Cars,insert);
db_query(Cars,"PRAGMA synchronous=OFF; PRAGMA journal_mode=OFF;");
SCM(playerid,-1,"Поздравляем с покупкой транспортного средства!");
SCM(playerid,-1,"OOC: Ваша машина на красном маркере, команды смотрите в /help");
}
case 143:
{
if(!response) return 1;
new s[10];
format(s,sizeof(s),"cars_%i",listitem);
new Float:pos[3],cars = GPVI(playerid,s);
GetVehiclePos(cars,pos[0],pos[1],pos[2]);
SetPlayerCheckpoint(playerid,pos[0],pos[1],pos[2],5.0);
forEx(del,5)
{
format(s,10,"cars_%i",del);
DPVR(playerid,s);
}
return 1;
}
Изменено пользователем Marvellous

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


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

Up

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


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

У тебя авто при выходе с сервера удаляется?

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


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

,нет!оно остается там где его оставил хозяин авто,но после рестарта,оно респавниться не на том же месте,а рандомно! 

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


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

@Marvellous,сохранение координат авто идет в БД? 

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


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

,У меня не БД У меня Астера мод! Файловый(думаю понял)

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


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

@Marvellous,Понял, но все равно. Скинь LoaCars или как у тебя.

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


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

, Ты это имел ввиду? ТЫЦ

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


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

@Marvellous,сток смотри, где у тебя авто подгружается!  

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


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

,Ну вот это я как понимаю сохранение идет

stock SaveVehiclePos(carid)
{
	new s[120],CAR = PersonalVehicle(carid);
	GetVehiclePos(carid,CarInfo[CAR][cParkPos][0],CarInfo[CAR][cParkPos][1],CarInfo[CAR][cParkPos][2]);
	GetVehicleZAngle(carid,CarInfo[CAR][cParkPos][3]);
 	format(s,sizeof(s),"UPDATE `cars` SET X=%f,Y=%f,Z=%f,A=%f WHERE ID=%i",CarInfo[CAR][cParkPos][0],
	CarInfo[CAR][cParkPos][1],CarInfo[CAR][cParkPos][2],CarInfo[CAR][cParkPos][3],CarInfo[CAR][cID]);
	db_query(Cars,s);
	db_query(Cars,"PRAGMA synchronous=OFF; PRAGMA journal_mode=OFF;");
} 

Вот это не понял что такое

stock UpdateCars(str[],value,var)
{
	new query[150];
    format(query,sizeof(query),"UPDATE `cars` SET '%s'=%i WHERE ID=%i",str,value,var);
	db_query(Cars,query);
	db_query(Cars,"PRAGMA synchronous=OFF; PRAGMA journal_mode=OFF;");
} 

Это я как понимаю на открытие/закрытие авто(извини если не прав)

stock LockCar(carid)
{
 	foreach(Player, i)
	{
	    if(IsPlayerNPC(i)) continue;
		SetVehicleParamsForPlayer(carid,i,0,1);
	}
}
stock UnLockCar(carid)
{
 	foreach(Player, i)
	{
		if(IsPlayerNPC(i)) continue;
		if(!TypPlane(carid))
		{
			SetVehicleParamsForPlayer(carid,i,0,0);
		}
	}
} 

Все,вроде стоков у меня нет больше по авто

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


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

@Marvellous,подгрузку дай! 

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


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

,Сори,как ее найти можно?  

Или может загрузку лучше еще скину вот:

LoadCars()
{
	db = db_query(Cars,"SELECT * FROM `cars`");
	new i,buffer[24];
	while(i != db_num_rows(db))
	{
	    db_get_field_assoc(db,"ID",buffer,24); CarInfo[i][cID] = strval(buffer);
	    db_get_field_assoc(db,"nomer",buffer,20); format(CarInfo[i][cNomer],20,"%s",buffer);
	    db_get_field_assoc(db,"owner",buffer,24); format(CarInfo[i][cOwner],24,"%s",buffer);
	    db_get_field_assoc(db,"model",buffer,3); CarInfo[i][cModel] = strval(buffer);
	    db_get_field_assoc(db,"X",buffer,15); CarInfo[i][cParkPos][0] = floatstr(buffer);
	    db_get_field_assoc(db,"Y",buffer,15); CarInfo[i][cParkPos][1] = floatstr(buffer);
	    db_get_field_assoc(db,"Z",buffer,15); CarInfo[i][cParkPos][2] = floatstr(buffer);
	    db_get_field_assoc(db,"A",buffer,15); CarInfo[i][cParkPos][3] = floatstr(buffer);
        db_get_field_assoc(db,"color1",buffer,10); CarInfo[i][cColor][0] = strval(buffer);
        db_get_field_assoc(db,"color2",buffer,10); CarInfo[i][cColor][1] = strval(buffer);
        db_get_field_assoc(db,"lock",buffer,10); CarInfo[i][cLock] = strval(buffer);
        db_get_field_assoc(db,"price",buffer,10); CarInfo[i][cPrice] = strval(buffer);
        db_get_field_assoc(db,"key",buffer,10); CarInfo[i][cKey] = strval(buffer);
        db_get_field_assoc(db,"teh",buffer,10); CarInfo[i][cTeh] = strval(buffer);
        db_get_field_assoc(db,"strah",buffer,10); CarInfo[i][cStrah] = strval(buffer);
        db_get_field_assoc(db,"money",buffer,15); CarInfo[i][cMoney] = strval(buffer);
        db_get_field_assoc(db,"mats",buffer,15); CarInfo[i][cMats] = strval(buffer);
        db_get_field_assoc(db,"drugs",buffer,15); CarInfo[i][cDrugs] = strval(buffer);
        db_get_field_assoc(db,"gun0",buffer,10); CarInfo[i][cGun][0] = strval(buffer);
        db_get_field_assoc(db,"gun1",buffer,10); CarInfo[i][cGun][1] = strval(buffer);
        db_get_field_assoc(db,"gun2",buffer,10); CarInfo[i][cGun][2] = strval(buffer);
        db_get_field_assoc(db,"gun3",buffer,10); CarInfo[i][cGun][3] = strval(buffer);
        db_get_field_assoc(db,"gun4",buffer,10); CarInfo[i][cGun][4] = strval(buffer);
        db_get_field_assoc(db,"ammo0",buffer,10); CarInfo[i][cAmmo][0] = strval(buffer);
        db_get_field_assoc(db,"ammo1",buffer,10); CarInfo[i][cAmmo][1] = strval(buffer);
        db_get_field_assoc(db,"ammo2",buffer,10); CarInfo[i][cAmmo][2] = strval(buffer);
        db_get_field_assoc(db,"ammo3",buffer,10); CarInfo[i][cAmmo][3] = strval(buffer);
        db_get_field_assoc(db,"ammo4",buffer,10); CarInfo[i][cAmmo][4] = strval(buffer);
        db_get_field_assoc(db,"KM",buffer,15); CarInfo[i][cKM] = floatstr(buffer);
        db_get_field_assoc(db,"nitro",buffer,10); CarInfo[i][cNitro] = strval(buffer);
        db_get_field_assoc(db,"paintjob",buffer,10); CarInfo[i][cPaintJob] = strval(buffer);
        db_get_field_assoc(db,"wheels",buffer,10); CarInfo[i][cWheels] = strval(buffer);
        db_get_field_assoc(db,"hydr",buffer,10); CarInfo[i][cHydr] = strval(buffer);
        db_get_field_assoc(db,"neon1",buffer,10); CarInfo[i][cNeon][0] = strval(buffer);
        db_get_field_assoc(db,"neon2",buffer,10); CarInfo[i][cNeon][1] = strval(buffer);

        CarInfo[i][cCar] = AddStaticVehicleEx(CarInfo[i][cModel],CarInfo[i][cParkPos][0],CarInfo[i][cParkPos][1],CarInfo[i][cParkPos][2],CarInfo[i][cParkPos][3],CarInfo[i][cColor][0],CarInfo[i][cColor][1],300000);
        CarInfo[i][cNomText] = Create3DTextLabel(CarInfo[i][cNomer],0xFFFF00FF,7.77,7.77,7.77,5.0,0,1);
        Attach3DTextLabelToVehicle(CarInfo[i][cNomText],CarInfo[i][cCar],0.0,0.0,1.3);
		if(CarInfo[i][cPaintJob] != -1) ChangeVehiclePaintjob(CarInfo[i][cCar],CarInfo[i][cPaintJob]);
		if(CarInfo[i][cWheels] != 0) AddVehicleComponent(CarInfo[i][cCar],CarInfo[i][cWheels]);
        if(CarInfo[i][cHydr] != 0) AddVehicleComponent(CarInfo[i][cCar],CarInfo[i][cHydr]);
        if(CarInfo[i][cNitro] != 0) AddVehicleComponent(CarInfo[i][cCar],CarInfo[i][cNitro]);
        /*if(CarInfo[i][cNeon][0] != 0)
		{
		    //DestroyObject(neon[i][1]);
		    //DestroyObject(neon[i][2]);
		    neon[i][1] = CreateObject(CarInfo[i][cNeon][0],0,0,0,0,0,0,100.0);
		    neon[i][2] = CreateObject(CarInfo[i][cNeon][1],0,0,0,0,0,0,100.0);
		    AttachObjectToVehicle(neon[i][1], CarInfo[i][cCar], -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
		    AttachObjectToVehicle(neon[i][2], CarInfo[i][cCar], 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
		    
		    printf("Neon: %i | i: %i | CarInfo[i][cCar]: %i | neon[i][1]: %i",CarInfo[i][cNeon][0], i, CarInfo[i][cCar], neon[i][1]);
		    printf("Neon: %i | i: %i | CarInfo[i][cCar]: %i | neon[i][2]: %i",CarInfo[i][cNeon][1], i, CarInfo[i][cCar], neon[i][2]);
		}*/
		i++;
        db_next_row(db);
    }
    AllCars = i;
    printf("AllCars: %i",AllCars);
    db_free_result(db);
	return 1;
}

И еще смотри  у меня в логах почему то 0 стоит

[12:41:35] Телепорты успешно загружены!
[12:41:35] Дома успешно загружены!
[12:41:35] Система общаков Русской мафии успешно загружена!
[12:41:35] Система общаков Украинских успешно загружена!
[12:41:35] Система общаков Азиатских успешно загружена!
[12:41:35] Система общаков Триады успешно загружена!
[12:41:35] AllCars: 0
[12:41:35] Всего подъездов: 0
[12:41:35] Бизнесы успешно загружены!
[12:41:35] Кол-во машин: 314

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


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

При парковке машину через команду /park проблема остается?

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


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

 

 


И так,сама проблема в том,что я покупаю авто в автосалоне и оставляю к примеру машину возле банка,но после рестарта сервера,машина вообще спавниться не возле банка а не понятно где,как можно решить такую проблему? Команды /apark и /park не помогают....

 

И так,сама проблема в том,что я покупаю авто в автосалоне и оставляю к примеру машину возле банка,но после рестарта сервера,машина вообще спавниться не возле банка а не понятно где,как можно решить такую проблему?

Команды /apark и /park не помогают....

 

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


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

up

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


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

Команду /park и /apark сюда скинь

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


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

@#Pawno

if(strcmp(cmd, "/park", true) == 0)
	{
	    if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid,-1,"Вы должны быть в транспортном средстве!");
	    new carid = GetPlayerVehicleID(playerid),cars = PersonalVehicle(carid);
	    if(!GetPersonalVehicle(carid)) return 1;
		if(!strcom(gn(playerid),CarInfo[cars][cOwner],true)) return SCM(playerid,-1,"Вы должны находиться в своем транспортном средстве!");
	    new s[130];
		GetVehiclePos(carid,CarInfo[cars][cParkPos][0],CarInfo[cars][cParkPos][1],CarInfo[cars][cParkPos][2]);
		GetVehicleZAngle(carid,CarInfo[cars][cParkPos][3]);
		format(s,sizeof(s),"UPDATE `cars` SET X=%f,Y=%f,Z=%f,A=%f WHERE ID=%i",
		CarInfo[cars][cParkPos][0],CarInfo[cars][cParkPos][1],CarInfo[cars][cParkPos][2],
		CarInfo[cars][cParkPos][3],CarInfo[cars][cID]);
		db_query(Cars,s);
		db_query(Cars,"PRAGMA synchronous=OFF; PRAGMA journal_mode=OFF;");
		eGivePlayerMoney(playerid,-500);
	    SCM(playerid,-1,"Вы припарковали свое авто на этом месте!");
	    return 1;
	}
if(strcmp(cmd, "/apark", true) == 0)
	{
	    if(Account[playerid][pAdmin] < 10) return 1;
	    if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SCM(playerid,-1,"Вы должны быть в транспортном средстве!");
	    new carid = GetPlayerVehicleID(playerid),cars = PersonalVehicle(carid);
	    if(!GetPersonalVehicle(carid)) return 1;
	    new s[130];
		GetVehiclePos(carid,CarInfo[cars][cParkPos][0],CarInfo[cars][cParkPos][1],CarInfo[cars][cParkPos][2]);
		GetVehicleZAngle(carid,CarInfo[cars][cParkPos][3]);
		format(s,sizeof(s),"UPDATE `cars` SET X=%f,Y=%f,Z=%f,A=%f WHERE ID=%i",
		CarInfo[cars][cParkPos][0],CarInfo[cars][cParkPos][1],CarInfo[cars][cParkPos][2],
		CarInfo[cars][cParkPos][3],CarInfo[cars][cID]);
		db_query(Cars,s);
		db_query(Cars,"PRAGMA synchronous=OFF; PRAGMA journal_mode=OFF;");
	    SCM(playerid,-1,"Вы припарковали это авто на этом месте!");
	    return 1;
	}

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


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

Модеры закройте тему,ответов в ней я так и не дождался! Сам уже решил проблему!

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


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

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

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

×

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

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