Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!: Обмен авто - Форум Pawn-Wiki.Ru - Воплоти мечту в реальность!

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Pawn ]
Обмен авто

#1
Пользователь офлайн   Dati4o 

  • Новичок
  • Вставить ник
  • Раскрыть информацию
Здравствуйте. Столкнулся с проблемой что при обмене машинами между игроками, после перезахода не сохраняет цвет машины который был у меня , тоесть если я обменял султан желтего цвета на туризмо белого цвета, то у меня будет туризмо желтого цвета, а у него султан белго. Но проблема только в сохранении, т.к до перезахода все хорошо

case 4123: {
			new id = CarOffer[playerid],
				cost = CarPrice[playerid];

			CarOffer[playerid] = INVALID_PLAYER_ID;
			CarPrice[playerid] = 0;

			if(!response) return SCM(id, COLOR_LIGHTRED, !"Игрок отказался от сделки");

			new 
				proc = pInfo[playerid][pProcent],
				car = pInfo[playerid][pCar],
				color1 = pInfo[playerid][pCvet][0],
				color2 = pInfo[playerid][pCvet][1],
				comp[13],
				Float:mil = pInfo[playerid][pMiliage],
				car_ = caridhouse[playerid];

			pInfo[playerid][pProcent] = pInfo[id][pProcent];	
			pInfo[id][pProcent] = proc;
			
			pInfo[playerid][pCar] = pInfo[id][pCar];
			pInfo[id][pCar] = car;
			
			pInfo[playerid][pMiliage] = pInfo[id][pMiliage];
			pInfo[id][pMiliage] = mil;

			pInfo[playerid][pCvet][0] = pInfo[id][pCvet][0];
			pInfo[playerid][pCvet][1] = pInfo[id][pCvet][1];
			pInfo[id][pCvet][0] = color1;
			pInfo[id][pCvet][1] = color2;
			
			for(new i; i < 13; i++) {
				comp[i] = pInfo[playerid][pComponent][i];

				pInfo[playerid][pComponent][i] = pInfo[id][pComponent][i];	
				pInfo[id][pComponent][i] = comp[i];
			}
			
			caridhouse[playerid] = caridhouse[id];
			caridhouse[id] = car_;

			pInfo[id][pCash] -= cost;
			pInfo[playerid][pCash] += cost;

			sql_str[0] = EOS;
			format(sql_str, sizeof(sql_str), "UPDATE accounts SET procent=%d, car=%d, cash=%d, `component` = '%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d' WHERE id=%d", 
				pInfo[playerid][pProcent], pInfo[playerid][pCar], pInfo[playerid][pCash], pInfo[playerid][pComponent][0],pInfo[playerid][
pComponent][1],pInfo[playerid][pComponent][2],
pInfo[playerid][pComponent][3],
				pInfo[playerid][pComponent][4],pInfo[playerid][
pComponent][5],pInfo[playerid][pComponent][6],
pInfo[playerid][pComponent][7],
				pInfo[playerid][pComponent][8],pInfo[playerid][
pComponent][9],pInfo[playerid][pComponent][10]
,pInfo[playerid][pComponent][11],
				pInfo[playerid][pComponent][12],pInfo[playerid][
pID]);
			mysql_tquery(dbHandle, sql_str);

			sql_str[0] = EOS;
			format(sql_str, sizeof(sql_str), "UPDATE accounts SET procent=%d, car=%d, cash=%d, `component` = '%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d' WHERE id=%d", 
				pInfo[id][pProcent], pInfo[id][pCar], pInfo[id][pCash], pInfo[id][pComponent][0],pInfo[id][pComponent]
[1],pInfo[id][pComponent][2],pInfo[id][
pComponent][3],
				pInfo[id][pComponent][4],pInfo[id][pComponent]
[5],pInfo[id][pComponent][6],pInfo[id][
pComponent][7],
				pInfo[id][pComponent][8],pInfo[id][pComponent]
[9],pInfo[id][pComponent][10],pInfo[id][
pComponent][11],
				pInfo[id][pComponent][12],pInfo[id][pID]);

			mysql_tquery(dbHandle, sql_str);

			format(string, 128, "Вы обменялись машинами с %s за %d$!", pInfo[playerid][pNickname], cost);
			SCM(id, COLOR_BLUE, string);

			format(string, 128, "Вы обменялись машинами с %s за %d$!", pInfo[id][pNickname], cost);
			SCM(playerid, COLOR_BLUE, string);
			return true;
		}

Сообщение отредактировал Dati4o: 26 Март 2020 - 11:30

0

#2
Пользователь офлайн   Dati4o 

  • Новичок
  • Вставить ник
  • Раскрыть информацию
В логах нет ошибки
0

#3
Пользователь онлайн   oukibt 

  • Сашка
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияDati4o (25 Март 2020 - 23:11) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


Когда идёт сохранение цвета?
0

#4
Пользователь офлайн   Dati4o 

  • Новичок
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияoukibt (26 Март 2020 - 11:39) писал:

