Brain_Voker
Умник
Всем привет, продолжаю исправления кода в мануалах/уроках данного портала
Сегодня взял работу Сборщика металлолома
Автор: Merlin, его тема http://pawno-info.ru/showthread.php?t=194896
Автор доработки: #Kalashnikov
Скриншоты:
)
И так начнем:
Ко всем #define:
Ко всем new:
Если Вы используете стандартный командный процессор то в public OnPlayerCommandText(playerid, cmdtext[]):
Если DC_CMD то измените шапку на:
В public OnPlayerStateChange(playerid, newstate, oldstate):
В public OnPlayerPickUpPickup(playerid, pickupid):
В public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]):
В public OnPlayerEnterCheckpoint(playerid):
В public OnGameModeInit():
Сегодня взял работу Сборщика металлолома
Автор: Merlin, его тема http://pawno-info.ru/showthread.php?t=194896
Автор доработки: #Kalashnikov
Скриншоты:
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
( П-И Фото хост не работаетИ так начнем:
Ко всем #define:
PHP:
new format_stra[145];
#define SendMes(%0,%1,%2,%3) format(format_stra, 144, %2,%3), SendClientMessage(%0, %1, format_stra)
PHP:
new Float: position_job [ ] [3] =
{
{274.4690, 1224.2138, 15.1192},
{1351.4569, 478.1444, 19.7258},
{230.3027, -1887.7364, 0.6416},
{-2379.4768, -2161.4040, 35.4903}
};
new plavcar[2];
new Loader_Job;
new Mettal_Factory = 100;
PHP:
if(!strcmp(cmd,"/contract",true))
{
if(!GetPVarInt(playerid,"InLoaderJob")) return SendClientMessage(playerid,-1,"Вам запрещено использовать это");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 578) return SendClientMessage(playerid,-1,"Вы должны находиться в рабочей машине");
if(GetPVarInt(playerid,"progressJob")) return SendClientMessage(playerid,-1,"У вас уже есть заказ на доставку");
DisablePlayerCheckpoint(playerid);
new rnd = random(sizeof(position_job));
switch(rnd)
{
case 0:
{
SendClientMessage(playerid, 0x1FAEE9AA, "Нам сообщили что под мостом кто-то бросил свою машину");
SendClientMessage(playerid, 0x1FAEE9AA, "Салон и колеса конечно сняли, но корпус остался. Привези ее нам!");
}
case 1:
{
SendClientMessage(playerid, 0x1FAEE9AA, "Люди из деревни сообщили что у них на заправке");
SendClientMessage(playerid, 0x1FAEE9AA, "стоит брошеная машина. Привези ее нам!");
}
case 2:
{
SendClientMessage(playerid, 0x1FAEE9AA, "На пляже Санта Мария вытащили машину из воды и оставили на берегу");
SendClientMessage(playerid, 0x1FAEE9AA, "эта машина, то что нам нужно. Привези ее нам!");
}
case 3:
{
SendClientMessage(playerid, 0x1FAEE9AA, "По новостям передают, что какой-то лихач вылетел на машине с г. Чилиад");
SendClientMessage(playerid, 0x1FAEE9AA, "Губернатор хочет чтоб мы вытащили машину от туда. Привези ее нам!");
}
}
SetPlayerCheckpoint(playerid,position_job[rnd][0],position_job[rnd][1],position_job[rnd][2], 4.0);
SetPVarInt(playerid,"typeMarker",rnd+1);
SetPVarInt(playerid,"progressJob",1);
return 1;
}
PHP:
CMD:contract(playerid)
PHP:
new vehicleid = GetPlayerVehicleID(playerid);
if(vehicleid >= plavcar[0] && vehicleid <= plavcar[1])
{
if(!GetPVarInt(playerid,"InLoaderJob"))
{
SendClientMessage(playerid, -1, "Вы не устроились на работу");
RemovePlayerFromVehicle(playerid);
}
else SendClientMessage(playerid, 0xFFD700FF, "Для того что-бы взять заказ: /contract");
}
PHP:
if(pickupid == Loader_Job)
{
if(GetPVarInt(playerid,"InLoaderJob")) ShowPlayerDialog(playerid,60,0,"Работа \"Доставщик металла\"","Вы действительно хотите уволиться с работы?","Да","Нет");
else ShowPlayerDialog(playerid,60,0,"Работа \"Доставщик металла\"","Вы собираетесь устроиться доставщиком металла на завод?","Да","Нет");
}
PHP:
case 60:
{
if(!response) return 1;
if(!GetPVarInt(playerid,"InLoaderJob"))
{
if(GetPVarInt(playerid,"InLoaderJob")) return SendClientMessage(playerid, 0x1FAEE9AA, "Вы уже работаете!");
//SetPlayerSkin(playerid, (PlayerInfo[playerid][pSex] == 1) ? 94 : 56);//Выдаем скины
SetPVarInt(playerid,"InLoaderJob",1);
DisablePlayerCheckpoint(playerid);
SendClientMessage(playerid, 0x1FAEE9AA, "Вы начали рабочую смену!");
SendClientMessage(playerid, 0x1FAEE9AA, "Отправляйтесь доставлять металл на завод");
return 1;
}
else
{
if(!GetPVarInt(playerid,"InLoaderJob")) return SendClientMessage(playerid, 0x1FAEE9AA, "Вы не работаете!");
SendClientMessage(playerid, 0x1FAEE9AA, "Рабочий день окончен, заработанные деньги вы получили на руки");
if(GetPVarInt(playerid,"progressJob"))
{
DestroyObject(GetPVarInt(playerid, "OBJ"));
}
DeletePVar(playerid, "OBJ");
DeletePVar(playerid, "typeMarker");
DeletePVar(playerid,"progressJob");
DeletePVar(playerid,"playerAmount");
DeletePVar(playerid,"InLoaderJob");
DisablePlayerCheckpoint(playerid);
//Возвращаем скин
//new fraction = PlayerInfo[playerid][pMember];
//SetPlayerSkin(playerid, (!fraction) ? PlayerInfo[playerid][pChar] : PlayerInfo[playerid][pModel]);
return 1;
}
}
PHP:
switch(GetPVarInt(playerid,"typeMarker") && GetVehicleModel(GetPlayerVehicleID(playerid)) == 578)
{
case 1..4:
{
if(!GetPVarInt(playerid,"progressJob")) return true;
DisablePlayerCheckpoint(playerid);
SetPVarInt(playerid, "OBJ", CreateObject(3594,0,0,0,0,0,0,100.0));
AttachObjectToVehicle(GetPVarInt(playerid, "OBJ"), GetPlayerVehicleID(playerid), 0,-2,0.1,0,0,0);
SetPVarInt(playerid, "typeMarker", 0);
SetPlayerCheckpoint(playerid,2078.46909, -2046.21387, 13.55, 4.0);
SendClientMessage(playerid,-1,"Отвезите эту груду металла на завод");
return 1;
}
}
if(GetPVarInt(playerid,"progressJob") && GetVehicleModel(GetPlayerVehicleID(playerid)) == 578)
{
DisablePlayerCheckpoint(playerid);
DestroyObject(GetPVarInt(playerid, "OBJ"));
SetPVarInt(playerid,"progressJob",0);
SetPVarInt(playerid,"playerAmount", 200+random(200));
Mettal_Factory += GetPVarInt(playerid,"playerAmount");
// PlayerInfo[playerid][pCash] += GetPVarInt(playerid,"playerAmount")*2;
SendClientMessage(playerid,0x1FAEE9AA,"Используйте команду {FFD700}/contract {1FAEE9}для следуйщей задачи");
SendMes(playerid,0x1FAEE9AA,"Машина вышла на {FFD700}%d кг. {1FAEE9}За нее вы получаете{FFD700} %d$",GetPVarInt(playerid,"playerAmount"),GetPVarInt(playerid,"playerAmount")*2);
return 1;
}
PHP:
plavcar[0] = AddStaticVehicleEx(578,2119.8237,-2076.3762,13.5469,139.7245,-1,-1,44);
AddStaticVehicleEx(578,2127.6960,-2084.1382,13.5469,129.6978,-1,-1,44);
plavcar[1] = AddStaticVehicleEx(578,2134.4771,-2090.9631,13.5469,132.8311,-1,-1,44);
Loader_Job = CreatePickup(1275, 23,2093.0083,-2066.1826,13.5469,0);
Если полезно ставь +
Последнее редактирование:
