shape1
shape2
shape3
shape4
shape7
shape8

Создание работы почтальона


Статус
Закрыто для дальнейших ответов.

Kostyaev

Магистр
Пользователь
19.07.2014
1 123
274
0
26
Всем добрый вечер.Представляю вам работу "Почтальона".
Работа состоит в том что надо развести письма, например газеты по домам подъезжая на маркер)
Сделано так, чтобы античит не отнимал зарплату)
И так начнем:
Ко всем new :

new poh[7]; //Почтальон



Теперь ищем public CreateVehicles 
И вставляем авто:

//////////////////////////////////////////Почтальон///////////////////////////////////
poh[0] = AddStaticVehicle(656,1999.1227,-2079.9141,13.6155,270.9118,33,22); //Авто координаты можете заменить на свои
poh[1] = AddStaticVehicle(656,1999.1232,-2085.0872,13.6169,270.5537,33,22); // авто координаты можете заменить на свои
poh[2] = AddStaticVehicle(656,1999.2247,-2089.7712,13.6150,271.9205,33,22); // авто координаты можете заменить на свои
poh[3] = AddStaticVehicle(656,1999.3450,-2094.4719,13.6169,271.9580,33,22); // авто координаты можете заменить на свои
poh[4] = AddStaticVehicle(656,2018.0184,-2081.5940,13.6108,90.8941,33,22);//авто координаты можете заменить на свои



Теперь делаем чекпоинты,ко всем new: 

///////////////Почтальон///////////////
new checkp[MAX_PLAYERS];
new checkp2[MAX_PLAYERS];
new checkp3[MAX_PLAYERS];
new checkp4[MAX_PLAYERS];
new checkp5[MAX_PLAYERS];
new checkp7[MAX_PLAYERS];
new checkp8[MAX_PLAYERS];
new checkp9[MAX_PLAYERS];



Теперь идем в  public OnPlayerEnterCheckpoint
И вставляем:

//===========================[Работа Почтальон]=============================
if(checkp[playerid] == 1) //Проверка на чекпоинт
{
DisablePlayerCheckpoint(playerid);
checkp[playerid] = 0;
checkp2[playerid] = 1;
SetPlayerCheckpoint(playerid,2265.6311,-2202.6660,22.2000, 4.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею метку.");
return 1;
}

if(checkp2[playerid] == 1) //Проверка на чек
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);//Убираем когда встанет на чек
checkp2[playerid] = 0; //Убираем чекпоинт
checkp3[playerid] = 1;//Ставим чек
SetPlayerCheckpoint(playerid,2622.9944,-2120.3162,22.5628, 4.0);//Ваши координаты если пожелаете
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp3[playerid] == 1) //Проверка на чек
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{
DisablePlayerCheckpoint(playerid);
checkp3[playerid] = 0;
checkp4[playerid] = 1;
SetPlayerCheckpoint(playerid,2590.6438,-1648.4918,23.5000, 5.0);// ваши координаты
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp4[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{
DisablePlayerCheckpoint(playerid);
checkp4[playerid] = 0;
checkp5[playerid] = 1;
SetPlayerCheckpoint(playerid,2201.1338,-818.5240,14.0796, 4.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp5[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);
checkp5[playerid] = 0;
checkp7[playerid] = 1;
SetPlayerCheckpoint(playerid,2051.4902,-828.7048,15.3247, 4.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp7[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);
checkp7[playerid] = 0;
checkp8[playerid] = 1;
SetPlayerCheckpoint(playerid,2480.5669,-780.7817,12.2000, 5.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp8[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);
checkp8[playerid] = 0;
checkp9[playerid] = 1;
SetPlayerCheckpoint(playerid,2583.4968,-1530.8092,23.5433, 2.0);
SendClientMessage(playerid,COLOR_YELLOW, "{F0F00B}Отправляйся в {F30F40}офис{F0F00B} и забери свою зарплату.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Вы не выполнили работу!");
}
return 1;
}
if(checkp9[playerid] == 1)
{
DisablePlayerCheckpoint(playerid);
checkp9[playerid] = 0; // убираем чекпоинт
SendClientMessage(playerid,0xADFF2FAA, "Вы заработали {FFFFFF}50 000$");
GameTextForPlayer(playerid,"~G~+50000$",3000,5);
GivePlayerMoney(playerid, 50000);
return 1;
}



Теперь идем опять в public OnGameModeInit
И вставляем:

CreatePickup(1239,23,2326.5227,-1923.3464,22.0800,-1);
Create3DTextLabel("{11F43E}Почтальон\n{11E9F4}Для начало работы введите {FFFFFF}/почта{FF6600}",COLOR_GREENYELLOW,2326.7034,-1921.7222,22.0800,152.0180,0,0);



Теперь создадим команду для работы. Идем в public OnPlayerCommandText
И вставляем новую команду:

if(strcmp(cmdtext, "/почта",true) == 0)
{
SetPlayerCheckpoint(playerid,2327.6377,-1922.5853,22.0800, 2.0);//Ваши координаты 2 означает размер чекпоинта
checkp[playerid] = 1;// запускаем метку
SendClientMessage(playerid,COLOR_YELLOW, "Возьмите машину и развезите {F30F40}письма по домам!{FF0000}(Cм.карту).");
return 1;
}


Автор: Egor102
Переделывал: Kostyaev

6k8znn1C97.jpg




sZ3cr4eBVj.jpg




3z8m8441Vm.jpg




g9QCUPws9F.jpg




pcOXuL3Ttq.jpg


 
Последнее редактирование модератором:

Crank7772

Новичок
Пользователь
13.08.2014
179
2
0
Эм...у меня где то был мод,да помой-му,до сих пор есть,и там точь в точь такая же работа+переменные такие же!

Не хорошо врать.

 

Pawno

Новичок
Пользователь
19.02.2015
41
2
0
26
Возьму себе, спасибо.

 

Kostyaev

Магистр
Пользователь
19.07.2014
1 123
274
0
26
Последнее редактирование модератором:

MADDD

Освоившийся
Пользователь
02.03.2015
181
25
0
27
Опитмизация отсутствует вообще, в дальнейшем из за этого кода возможно появления багов с чекпоинтами, ставить данную работу не советую.

 

MotoSport

Pawno-Crmp.Ru || Живи вечно!
Пользователь
08.03.2015
921
168
0
23
Молодец что выложил. Возьму себе

#OFFTOP 

Переменная "пох" :D

 
S

Serega056

Гость
Гость
Всем добрый вечер.Представляю вам работу "Почтальона".
Работа состоит в том что надо развести письма, например газеты по домам подъезжая на маркер)
Сделано так, чтобы античит не отнимал зарплату)
И так начнем:
Ко всем new :

new poh[7]; //Почтальон

Теперь ищем public CreateVehicles 

И вставляем авто:

//////////////////////////////////////////Почтальон///////////////////////////////////
poh[0] = AddStaticVehicle(656,1999.1227,-2079.9141,13.6155,270.9118,33,22); //Авто координаты можете заменить на свои
poh[1] = AddStaticVehicle(656,1999.1232,-2085.0872,13.6169,270.5537,33,22); // авто координаты можете заменить на свои
poh[2] = AddStaticVehicle(656,1999.2247,-2089.7712,13.6150,271.9205,33,22); // авто координаты можете заменить на свои
poh[3] = AddStaticVehicle(656,1999.3450,-2094.4719,13.6169,271.9580,33,22); // авто координаты можете заменить на свои
poh[4] = AddStaticVehicle(656,2018.0184,-2081.5940,13.6108,90.8941,33,22);//авто координаты можете заменить на свои

Теперь делаем чекпоинты,ко всем new: 

///////////////Почтальон///////////////
new checkp[MAX_PLAYERS];
new checkp2[MAX_PLAYERS];
new checkp3[MAX_PLAYERS];
new checkp4[MAX_PLAYERS];
new checkp5[MAX_PLAYERS];
new checkp7[MAX_PLAYERS];
new checkp8[MAX_PLAYERS];
new checkp9[MAX_PLAYERS];

Теперь идем в  public OnPlayerEnterCheckpoint

И вставляем:

//===========================[Работа Почтальон]=============================
if(checkp[playerid] == 1) //Проверка на чекпоинт
{
DisablePlayerCheckpoint(playerid);
checkp[playerid] = 0;
checkp2[playerid] = 1;
SetPlayerCheckpoint(playerid,2265.6311,-2202.6660,22.2000, 4.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею метку.");
return 1;
}

if(checkp2[playerid] == 1) //Проверка на чек
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);//Убираем когда встанет на чек
checkp2[playerid] = 0; //Убираем чекпоинт
checkp3[playerid] = 1;//Ставим чек
SetPlayerCheckpoint(playerid,2622.9944,-2120.3162,22.5628, 4.0);//Ваши координаты если пожелаете
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp3[playerid] == 1) //Проверка на чек
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{
DisablePlayerCheckpoint(playerid);
checkp3[playerid] = 0;
checkp4[playerid] = 1;
SetPlayerCheckpoint(playerid,2590.6438,-1648.4918,23.5000, 5.0);// ваши координаты
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp4[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{
DisablePlayerCheckpoint(playerid);
checkp4[playerid] = 0;
checkp5[playerid] = 1;
SetPlayerCheckpoint(playerid,2201.1338,-818.5240,14.0796, 4.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp5[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);
checkp5[playerid] = 0;
checkp7[playerid] = 1;
SetPlayerCheckpoint(playerid,2051.4902,-828.7048,15.3247, 4.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp7[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);
checkp7[playerid] = 0;
checkp8[playerid] = 1;
SetPlayerCheckpoint(playerid,2480.5669,-780.7817,12.2000, 5.0);
SendClientMessage(playerid,COLOR_YELLOW, "Едь на следующею {F30F40}метку.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Возьми машину для работы.");
}
return 1;
}
if(checkp8[playerid] == 1)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 456)
{

DisablePlayerCheckpoint(playerid);
checkp8[playerid] = 0;
checkp9[playerid] = 1;
SetPlayerCheckpoint(playerid,2583.4968,-1530.8092,23.5433, 2.0);
SendClientMessage(playerid,COLOR_YELLOW, "{F0F00B}Отправляйся в {F30F40}офис{F0F00B} и забери свою зарплату.");
}
else
{
SendClientMessage(playerid, COLOR_RED, "Вы не выполнили работу!");
}
return 1;
}
if(checkp9[playerid] == 1)
{
DisablePlayerCheckpoint(playerid);
checkp9[playerid] = 0; // убираем чекпоинт
SendClientMessage(playerid,0xADFF2FAA, "Вы заработали {FFFFFF}50 000$");
GameTextForPlayer(playerid,"~G~+50000$",3000,5);
GivePlayerMoney(playerid, 50000);
return 1;
}

Теперь идем опять в public OnGameModeInit

И вставляем:

CreatePickup(1239,23,2326.5227,-1923.3464,22.0800,-1);
Create3DTextLabel("{11F43E}Почтальон\n{11E9F4}Для начало работы введите {FFFFFF}/почта{FF6600}",COLOR_GREENYELLOW,2326.7034,-1921.7222,22.0800,152.0180,0,0);

Теперь создадим команду для работы. Идем в public OnPlayerCommandText

И вставляем новую команду:

if(strcmp(cmdtext, "/почта",true) == 0)
{
SetPlayerCheckpoint(playerid,2327.6377,-1922.5853,22.0800, 2.0);//Ваши координаты 2 означает размер чекпоинта
checkp[playerid] = 1;// запускаем метку
SendClientMessage(playerid,COLOR_YELLOW, "Возьмите машину и развезите {F30F40}письма по домам!{FF0000}(Cм.карту).");
return 1;
}
Автор: Egor102

Переделывал: Kostyaev

6k8znn1C97.jpg




sZ3cr4eBVj.jpg
3z8m8441Vm.jpg


g9QCUPws9F.jpg


pcOXuL3Ttq.jpg


у меня нету public CreateVehicles 
 
S

Serega056

Гость
Гость
помгите вот мой скайп serega056.

 
A

Amfy

Гость
Гость
Это стандартный паблик, в нем должны присутствовать объекты, машины, пикапы, 3д тексты и вообще всё то, что необходимо загрузить при запуске сервера. Если у тебя его нету, выкинь свой мод.

По теме: код оставляет желать лучшего  :D83DDE0F:

 

Kostyaev

Магистр
Пользователь
19.07.2014
1 123
274
0
26
Опитмизация отсутствует вообще, в дальнейшем из за этого кода возможно появления багов с чекпоинтами, ставить данную работу не советую.
Моё дело выложить начальный код,а если хотите оптимизировать-это ваше дело.

 

ParmiZAN

Новичок
Пользователь
08.02.2015
83
0
0
108
Выручайте народец, срочно


Код

if(checkp[playerid] == 1) //Ïðîâåðêà íà ÷åêïîèíò
    {
    DisablePlayerCheckpoint(playerid);
    checkp[playerid] = 0;
    checkp2[playerid] = 1;
    SetPlayerCheckpoint(playerid,732.70, 753.35, 11.55, 4.0);
    SendClientMessage(playerid,COLOR_YELLOW, "Åäü íà ñëåäóþùåþ ìåòêó.");
    return 1;
    }
Ошибки

C:\Users\Павел\Desktop\SRP.pwn(9369) : error 029: invalid expression, assumed zero
C:\Users\Павел\Desktop\SRP.pwn(9369) : error 029: invalid expression, assumed zero
C:\Users\Павел\Desktop\SRP.pwn(9369) : error 029: invalid expression, assumed zero
C:\Users\Павел\Desktop\SRP.pwn(9369) : fatal error 107: too many error messages on one line
[green]Исправил всё, с ошибкой помогите[/green]

 
Последнее редактирование модератором:

Mirex

Руководитель проекта
Команда портала
Гл.Администратор
Золотой
21.12.2013
2 512
3
550
0
29
definehost.ru
Скриптер
ParmiZAN,

Исправьте здесь текст:

Код:
SendClientMessage(playerid,COLOR_YELLOW, "Åäü íà ñëåäóþùåþ ìåòêó.");
 
Статус
Закрыто для дальнейших ответов.