Текущее время: 11 апреля 2018


Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: [Мануал] Работа Дровосека [PLAYMOD]
СообщениеДобавлено: 11 апр 2018, 17:52 
Модераторы lvl1.
«I'am WorkOut» ♫
«АВТОР ТЕМЫ»
Сообщений: «1195»
Откуда: Алтайский край
Cпасибо сказано: 75 раз(а)
Спасибо получено: 186 раз(а)
Медали: 5
-
+
Репутация: 1721
[CENTER]

main()
{
print("\n----------------------------------");
print(" Мод : PlayMode");
print(" Автор мода Unreal");
print(" Автор вырезки : -WorcOut-");
print("----------------------------------\n");
}



[CENTER]Изображение
[/CENTER]
Расписывать не буду , система интересная но код ужасен. [COLOR="#B22222"]5/10[/COLOR]
Работа на Mesql , но бд в моде не нашёл.
Нам потребуется include такие как

#include <streamer>// Include Streamer обьектов и много др
#include <progress>// ProgressBar
#include <a_mysql>



К #define Добавим ->

#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}" // Тоже самое



К переменным мы добавим

//Работы
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}
};// Где можно пилить



В enum перечисление игрока

pSkin, // Скин игрока
pCash, // Средства игрока
pMember // фракция игрока для проверки



В OnGameModeInit Кидаю код целиком
В него входит
[1] Бот
[2] Транспорт
[3] Обьекты

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);



Далее удаляем стандарт мар
У меня в OnPlayerConnect

//Лесопилка
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);



В public OnPlayerEnterCheckpoint(playerid) Добавим

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);
}


Расписывать не буду скажу так тут проверка игрока в том месте , срабатывает оп анимация и дают ему дрова.)

Пошли кнопки + разговор с ботом
В OnPlayerKeyStateChange мы добавим

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, "Вы уронили дрова.");
}
}
}



В OnDialogResponse Создаём case 1 кто ка хочет я проверял и в личном моде с 0 также и в FS

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;
}



Дальше пошли паблики и стоки расписать не буду кидаю целиком

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, "Вы уволены с работы");
}
}



Вот и всё как я и говорил писал Fs вот что вышло 450 строк
Изображение


Кому нужен FS писать в LS снизу данные
Надеюсь буду спасибо , не зря и вырезал и создавал тему .
[/CENTER]


Изображение

— Парень в крутом костюме. Кто ты без него?
— Э, гений, миллиардер, плейбой, филантроп.

© Мстители

Хочу стать легендой , пока есть время © Merlin

Изображение

Изображение


 Профиль  
Cпасибо сказано 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  

В обязанности Администрации не входит контроль легальности или нелегальности передаваемой информации (любой, включая, но не ограничиваясь, информацией передаваемой между пользователями, внутренней пересылки информации в виде различных ссылок, текстов или архивов), определение прав собственности или законности передачи, приема или использования этой информации.
Администрация не несёт никакой ответственности за пользователей и модер состав форума!
cron

Copyright Info-Pawn © 2014-2018. Все права защищены.