Доступ к готовым решениям

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

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

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

Мануал Работа Дровосека [PLAYMOD]

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

-WorcOut-

«I'am WorcOut» ♫
[HR][/HR]
PHP:
main()
{
	print("\n----------------------------------");
	print(" Мод : PlayMode");
	print(" Автор мода Unreal");
	print(" Автор вырезки : -WorcOut-");
	print("----------------------------------\n");
}
[HR][/HR]
Расписывать не буду , система интересная но код ужасен. 5/10
Работа на Mesql , но бд в моде не нашёл.
Нам потребуется include такие как
[HR][/HR]
PHP:
#include <streamer>// Include Streamer обьектов и много др
#include <progress>// ProgressBar
#include <a_mysql>
[HR][/HR]
К #define Добавим ->
PHP:
#define P:: 	PlayerInfo // Константа , у кого нету не добавляйте , просто мой мод нуждается в этом)
#define f(%1, format(%1,sizeof(%1), // Тот же format
#define publics:%0(%1)     forward %0(%1); \
                        	public %0(%1)// для удобсва
#define PRESSED(%0) \
        (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))// Клавиша
#define RELEASED(%0) \
        (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0))) // Клавиша
#define gray 					0xCECFCEFF // Цвета кто как хочет меняйте или нету
#define green 					0x5AB200FF // Тоже самое
#define blue 					0x319AFFFF // Тоже самое
#define GRAY  					"{d1d1d1}" // Тоже самое
[HR][/HR]
К переменным мы добавим
PHP:
//Работы
new Text:box_info[MAX_PLAYERS]; // TEXTDRAW BOX
new Text:pic_info[MAX_PLAYERS]; // TEXTDRAW PIC
new Text:col_info[MAX_PLAYERS]; // TEXTDRAW COL
new Text:text_info[MAX_PLAYERS]; // TEXTDRAW TEXT
// Каждый  TEXTDRAW служит для определ  определённого действия , где информация , где progress и тд

new perem[MAX_PLAYERS] = 2;
new TimerWood[MAX_PLAYERS];
new obj_lesop[MAX_PLAYERS];
new Text3D:derevo3d;
new drev;
new actor_job;
new wood_cars[MAX_VEHICLES];
new woodcar[4]; // Транспорт
// Что интерессное в моде системы нету ток привзяка
new MysqlConnect; // Mysql new у КАЖДОГО РАЗНЫЙ
new Bar:bar[MAX_PLAYERS]; // progress
new Float:derevo[][8] =
{
	{1117.49158, -327.13339, 72.93900},
	{1117.50281, -293.69238, 72.93900},
	{1095.64612, -293.18683, 72.93900},
	{1117.63904, -310.86496, 72.93900},
	{1094.64380, -311.09174, 72.93900},
	{1105.18042, -302.02374, 72.93900},
	{1094.99402, -326.76443, 72.93900},
	{1106.57153, -317.45139, 72.93900}
};// Где можно пилить
[HR][/HR]
В enum перечисление игрока
PHP:
pSkin, // Скин игрока
	pCash, // Средства игрока
	pMember // фракция игрока для проверки
[HR][/HR]
В OnGameModeInit Кидаю код целиком
В него входит
[1] Бот
[2] Транспорт
[3] Обьекты
PHP:
actor_job = CreateActor(73, 1105.4738,-358.1184,73.9922,109.9661); // Actor as salesperson in Ammunation
    ApplyActorAnimation(actor_job, "SMOKING", "M_SMKLEAN_LOOP", 4.1, true, false, false, false, 0);
    Create3DTextLabel("Джерри {CECFCE}(Директор лесопилки)\nДля разговора нажмите Y", green, 1105.4738,-358.1184,73.9922+1.2, 15.0,0, 0);
		//Лесопилка
	woodcar[0] = AddStaticVehicleEx(478,1070.7389,-287.1755,73.9864,178.9092,59,1, 60);// walt
	woodcar[1] = AddStaticVehicleEx(478,1067.1494,-287.0805,73.9869,178.9709,66,1, 60); // walt
	woodcar[2] = AddStaticVehicleEx(478,1074.0715,-287.2300,73.9816,178.3501,66,1, 60); // walt
	woodcar[3] = AddStaticVehicleEx(478,1077.4823,-287.3526,73.9779,178.0330,59,1, 60); //

	//лесопилка
	CreateDynamicObject(704, 1117.49158, -327.13339, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1117.50281, -293.69238, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1095.64612, -293.18683, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1117.63904, -310.86496, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1094.64380, -311.09174, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1105.18042, -302.02374, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1094.99402, -326.76443, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(704, 1106.57153, -317.45139, 72.93900,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(10183, 1071.90979, -359.18320, 73.20660,   0.00000, 0.00000, 226.00000);
	CreateDynamicObject(19377, 1087.41125, -359.69385, 72.96270,   0.00000, 90.00000, 0.00000);
	CreateDynamicObject(19377, 1077.06738, -359.69379, 72.96270,   0.00000, 90.00000, 0.00000);
	CreateDynamicObject(19377, 1066.63171, -359.69379, 72.96270,   0.00000, 90.00000, 0.00000);
	CreateDynamicObject(19377, 1056.16125, -359.71375, 72.96270,   0.00000, 90.00000, 0.00000);
	CreateDynamicObject(18566, 1092.86792, -336.53329, 73.45240,   0.00000, 0.00000, 58.00000);
	CreateDynamicObject(18566, 1062.81958, -312.06879, 73.45240,   0.00000, 0.00000, 32.00000);
	CreateDynamicObject(18566, 1079.90820, -329.55191, 73.45240,   0.00000, 0.00000, 58.00000);
	CreateDynamicObject(970, 1053.67798, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1058.24487, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1062.85925, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1067.42700, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1072.03381, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1076.62561, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1081.08691, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1085.70117, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1092.42749, -357.50580, 73.60490,   0.00000, 0.00000, 90.00000);
	CreateDynamicObject(970, 1051.39575, -357.22809, 73.60490,   0.00000, 0.00000, 90.00000);
	CreateDynamicObject(970, 1051.39575, -361.74130, 73.60490,   0.00000, 0.00000, 90.00000);
	CreateDynamicObject(970, 1090.21338, -364.01041, 73.60490,   0.00000, 0.00000, 0.00000);
	CreateDynamicObject(970, 1092.42749, -361.96426, 73.60490,   0.00000, 0.00000, 90.00000);

	CreateDynamicObject(12922, 1025.5123, -446.3410, 54.2013, 0.000000,0.000000, 24.6000);
    CreateDynamicObject(3276, 1037.155395,-441.014587,52.077285, 5.799999,0.799999,20.800022);
	CreateDynamicObject(3276, 1013.500976,-447.948486,52.267375, 0.000000,4.899998,-15.799999);
	CreateDynamicObject(16309, 1058.569458,-308.180297,71.482185, 0.000000,2.899999,-169.800064);
    CreateDynamicObject(1463, 1039.654052,-314.312744,73.373077, 0.000000,0.000000,0.000000);
	CreateDynamicObject(1463, 1040.483764,-311.234649,73.293098, 0.000000,0.000000,-145.599990);
	CreateDynamicObject(1463, 1041.302612,-314.497039,73.343063, 0.000000,0.000000,-92.699996);
	CreateDynamicObject(18566, 1043.474853,-299.255920,73.513076, 0.099999,-1.600000,-67.799995);
	CreateDynamicObject(18566, 1046.978027,-298.323730,73.894927, 0.399999,6.500000,31.000003);
[HR][/HR]
Далее удаляем стандарт мар
У меня в OnPlayerConnect
PHP:
//Лесопилка
	RemoveBuildingForPlayer(playerid, 3376, 1070.4766, -355.1641, 77.3359, 0.25);
	RemoveBuildingForPlayer(playerid, 13451, 1146.1406, -369.1328, 49.3281, 0.25);
	RemoveBuildingForPlayer(playerid, 3375, 1070.4766, -355.1641, 77.3359, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1092.7109, -327.0625, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1095.3984, -329.8203, 73.5078, 0.25);
	RemoveBuildingForPlayer(playerid, 700, 1095.3828, -327.4766, 73.1797, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1092.7969, -321.4844, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1092.9063, -315.9688, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1093.1953, -299.2969, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1093.3047, -293.7813, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1096.1563, -291.2656, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 656, 1096.6250, -294.4141, 72.9375, 0.25);
	RemoveBuildingForPlayer(playerid, 3253, 1106.6406, -319.8750, 73.7422, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1106.4922, -330.0234, 73.5078, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1100.9141, -329.9297, 73.5078, 0.25);
	RemoveBuildingForPlayer(playerid, 700, 1106.5469, -328.1641, 73.1797, 0.25);
	RemoveBuildingForPlayer(playerid, 1308, 1101.2891, -329.5313, 72.8984, 0.25);
	RemoveBuildingForPlayer(playerid, 3250, 1110.2422, -298.9453, 73.0391, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1101.6719, -291.3750, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1107.2656, -291.4609, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 672, 1097.4688, -314.2109, 73.6641, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1117.5781, -330.2109, 73.5078, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1112.0000, -330.1250, 73.5078, 0.25);
	RemoveBuildingForPlayer(playerid, 656, 1116.4453, -326.7578, 72.9375, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1112.7813, -291.5703, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1118.3750, -291.6641, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1120.4297, -327.7656, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1121.0234, -294.5234, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1120.6250, -316.7344, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1120.9297, -300.1172, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1120.8203, -305.6328, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1120.7344, -311.2188, 73.5703, 0.25);
	RemoveBuildingForPlayer(playerid, 1408, 1120.5391, -322.2500, 73.5703, 0.25);
[HR][/HR]
В public OnPlayerEnterCheckpoint(playerid) Добавим
PHP:
if(IsPlayerInRangeOfPoint(playerid,2.0, 1070.1499,-304.4284,73.9922) && GetPVarInt(playerid,"Rubayu") == 1)
    {
		 RemovePlayerAttachedObject(playerid, 4);
		 SetPlayerAttachedObject(playerid, 1, 341, 6, 0.0000, 0.0000, 0.0000, 0.00, 0.00, 0.00, 1.00, 1.00, 1.00);
	     DisablePlayerCheckpoint(playerid);
	     ApplyAnimation(playerid, "PED", "IDLE_tired", 4.1, 0, 1, 1, 0, 1);
	     SetPVarInt(playerid,"ProcWood",0);
	     SetPVarInt(playerid,"Rubayu",0);
		 obj_lesop[playerid] = CreateObject(1463, 1071.5858, -305.8881, 74.1987,0.0000, 4.0000, 11.00003);
		 MoveObject (obj_lesop[playerid], 1049.6357, -309.8443, 74.6587,3.0);
		 SetTimerEx("DROVA",7000,0,"i",Float:playerid);
    }
Расписывать не буду скажу так тут проверка игрока в том месте , срабатывает оп анимация и дают ему дрова.)
[HR][/HR]
Пошли кнопки + разговор с ботом
В OnPlayerKeyStateChange мы добавим
PHP:
if (PRESSED(1024))//Зажали АЛЬТ при рубке дерева
	{
	    if(GetPVarInt(playerid,"zavod") == 1  && GetPVarInt(playerid,"kgfor") == 2)
	    {
   			TimerWood[playerid] = SetTimerEx("Timer1", 50, 1,"i",Float:playerid);
		}
	    if(GetPVarInt(playerid,"WoodJob") == 1  && GetPVarInt(playerid,"wood") == 0)
	    {
			for(new i = 0; i < 8; i++)
	        {
	            if(IsPlayerInRangeOfPoint(playerid,3.0, derevo[i][0], derevo[i][1], derevo[i][2]))
	            {
				   TimerWood[playerid] = SetTimerEx("Timer1", 50, 1,"i",Float:playerid);

				}
			}
		}
	}
	else if (RELEASED(1024))//Отжали АЛЬТ при рубке дерева
	{
	   if(GetPVarInt(playerid,"WoodJob") == 1 || GetPVarInt(playerid,"zavod") == 1)
	   {
		   KillTimer(TimerWood[playerid]);
		   SetProgressBarValue(bar[playerid],0),UpdateProgressBar(bar[playerid],playerid);
		   perem[playerid] = 2;
		   ClearAnimations(playerid);
       }
	   if(GetPVarInt(playerid,"WoodJob") == 1 && GetPVarInt(playerid,"Rubayu") == 1)
       {
		     RemovePlayerAttachedObject(playerid, 1);
		     SetPlayerAttachedObject(playerid, 4, 1463, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);
			 SetPlayerCheckpoint(playerid, 1070.1499,-304.4284,73.9922, 2.0);
			 ApplyAnimation(playerid,"CARRY","crry_prtial",4.1,0,1,1,1,1);
			 SetPVarInt(playerid,"Rubayu",1);
		     return 1;
	   }
	}
	if(newkeys & 65536 && IsPlayerInRangeOfPoint(playerid, 5.0, 1105.4738,-358.1184,73.9922))
	{
		new text[124];
		f(text, "%s дровосека\n%s водителя\nИнформация о работе",(GetPVarInt(playerid,"WoodJob") == 0) ? ("{5AB200}Устроиться {ffffff}на работу") : ("{ff4f00}Уволиться {ffffff}с работы"),(GetPVarInt(playerid,"WoodJob_car") != 2) ? ("{5AB200}Устроиться {ffffff}на работу") : ("{ff4f00}Уволиться {ffffff}с работы"));
		ShowPlayerDialog(playerid,73, DIALOG_STYLE_LIST,"Лесопилка:",text,"Выбрать","Отмена");
	}
	if(newkeys & KEY_JUMP || newkeys & KEY_SECONDARY_ATTACK  || newkeys & KEY_FIRE || newkeys & KEY_SUBMISSION || newkeys & KEY_SPRINT)
    {
        if(GetPVarInt(playerid,"Rubayu") == 1)
        {
            if(GetPVarInt(playerid,"WoodJob") == 1)
               {
     			 RemovePlayerAttachedObject(playerid, 4);
                 DisablePlayerCheckpoint(playerid);
                 ApplyAnimation(playerid, "PED", "IDLE_tired", 4.1, 0, 1, 1, 0, 1);
                 SetPVarInt(playerid,"Rubayu",0);
                 SetPVarInt(playerid,"ProcWood",0);
                 KillTimer(TimerWood[playerid]);
                 SetPVarInt(playerid,"wood",0);
			   	 SetProgressBarValue(bar[playerid],0),UpdateProgressBar(bar[playerid],playerid);
			   	 SetPlayerAttachedObject(playerid, 1, 341, 6, 0.0000, 0.0000, 0.0000, 0.00, 0.00, 0.00, 1.00, 1.00, 1.00);
				 perem[playerid] = 2;
                 SendClientMessage(playerid, 0xAFAFAFAA, "Вы уронили дрова.");
            }
        }
    }
[HR][/HR]
В OnDialogResponse Создаём case 1 кто ка хочет я проверял и в личном моде с 0 также и в FS
PHP:
case 1:
        {
            if(!response) return 1;
            if(listitem == 0)
            {
                if(GetPVarInt(playerid,"WoodJob") == 0)
				{
				    if(GetPVarInt(playerid,"WoodJob_car") == 2) return SendClientMessage(playerid, gray, "Увольтесь сначала с работы водителя");
	                SetPVarInt(playerid,"WoodJob",1);
	                SetPlayerSkin(playerid, 133);
	                SetPlayerAttachedObject(playerid, 1, 341, 6, 0.0000, 0.0000, 0.0000, 0.00, 0.00, 0.00, 1.00, 1.00, 1.00);
	                SetPlayerAttachedObject(playerid, 0, 18638, 2, 0.1709, 0.0020, 0.0010, 0.0000, 0.0000, 0.0000, 1.0000, 1.0000, 1.0000, 0, 0);
	                SendClientMessage(playerid, green, "Вы устроились на работу лесоруба");
	                SendClientMessage(playerid, gray, "В нижней части экрана показана информация о работе");
					SetPVarInt(playerid,"Drov",0);
	                SetPVarInt(playerid,"ProcWood",0);
	                SetPVarInt(playerid,"Drova",0);
	                TD_JOB(playerid,1);
                }
                else
                {
	                SetPVarInt(playerid,"ProcWood",0);
					if(P::[playerid][pMember] == 0) SetPlayerSkin(playerid,P::[playerid][pSkin]);
	                RemovePlayerAttachedObject(playerid, 1);
	                RemovePlayerAttachedObject(playerid, 0);
	                new string[144];
	                f(string, "Вы cобрали дров %d кг Получено: %d$",GetPVarInt(playerid,"Drov"),GetPVarInt(playerid,"Drov")*2);
					SendClientMessage(playerid, green, string);
	                P::[playerid][pCash] += GetPVarInt(playerid,"Drov")*2;
	                RemovePlayerAttachedObject(playerid, 4);
	                ApplyAnimation(playerid, "PED", "IDLE_tired", 4.1, 0, 1, 1, 0, 1);
	                SetPVarInt(playerid,"Drova",0);
	                SetPVarInt(playerid,"WoodJob",0);
	                DisablePlayerCheckpoint(playerid);
	                SetPVarInt(playerid,"Drov",0);
	                SetPVarInt(playerid,"Rubayu",0);
	                TD_JOB(playerid,3);
					KillTimer(TimerWood[playerid]);
				}
			}
			if(listitem == 1)
			{
			    if(GetPVarInt(playerid,"WoodJob") == 1) return SendClientMessage(playerid, gray, "Увольтесь сначала с работы лесоруба");
			    if(GetPVarInt(playerid,"WoodJob_car") == 0)
				{

				    SetPVarInt(playerid,"WoodJob_car",2);
				    SendClientMessage(playerid, gray, "Вы устроились на развозку дров, садитесь в Walton на парковке");
				    SetPVarInt(playerid, "wood_incar",0);
				    TD_JOB(playerid,2);
				    SetPlayerSkin(playerid, 133);
				    return 1;
				}
			    if(GetPVarInt(playerid,"WoodJob_car") == 2)
				{
				    EndPlayerCasualJob(playerid);
	                TD_JOB(playerid,3);
	                SetPVarInt(playerid, "wood_incar",0);
	                SetPVarInt(playerid,"WoodJob_car",0);
				}
			}
			if(listitem == 2)
			{
			    SendClientMessage(playerid, gray, "Лесопилка - это...");
		     	SendClientMessage(playerid, gray, "Здесь вы...");
		      	SendClientMessage(playerid, gray, "Для того чтобы...");
		       	SendClientMessage(playerid, gray, "Пишите свою информацию!");
			}
			return 1;
        }
[HR][/HR]
Дальше пошли паблики и стоки расписать не буду кидаю целиком
PHP:
stock dialog_load_les(playerid)
{
	new string[256];
	f(string, ""W"Для загрузки дров введите количество в поле ниже:\nУ вас дров загружено: "O"%d кг.\n"GRAY"(прим.:\n1 кг = 30$\n2. Нельзя зугрузить больше 500 кг. и меньше 1 кг.)\nПосле загрузки закройте диалог 'Закрыть'",GetPVarInt(playerid, "wood_incar"));
	return    ShowPlayerDialog(playerid, 58, DIALOG_STYLE_INPUT, "Загрузка дров", string,"Загрузить","Закрыть");
}
publics: DROVA(playerid)
{
     new randderevo = 20 + random(60);
     SetPVarInt(playerid, "Drova",GetPVarInt(playerid,"Drova")+randderevo);
	 drev += GetPVarInt(playerid,"Drova");
	 new string[144];
	 SetPVarInt(playerid,"wood",0);
	 SetPVarInt(playerid, "Drov",GetPVarInt(playerid,"Drov")+GetPVarInt(playerid,"Drova"));
	 format(string,sizeof(string),"ЛЕСОПИЛКА\n\nДревесины на складе: %d кг.\n"GRAY"Для закупки нажмите NUM 2",drev);
	 UpdateDynamic3DTextLabelText(derevo3d, green, string);
	 f(string, "Вы положили на склад %d кг древесины",GetPVarInt(playerid,"Drova"));
	 SendClientMessage(playerid, green, string);
	 SetPVarInt(playerid,"Rubayu",0);
	 SetPVarInt(playerid,"Drova",0);
	 format(string,sizeof(string),"%d",GetPVarInt(playerid,"Drov"));
     TextDrawSetString(col_info[playerid],string);
	 return DestroyObject(obj_lesop[playerid]);
}
stock UpdateZavod()
{
   	new texts[256];
 	format(texts,sizeof(texts),"Количество древесины на складе: "G"%d кг\n"GRAY"Готовых продуктов: %d шт.",zdrov,zprod);
	UpdateDynamic3DTextLabelText(dzavod,gray, texts);
	format(texts,sizeof(texts),"Склад:\nСырье для переработки: %d кг.\nГотовых продуктов: %d шт.",zdrov,zprod);
	UpdateDynamic3DTextLabelText(zavodinfo, gray, texts);
	return 1;
}
publics: Timer1(i)
{
   	if(GetPVarInt(i,"WoodJob") == 1)
	{
	    perem[i] ++;
		SetProgressBarValue(bar[i],perem[i]);
		UpdateProgressBar(bar[i], i);
		ApplyAnimation(i, "CHAINSAW", "WEAPON_csaw", 4.1, 1, 0, 0, 0, 0);
		if(perem[i] >= 100)
		{
		    KillTimer(TimerWood[i]);
		    SetProgressBarValue(bar[i],0);
		    perem[i] = 2;
	    	SetPVarInt(i,"wood",1),GameTextForPlayer(i, "Completed", 1000, 3);
		    if(GetPVarInt(i, "wood") == 1)
		    {
			     RemovePlayerAttachedObject(i, 1);
			     SetPlayerAttachedObject(i, 4, 1463, 1, 0.184699, 0.426247, 0.000000, 259.531341, 80.949592, 0.000000, 0.476124, 0.468181, 0.470769);
				 SetPlayerCheckpoint(i, 1070.1499,-304.4284,73.9922, 2.0);
				 ApplyAnimation(i,"CARRY","crry_prtial",4.1,0,1,1,1,1);
				 SetPVarInt(i,"Rubayu",1);
			}
		}
	}
	return 1;
}
//загрузка общих переменных
publics: other_l()
{
    new rows;
	new fields,other;
    cache_get_data(rows,fields);
    if(rows)
    {
        drev = cache_get_field_content_int(0, "drova");
        other++;
	}
    printf("[Otherов загружено]: <%i>",other);
    new texts[124];
	format(texts,sizeof(texts),"ЛЕСОПИЛКА\n\nДревесины на складе: %d кг.\n"GRAY"Для закупки нажмите NUM 2",drev);
	derevo3d = CreateDynamic3DTextLabel(texts,green,1050.2217,-313.2011,73.9931,10.0,INVALID_PLAYER_ID,INVALID_PLAYER_ID,0,-1,-1,-1,100.0);
  	return true;
}
publics: other_s()
{
	new query[256];
    mysql_format(MysqlConnect,query,sizeof(query),"UPDATE other SET `drova`='%i'",drev);
	mysql_function_query(MysqlConnect, query, false,"","");
}
stock wood_car(vehicleid){
	if(vehicleid >= woodcar[0]
	&& vehicleid <= woodcar[3]) return true;
	return 0;}
forward TD_JOB(playerid,job);
stock TD_JOB(playerid,job)
{
	if(job == 3)
	{
	    TextDrawSetString(col_info[playerid],"0");
        TextDrawHideForPlayer(playerid,box_info[playerid]);
		TextDrawHideForPlayer(playerid,pic_info[playerid]);
		TextDrawHideForPlayer(playerid,col_info[playerid]);
		TextDrawDestroy(text_info[playerid]);
		HideProgressBarForPlayer(playerid, bar[playerid]);
		return 1;
	}
	if(job == 1)
	{
	    text_info[playerid] = TextDrawCreate(522.869934, 395.500091, "Pa—o¦a љpoўoceka:~n~Њoљoќљњ¦e k љepeўy њ џa›Їњ¦e ALT~n~Јo¦oЇ ®a o¦®ecњ¦e ®a ckћaљ");
		TextDrawLetterSize(text_info[playerid], 0.106105, 0.993333);
		TextDrawAlignment(text_info[playerid], 1);
		TextDrawSetShadow(text_info[playerid], 0);
		TextDrawColor(text_info[playerid], -1);
		TextDrawSetOutline(text_info[playerid], 1);
		TextDrawBackgroundColor(text_info[playerid], 51);
		TextDrawFont(text_info[playerid], 2);
		TextDrawSetProportional(text_info[playerid], 1);
		TextDrawSetPreviewModel(pic_info[playerid], 1463);
		bar[playerid] = CreateProgressBar(526.149353, 380.666564, 76.837524, 15.333374,blue, 100.0);
		ShowProgressBarForPlayer(playerid, bar[playerid]);
	}
	if(job == 2)
	{
	    text_info[playerid] = TextDrawCreate(522.869934, 380.500091, "1. Caљњ¦ec© ў ЈњkaЈ њ eџ›aќ¦e~n~®a ckћaљ ~g~(џa™pyџka /buy)~n~~w~2. ѓaћee eџ›aќ¦e ®a џaўoљ~n~љћ¬ ўЁ™pyџkњ ~g~(/gps)");
        TextDrawLetterSize(text_info[playerid], 0.106105, 0.993333);
		TextDrawAlignment(text_info[playerid], 1);
		TextDrawSetShadow(text_info[playerid], 0);
		TextDrawColor(text_info[playerid], -1);
		TextDrawSetOutline(text_info[playerid], 1);
		TextDrawBackgroundColor(text_info[playerid], 51);
		TextDrawFont(text_info[playerid], 2);
		TextDrawSetProportional(text_info[playerid], 1);
		TextDrawSetPreviewModel(pic_info[playerid], 1463);
	}
	TextDrawShowForPlayer(playerid,box_info[playerid]);
	TextDrawShowForPlayer(playerid,pic_info[playerid]);
	TextDrawShowForPlayer(playerid,col_info[playerid]);
	TextDrawShowForPlayer(playerid,text_info[playerid]);
	return false;
}
stock EndPlayerCasualJob(playerid)
{
	if(GetPVarInt(playerid, "WoodJob_car") == 2)
	{
	    TD_JOB(playerid,3);
	    SetVehicleToRespawn(GetPVarInt(playerid, "car_id"));
		if(P::[playerid][pMember] == 0) SetPlayerSkin(playerid,P::[playerid][pSkin]);
		TogglePlayerControllable(playerid, 1);
	 	KillTimer(GetPVarInt(playerid, "ExitCarTimer"));
	 	DestroyObject(GetPVarInt(playerid, "OBJ"));
	 	wood_cars[GetPVarInt(playerid, "car_id")] = 0;
	 	SetPVarInt(playerid, "car_id", INVALID_VEHICLE_ID);
		SetPVarInt(playerid, "wood_incar",0);
		SetPVarInt(playerid, "WoodJob_car",0);
		SendClientMessage(playerid, gray, "Вы уволены с работы");
	}
}
[HR][/HR]
Вот и всё как я и говорил писал Fs вот что вышло 450 строк
[HR][/HR]
Кому нужен FS писать в LS снизу данные
Надеюсь буду спасибо , не зря и вырезал и создавал тему .
[HR][/HR]
​
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу