Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Changecar CMD

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

Roman_Otero

Умник
Привет всем, вопрос у меня такой, какую нужно поставить проверку, чтобы, если у игрока, которому продается машина, есть скутер, то выводилось сообщение и сбрасывалась команда. В моде 2 машины. Если продаешь 1 машину, у игрока появляется тоже 1 машина, если 2, соотвественно меняется 2 машина.

PHP:
CMD:changecar(playerid,params[])
{
	if(p_info[playerid][pHouse] == 0 && p_info[playerid][pTempKey] == 0) return SCM(playerid,COLOR_GREY,"У вас нет дома"),1;
	if(sscanf(params,"iii",params[0],params[1],params[2])) return SCM(playerid, COLOR_GREY, " Используйте: /changecar [1/2] [playerid] [цена]"),1;
	if(!IsPlayerConnected(params[1])) return SCM(playerid, COLOR_GREY, "Игрок не найден!"),1;
	if(p_info[params[1]][pHouse] == 0 && p_info[params[1]][pTempKey] == 0) return SCM(playerid,COLOR_GREY,"У игрока нет дома / Или игрок не арендует дом"),1;
	if(params[0] < 1 || params[0] > 2) return 1;
	if(IsSellsCar(playerid, params[0]) != -1) return SendClientMessage(playerid,COLOR_GREY,"Недоступно. Данный автомобиль продается");
	new caren = params[0]-1;
	new model=GetVehicleModel(caridhouse[playerid][caren]);
	if(!caridhouse[playerid][caren] || model == 462) return SCM(playerid, COLOR_GREY, "У Вас мопед");
	if ( !model ) return SCM(playerid, COLOR_GREY, "Ошибка, у вашей машины не загружена модель.");
	if(params[2] < 1) return SCM(playerid, COLOR_GREY, "Нельзя меньше $1"),1;
	if(!IsPlayerStream(8.0, playerid, params[1])) return SCM(playerid, COLOR_GREY, "Игрок не рядом с вами!"),1;
	if(params[1] == playerid) return  SCM(playerid, COLOR_GREY, "Вы не можете продать самому себе машину!"),1;

	format(stringer,128,"%s [%i] {ffff00}предлагает вам купить а/м %s за {"#cWHITE"}%i$",NamePlayer[playerid],playerid,VehicleNames[model-400],params[2]);
	SendClientMessage(params[1],-1,stringer);
	SendClientMessage(params[1],CYELLOW,"Нажмите {"#cWHITE"}'Y' {ffff00}для приобретения, иначе {"#cWHITE"}'N'");

	format(stringer,128,"Вы предложили купить машину игроку {"#cWHITE"}%s [%d] {ffff00}за {"#cWHITE"}%i$",NamePlayer[params[1]],params[1],params[2]);
	SendClientMessage(playerid,CYELLOW,stringer);

	SetPVarInt(params[1],"carProdaet",playerid + 1);
	SetPVarInt(playerid,"carPokupaet",params[1] + 1);
	SetPVarInt(params[1],"carCena",params[2]);
	SetPVarInt(playerid,"numbercar",params[0]);
	return 1;
}
PHP:
if(GetPVarInt(playerid,"carProdaet"))
		{
			new id_prodaet = GetPVarInt(playerid,"carProdaet")-1;
			new id_pokupaet = GetPVarInt(id_prodaet,"carPokupaet")-1;
			new home_cena = GetPVarInt(playerid,"carCena");
			new number_car = GetPVarInt(id_prodaet,"numbercar")-1;
			if(id_pokupaet == playerid)
			{
				if(p_info[playerid][pCash] < home_cena)
				{
					SendClientMessage(playerid,COLOR_GREY,"Ó âàñ íå äîñòàòî÷íî äåíåã íàëè÷íûìè");
					SendClientMessage(id_pokupaet,COLOR_GREY,"Ó ïîêóïàòåëÿ íå äîñòàòî÷íî äåíåã íàëè÷íûìè");
					DeletePVar(playerid,"carProdaet");
					DeletePVar(playerid,"carCena");
					DeletePVar(id_pokupaet,"carPokupaet");
					DeletePVar(id_pokupaet,"numbercar");
				}
				else if(!(number_car < 0 || number_car >= MAX_PLAYER_CAR))
				{
					if(caridhouse[id_prodaet][number_car] != 0)
					{
						DestroyVehicleOP(caridhouse[id_prodaet][number_car]);
						caridhouse[id_prodaet][number_car] = 0;
					}
					PlayerCar[playerid][number_car] = PlayerCar[id_prodaet][number_car];
					PlayerCar[id_prodaet][number_car] = 462;
					UpdatePlayerData(id_prodaet,(!number_car) ? ("pCar") : ("pCar2"),462);
					UpdatePlayerData(playerid,(!number_car) ? ("pCar") : ("pCar2"),PlayerCar[playerid][number_car]);
					for(new i = 0; i < 12; i++)
					{
						gPlayerTuning[playerid][number_car][i] = gPlayerTuning[id_prodaet][number_car][i];
						gPlayerTuning[id_prodaet][number_car][i] = 0;
					}
					UpdateTuning(id_prodaet,number_car + 1);
					UpdateTuning(playerid,number_car + 1);
					SetVehicleToHouse(playerid,number_car + 1, true);
					SetVehicleToHouse(id_prodaet,number_car + 1, true);
					new mes[128];
					format(mes, 128, "êóïèë ìàøèíó ñ ðóê id: %d,%d,%s", PlayerCar[id_prodaet][number_car],number_car,NamePlayer[id_prodaet]);
					TransferMoney(playerid,p_info[playerid][pCash]-home_cena,home_cena,mes);
					format(mes, 128, "ïðîäàë ìàøèíó èãðîêó %d,%d,%s", PlayerCar[id_prodaet][number_car],number_car,NamePlayer[playerid]);
					TransferMoney(id_prodaet,p_info[id_prodaet][pCash]+home_cena,home_cena,mes);
					p_info[id_prodaet][p_veh_number][number_car] = p_info[playerid][p_veh_number][number_car];
					p_info[playerid][p_veh_number][number_car] = -1;
					UpdatePlayerData(playerid, "p_veh_number0", p_info[playerid][p_veh_number][0]);
					UpdatePlayerData(playerid, "p_veh_number1", p_info[playerid][p_veh_number][1]);
					UpdatePlayerData(id_prodaet, "p_veh_number0", p_info[id_prodaet][p_veh_number][0]);
					UpdatePlayerData(id_prodaet, "p_veh_number1", p_info[id_prodaet][p_veh_number][1]);
					p_info[playerid][pCash] -= home_cena;
					UpdateMoney(playerid);
					p_info[id_prodaet][pCash] += home_cena;
					UpdateMoney(id_prodaet);
					format(stringer,128,"Âû êóïèëè ìàøèíó ó {"#cWHITE"}%s [%i]{ffff00} çà {"#cWHITE"}%i {ffff00}$",NamePlayer[id_prodaet],id_prodaet,home_cena);
					SendClientMessage(playerid,CYELLOW,stringer);
					format(stringer,128,"Ó âàñ êóïèë ìàøèíó {"#cWHITE"}%s [%i]{ffff00} çà {"#cWHITE"}%i {ffff00}$",NamePlayer[playerid],playerid,home_cena);
					SendClientMessage(id_prodaet,CYELLOW,stringer);
					DeletePVar(playerid,"carProdaet");
					DeletePVar(playerid,"carCena");
					DeletePVar(id_pokupaet,"carPokupaet");
					DeletePVar(id_pokupaet,"numbercar");
				}
			}
			else
			{
				SendClientMessage(playerid,COLOR_GREY,"Èãðîê îôôëàéí");
				DeletePVar(playerid,"carProdaet");
				DeletePVar(playerid,"carCena");
			}
		}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу