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

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

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

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

Команда /loadgun [DRP мод]

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

T.McWright

Умник
Здравствуйте, господа.Обнаружил проблему с командой /loadgun

Если я сажусь в фуру, пишу /loadgun - начинается загрузка, но загрузка с чего-то?

То есть, хочу сделать чтобы при заходе на пикап, игроку выдавались материалы, он нес их к пикапу который создала команда /loadgun и в машину добавлялись материалы.

Сама команда есть:
PHP:
if(!strcmp(cmd,"/loadgun",true))
	{
		if(pData[playerid][pFraction] != 8 && !IsGang(pData[playerid][pFraction]) && pData[playerid][pFraction] != 9) return SendClientMessage(playerid,CGRAY,"Вам недоступна эта функция");
		if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
		{
			new vehicleid = GetPlayerVehicleID(playerid);
			if((pData[playerid][pFraction] == 8 && GetVehicleModel(vehicleid) != 433) || ((IsGang(pData[playerid][pFraction]) || pData[playerid][pFraction] == 9) && GetVehicleModel(vehicleid) != 482)) return SendClientMessage(playerid,CGRAY,"Вы должны быть за рулем т.с. для перевозки оружия");
			if(gVehicleGun[vehicleid][vGunLoading] || gVehicleGun[vehicleid][vGunUnloading]) return SendClientMessage(playerid,CGRAY,"Авто уже стоит на загрузке / разгрузке");
			gVehicleGun[vehicleid][vGunVid] = vehicleid;
			gVehicleGun[vehicleid][vGunLoading] = true;
			RemovePlayerFromVehicle(playerid);
			new Float:x, Float:y, Float:z, Float:a;
			GetVehiclePos(vehicleid,x,y,z);
			GetVehicleZAngle(vehicleid,a);
			x = x - (-6.0*floatsin(a,degrees));
			y = y - 6.0*floatcos(a,degrees);
			gVehicleGun[vehicleid][vGunPickup] = CreateDynamicPickup(19133,1,x,y,z-0.5);
			new mes[128];
			format(mes,sizeof(mes),"Ед. оружия: {"#cGREEN"}%d\n{"#cWHITE"}Патронов: {"#cGREEN"}%d",gVehicleGun[vehicleid][vGunGunAmount],gVehicleGun[vehicleid][vGunAmmo]);
			gVehicleGun[vehicleid][vGunText] = CreateDynamic3DTextLabel(mes,CWHITE,x,y,z+0.5,20.0);
			gVehicleGun[vehicleid][vGunArea] = CreateDynamicSphere(x,y,z,1.0);
			SendClientMessage(playerid,CGREEN,"Загрузка началась");
		}
Сама система загрузки:
PHP:
if(pData[playerid][pFraction] == 8 || pData[playerid][pFraction] == 9 || IsGang(pData[playerid][pFraction] ))
		{
			if(logGang) SendClientMessage(playerid,CGRAY,"Check 2");
			for(new i;i<MAX_VEHICLES;i++)
			{
				if(areaid == gVehicleGun[i][vGunArea])
				{
					if(logGang) SendClientMessage(playerid,CGRAY,"Check 3");
					new mesa[128];
					format(mesa,sizeof(mesa),"ID: %d",i);
					if(logGang)SendClientMessage(playerid,CWHITE,mesa);
					new vehicleid = i;
					//if(vehicleid >= aArmy1[0] && vehicleid <= aArmy2[1] && pData[playerid][pFraction] != 8 && !IsGang(pData[playerid][pFraction])) return SendClientMessage(playerid,CWHITE,"Stop 1");;
					if(gVehicleGun[i][vGunLoading] == true && (GetPVarInt(playerid,"carrygun") || GetPVarInt(playerid,"carryammo")))
					{
						if(logGang) SendClientMessage(playerid,CGRAY,"Check 4");
						new gunamount = GetPVarInt(playerid,"carrygun");
						new ammo = GetPVarInt(playerid,"carryammo");
						SetPVarInt(playerid,"carrygun",0);
						SetPVarInt(playerid,"carryammo",0);
						RemovePlayerAttachedObject(playerid,0);
						ApplyAnimation(playerid,"CARRY","putdwn",1.0,0,1,1,0,0,1);
						if(gVehicleGun[i][vGunGunAmount] + gunamount > 20000 || gVehicleGun[i][vGunAmmo] + ammo > 20000) return SendClientMessage(playerid,CGRAY,"В т.к. недостаточно места");
						if(gunamount) gVehicleGun[i][vGunGunAmount] += gunamount;
						if(ammo) gVehicleGun[i][vGunAmmo] += ammo;
						new mes[128];
						format(mes,sizeof(mes),"Ед. оружия: {"#cGREEN"}%d\n{"#cWHITE"}Патронов: {"#cGREEN"}%d",gVehicleGun[vehicleid][vGunGunAmount],gVehicleGun[vehicleid][vGunAmmo]);
						UpdateDynamic3DTextLabelText(gVehicleGun[i][vGunText],CWHITE,mes);
					}
					else if(gVehicleGun[i][vGunUnloading] == true && !GetPVarInt(playerid,"carrygun") && !GetPVarInt(playerid,"carryammo"))
					{
						if(logGang) SendClientMessage(playerid,CGRAY,"Check 4.2");
						if(gVehicleGun[i][vGunGunAmount] < 200 && gVehicleGun[i][vGunAmmo] < 200) return SendClientMessage(playerid,CGRAY,"В т.с. недостаточно боеприпасов");
						if(gVehicleGun[i][vGunGunAmount] >= 200)
						{
							gVehicleGun[i][vGunGunAmount] -= 200;
							SetPVarInt(playerid,"carrygun",200);
						}
						if(gVehicleGun[i][vGunAmmo] >= 200)
						{
							gVehicleGun[i][vGunAmmo] -= 200;
							SetPVarInt(playerid,"carryammo",200);
						}
						new mes[128];
						format(mes,sizeof(mes),"Ед.Оружия: {"#cGREEN"}%d\n{"#cWHITE"}Патронов: {"#cGREEN"}%d",gVehicleGun[vehicleid][vGunGunAmount],gVehicleGun[vehicleid][vGunAmmo]);
						UpdateDynamic3DTextLabelText(gVehicleGun[i][vGunText],CWHITE,mes);
						//ClearAnimations(playerid);
						ApplyAnimation(playerid,"CARRY","liftup",1.0,0,1,1,0,0,1);
						SetTimerEx("CarryDelay",1000,false,"i",playerid);
						SetPlayerAttachedObject(playerid,0,2358,6,0.0,0.10,-0.2, -110.0,0.0,78.0);
					}
					else SendClientMessage(playerid,CGRAY,"Ошибка");
					return 1;
				}
			}
Сделал Выдачу обьекта. Зашел на сервер, получил объект, подхожу к разгрузке - ошибка. В pawn не силён, прошу не кидаться тапками.

Или просто, чтобы машина подъехала к маркеру и сразу пополнилось кол-во патронов и ед.оружия.

Буду благодарен за помощь! Всем добра :3
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу