Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- new FermPickup[2];
- GetFermPickID(pickupid)
- {
- if(FermPickup[0] == pickupid) return 0;
- return 1;
- }
- GetFermCarID(veh)
- {
- if(FermCar[0] == veh) return 0;
- return 1;
- }
- if(carid >= FermCar[0] && carid <= FermCar[1])
- {
- if(PlayerInfo[playerid][pFerma] != 255 || PlayerInfo[playerid][pFermaJob] == 3 || PlayerInfo[playerid][pFermaJob] == 2)
- {
- new fID = GetFermCarID(veh);
- if(LoadZern[carid-FermCar[fID]] < 1000)//Если в машине меньше 0 зёрен то...
- {
- new string[50+MAX_PLAYER_NAME-2];
- static const ferm[] = "В грузовике %d / 1000 зёрен";
- format(string, sizeof(string), ferm, LoadZern[carid-FermCar[fID]]);
- SendClientMessage(playerid, COLOR_GREEN, string);
- new rand = random(sizeof(SborFerm_0));//Рандомное значение на собирание кустиков!
- SetPlayerCheckpoint(playerid, SborFerm_0[rand][0], SborFerm_0[rand][1], SborFerm_0[rand][2],5.0);
- }
- else//Если больше 1000 то...
- {
- LoadZern[carid-FermCar[fID]] = 1000;//Приравниваем значение зёрен к 1000 чтобы не было бага с количеством!
- new string[50+MAX_PLAYER_NAME-2];
- static const ferm[] = "В грузовике %d / 1000 зёрен";
- format(string, sizeof(string), ferm, LoadZern[carid-FermCar[fID]]);
- SendClientMessage(playerid, COLOR_GREEN, string);
- SendClientMessage(playerid, COLOR_GREEN, "Сбор урожая завершен. Теперь направляйтесь к ферме и разгрузитесь{FFFFFF} (( Командой: /funload ))");
- DestroyDynamicPickup(FermPickup[fID]);//Удалили пикап
- FermPickup[fID] = -1;
- Delete3DTextLabel(FermText3D[playerid]);//Удалили текст
- if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
- DisablePlayerCheckpoint(playerid);//Удалили чекпоинт
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_WHITE, "Вы не Фермер/Владелец/Заместитель!");
- RemovePlayerFromVehicleAC(playerid);
- SetTimerEx("RemovePlayerFromVehicleEx", 3000, false, "i", playerid);
- return 1;
- }
- }
- public OnPlayerPickUpDynamicPickup(playerid, pickupid)
- {
- printf("Ferm pickupid %d", pickupid);
- if(pickupid == FermPickup[0] || pickupid == FermPickup[1])
- {
- if(PlayerKist[playerid] == true)
- {
- new pID = GetFermPickID(pickupid);
- for(new f = 0; f < sizeof(FermInfo); f++)
- {
- new carid = !GetPlayerVehicleID(playerid);
- if(LoadZern[carid-FermCar[pID]] > 1000)//Если в машине меньше 1000 зерен то...
- {
- new string[30+MAX_PLAYER_NAME-2];
- LoadZern[carid-FermCar[pID]] = 1000;
- SendClientMessage(playerid, COLOR_WHITE, "Грузовик полон!");
- static const ferm_1[] = "Загруженно\n{ffffff}%d / 1000";
- format(string, sizeof(string), ferm_1, LoadZern[carid-FermCar[pID]]);
- DisablePlayerCheckpoint(playerid);
- if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
- PlayerKist[playerid] = false;
- }
- else
- {
- new string[50+MAX_PLAYER_NAME-2];
- FermInfo[f][fZaseeno] -= 5;//Отнимаем -5 засеености!
- LoadZern[carid-FermCar[pID]] += 5;//Загрузили +5 зерен!
- FermZarabotok[playerid] += FermInfo[f][fPayday];//Прибовляем заработок
- static const ferm[] = "~b~count:~w~+%d$";
- format(string, sizeof(string), ferm, FermZarabotok[playerid]);
- GameTextForPlayer(playerid, string, 3000, 1);
- DisablePlayerCheckpoint(playerid);//Удалили чекпоинт
- GetXYInFrontOfPlayer(playerid, X12, Y12, Z12);
- SetPlayerCheckpoint(playerid, X12+random(10), Y12+random(10), Z12, 1.0);
- if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
- static const ferm_1[] = "Загруженно\n{ffffff}%d / 1000";
- format(string, sizeof(string), ferm_1, LoadZern[carid-FermCar[pID]]);
- Update3DTextLabelText(FermText3D[playerid], COLOR_YELLOW, string);
- PlayerKist[playerid] = false;
- if(gettime() - GetPVarInt(playerid, "BotFarm") < 20)
- {
- if(GetPVarInt(playerid, "BotCount") == 1)
- {
- static const ferm_2[] = "<<Warning>> Игрок %s[%d]: Возможно бот фермер";
- format(string, sizeof(string), ferm_2, PlayerInfo[playerid][pName], playerid);
- SendAdminMessage(COLOR_ADMIN, string);
- SetPVarInt(playerid, "BotCount", 0);
- }
- }
- SetPVarInt(playerid, "BotFarm", gettime());
- SetPVarInt(playerid, "BotCount", GetPVarInt(playerid, "BotCount") +1);
- }
- }
- }
- else
- {
- SendClientMessage(playerid, COLOR_GREEN, "{00D607} Для начала соберите урожай {FFFFFF}(( Встаньте на красный чекпоинт, и ждите 15 секунд ))");
- SendClientMessage(playerid, COLOR_GREEN, "{00D607} Когда соберёте положите в кузов автомобиля {FFFFFF}(( Встаньте на желтую стрелку ))");
- SendClientMessage(playerid, COLOR_GREEN, "{00D607} Если захотите завершить работу, пройдите к раздевалке {FFFFFF}(( Встаньте на синий пикап у фермы ))");
- SendClientMessage(playerid, COLOR_GREEN, "{00D607} Если вы фермер, то просто сядьте в машину для завершения сбора урожая, /funload - разгрузить урожай");
- DisablePlayerCheckpoint(playerid);
- if(IsPlayerAttachedObjectSlotUsed(playerid, 3)) RemovePlayerAttachedObject(playerid, 3);
- GetXYInFrontOfPlayer(playerid, X12, Y12, Z12);
- SetPlayerCheckpoint(playerid, X12+random(10), Y12+random(10), Z12, 1.0);
- PlayerKist[playerid] = false;
- }
- }
- return 1;
- }
- if(SbotTime_1[i] > 0)
- {
- SbotTime_1[i]--;
- if(SbotTime_1[i] == 0)
- {
- SbotTime_1[i] = 0;
- for(new q = 0; q < 4; q++)//Цикл место сбора урожая
- {
- if(IsPlayerInRangeOfPoint(i, 5.0, SborFerm_0[q][0], SborFerm_0[q][1], SborFerm_0[q][2]))//Проверяем есть ли игрок в радиусе 5 метров от чекпоинта!
- {
- new carid = GetPlayerVehicleID(i);
- new fID = GetFermCarID(carid);
- GetVehiclePos(carid, X12, Y12, Z12);
- GetXYInFrontOfPlayer(i, X12, Y12,-3.0);
- FermPickup[fID] = CreateDynamicPickup(19197, 23, X12, Y12, Z12+0.3);
- GetVehicleParamsEx(carid, engine, lights, alarm, doors, bonnet, boot, objective);
- SetVehicleParamsEx(carid, VEHICLE_PARAMS_OFF, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
- zavodis[i] = false;
- new string[30+MAX_PLAYER_NAME-2];
- static const ferm[] = "Загруженно\n%d / 1000";
- format(string, sizeof(string), ferm, LoadZern[carid-FermCar[0]]);
- FermText3D[i] = Create3DTextLabel(string, COLOR_YELLOW, X12, Y12, Z12+0.5, 15.0, 0, 1);
- SendClientMessage(i, COLOR_WHITE, "{0289CC}Машина на месте. Теперь вы и ваши рабочие, могут загружать её");
- SendClientMessage(i, COLOR_WHITE, "{0289CC}Если решите завершить сбор урожая, /fpanel [9] завершить сбор урожая");
- DisablePlayerCheckpoint(i);//Удаляем чекпоинт!
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement