Regisss
Умник
Вообщем, опишу в кратце. Нам даётся на выбор 10 машин, которые обновляются каждый час. Нам нужно привести к докам любую из доступных машин и продать её, после чего получить сумму денег.
И так, думаю, объяснил доступно. Начнём.
В начало мода:
В паблик OnGameModeInit()
Так же в ваш PAYDAY до цикла добавьте строку "SetWantedCars();"
В конец мода:
Далее, в команды:
DC_CMD:
OnPlayerCommandText:
Кому нужен define Error:
Вообщем-то все 
И так, думаю, объяснил доступно. Начнём.
В начало мода:
PHP:
#define cGREEN 3caa3c
#define COLOR_ORANGE 0xffae42FF
#define cORANGE ffae42 // цвета
static dropcars[][2] = { // Переменная, хранящая ид и цену авто
{411,20000}, // Инфернус за 20к
{560,15000} // султан за 15к, добавляйте дальше свои.
};
new WantedCars[10]; // переменная, хранящая модель 10-и машин.
PHP:
Create3DTextLabel("{FFFFFF}Чтобы продать машину используйте\n{"#cORANGE"}/dropcar",0xFFFFFF, -1548.9137,123.7483,5.2504, 20.0, 0, 1); // информация
CreateDynamicObject(3077, -1570.51135, 137.25484, 2.51400, 0.00000, 0.00000, -7.80001); // доска
SetWantedCars(); // сделаем наши первые 10 машин
В конец мода:
PHP:
SetWantedCars()
{
new Text3D:wantedtext = Create3DTextLabel("",0xFFFFFF, -1570.51135, 137.25484, 5.0, 40.0, 0, 0); // создадим текст
new string[64 * 11],str[64]; // сделаем переменные текста
strcat(string,"{"#cORANGE"}Разыскиваются Автомобили:{FFFFFF}\n"); // добавим первую строку
new x = 0; // переменная цикла
while(x != 10) // цикл
{
starts: { // точка возвращения
new psd = random(sizeof(dropcars)); // рандомный кар
for(new i; i < 10; i++) if(WantedCars[i] == dropcars[psd][0]) { goto starts; } // если уже есть такой - назад
format(size(str),"%d. %s[%d] - {"#cGREEN"}%d${FFFFFF}\n",x + 1,VehicleNames[dropcars[psd][0] - 400],dropcars[psd][0],dropcars[psd][1]); // форматируем текст
strcat(string,str); // присоединяем
printf("В слот WantedCars[%d] помещён ид машины %d",x,dropcars[psd][0]); // выводим для проверки
WantedCars[x] = dropcars[psd][0]; // записываем модель
x++; // прибавляем переменную
}
}
Update3DTextLabelText(wantedtext,0xFFFFFF,string); // обновим текст
return 1;
}
DC_CMD:
PHP:
CMD:dropcar(playerid,params[])
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid,20.0,-1548.9137,123.7483,5.2504)) return Error(playerid,"Вы не в доках SF!");
new Float:health;
new carid = GetPlayerVehicleID(playerid);
GetVehicleHealth(carid, health);
if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
new okay = 0;
for(new v; v < 10; v++)
{
if(GetVehicleModel(carid) == WantedCars[v] && (!IsFractionCar(carid) && !IsPersCar(carid)))
{
new hp = floatround(health);
new money = 0;
switch(hp)
{
case 1..800: money = (dropcars[v][1] / 4);
case 900..999: money = dropcars[v][1] / 2;
case 1000: money = dropcars[v][1];
default: money = 0;
}
format(string, sizeof(string), "[DROPCAR]: {FFFFFF}Вы продали автомобиль за {"#cGREEN"}$%d",money);
send(giveplayerid, COLOR_LIME, string);
format(size(string),"~g~+%d$",money); GameTextForPlayer(playerid,string,5000,1);
GiveMoney(playerid, money);
DestroyVehicle(carid);
okay++;
break;
}
}
if(!okay) return Error(playerid,"Вы привезли не ту машину!");
}
else return Error(playerid,"Вы должны быть в машине!");
}
return true;
}
PHP:
if(!strcmp(cmdtext,"/dropcar",true))
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid,20.0,-1548.9137,123.7483,5.2504)) return Error(playerid,"Вы не в доках SF!");
new Float:health;
new carid = GetPlayerVehicleID(playerid);
GetVehicleHealth(carid, health);
if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
new okay = 0;
for(new v; v < 10; v++)
{
if(GetVehicleModel(carid) == WantedCars[v] && (!IsFractionCar(carid) && !IsPersCar(carid)))
{
new hp = floatround(health);
new money = 0;
switch(hp)
{
case 1..800: money = (dropcars[v][1] / 4);
case 900..999: money = dropcars[v][1] / 2;
case 1000: money = dropcars[v][1];
default: money = 0;
}
format(string, sizeof(string), "[DROPCAR]: {FFFFFF}Вы продали автомобиль за {"#cGREEN"}$%d",money);
send(giveplayerid, COLOR_LIME, string);
format(size(string),"~g~+%d$",money); GameTextForPlayer(playerid,string,5000,1);
GiveMoney(playerid, money);
DestroyVehicle(carid);
okay++;
break;
}
}
if(!okay) return Error(playerid,"Вы привезли не ту машину!");
}
else return Error(playerid,"Вы должны быть в машине!");
}
return true;
}
Кому нужен define Error:
PHP:
#define Error(%0,%1) SendClientMessage(%0,0xFF6347FF,"[ERROR]:{FFFFFF} "%1"")