Когда идёт сохранение цвета?

Вот например сохранения цвета при покупке машины с автосалона
sql_str[0] = EOS;
format(sql_str, sizeof(sql_str), "UPDATE accounts SET cash=%d, carcolor1=%d, carcolor2=%d, car=%d, procent=100, fuelcar='%.1f' WHERE id=%d",
pInfo[playerid][pCash], pInfo[playerid][pCvet][0], pInfo[playerid][pCvet][1], pInfo[playerid][pCar], pInfo[playerid][pFuelcar], pInfo[playerid][pID]);
mysql_tquery(dbHandle, sql_str);

Пытался делать по этому примеру, то ошибки
0

#5
Пользователь онлайн   oukibt 

  • Сашка
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияDati4o (26 Март 2020 - 12:05) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


Ну попробуй вот так тогда

case 4123:
{
	new id = CarOffer[playerid],
	cost = CarPrice[playerid];
	CarOffer[playerid] = INVALID_PLAYER_ID;
	CarPrice[playerid] = 0;
	if(!response) return SCM(id, COLOR_LIGHTRED, !"Игрок отказался от сделки");
	new
	    proc = pInfo[playerid][pProcent],
	    car = pInfo[playerid][pCar],
	    color1 = pInfo[playerid][pCvet][0],
	    color2 = pInfo[playerid][pCvet][1],
	    comp[13],
	    Float:mil = pInfo[playerid][pMiliage],
	    car_ = caridhouse[playerid];
	    
	pInfo[playerid][pProcent] = pInfo[id][pProcent];
	pInfo[id][pProcent] = proc;

    pInfo[playerid][pCar] = pInfo[id][pCar];
    pInfo[id][pCar] = car;

    pInfo[playerid][pMiliage] = pInfo[id][pMiliage];
    pInfo[id][pMiliage] = mil;

    pInfo[playerid][pCvet][0] = pInfo[id][pCvet][0];
    pInfo[playerid][pCvet][1] = pInfo[id][pCvet][1];
    pInfo[id][pCvet][0] = color1;
    pInfo[id][pCvet][1] = color2;

    for(new i; i < 13; i++)
	{
        comp[i] = pInfo[playerid][pComponent][i];
        pInfo[playerid][pComponent][i] = pInfo[id][pComponent][i];
        pInfo[id][pComponent][i] = comp[i];
    }

    caridhouse[playerid] = caridhouse[id];
    caridhouse[id] = car_;

    pInfo[id][pCash] -= cost;
    pInfo[playerid][pCash] += cost;

    sql_str[0] = EOS;
    format(sql_str, sizeof(sql_str), "UPDATE `accounts` SET `procent` = '%d', `car` = '%d', `cash` = '%d', `carcolor1` = '%d', `carcolor2` = '%d', `component` = '%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d' WHERE id = '%d'",
	pInfo[playerid][pProcent], pInfo[playerid][pCar], pInfo[playerid][pCash], pInfo[playerid][pCvet][0], pInfo[playerid][pCvet][1],
 	pInfo[playerid][pComponent][0],
	pInfo[playerid][pComponent][1], pInfo[playerid][pComponent][2],pInfo[playerid][
pComponent][3],
	pInfo[playerid][pComponent][4], pInfo[playerid][pComponent][5],pInfo[playerid][
pComponent][6],
	pInfo[playerid][pComponent][7], pInfo[playerid][pComponent][8],pInfo[playerid][
pComponent][9],
	pInfo[playerid][pComponent][10], pInfo[playerid][pComponent][11], pInfo[playerid][pComponent][12],
	pInfo[playerid][pID]);
	mysql_tquery(dbHandle, sql_str);

    sql_str[0] = EOS;
    format(sql_str, sizeof(sql_str), "UPDATE `accounts` SET `procent` = '%d', `car` = '%d', `cash` = '%d', `carcolor1` = '%d', `carcolor2` = '%d', `component` = '%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d' WHERE id = '%d'",
    pInfo[id][pProcent], pInfo[id][pCar], pInfo[id][pCash], pInfo[id][pCvet][0], pInfo[id][pCvet][1],
	pInfo[id][pComponent][0],
	pInfo[id][pComponent][1], pInfo[id][pComponent][2], pInfo[id][pComponent][3],
	pInfo[id][pComponent][4], pInfo[id][pComponent][5], pInfo[id][pComponent][6],
	pInfo[id][pComponent][7], pInfo[id][pComponent][8], pInfo[id][pComponent][9],
	pInfo[id][pComponent][10], pInfo[id][pComponent][11], pInfo[id][pComponent][12], pInfo[id][pID]);
	mysql_tquery(dbHandle, sql_str);

    format(string, 100, "Вы обменялись машинами с %s за %d$!", pInfo[playerid][pNickname], cost);
    SCM(id, COLOR_BLUE, string);

    format(string, 100, "Вы обменялись машинами с %s за %d$!", pInfo[id][pNickname], cost);
    SCM(playerid, COLOR_BLUE, string);
    
    return 1;
}


0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика